You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2013/07/09 09:42:29 UTC

[1/4] git commit: ISIS-459: IsisJdoSupport enhancements for integration testing.

Updated Branches:
  refs/heads/master 91d79e865 -> 7d88dfa55


ISIS-459: IsisJdoSupport enhancements for integration testing.


Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/4ab4ac0e
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/4ab4ac0e
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/4ab4ac0e

Branch: refs/heads/master
Commit: 4ab4ac0e120d6b9d1a7dd55eb633f8d14678e6ac
Parents: 91d79e8
Author: Dan Haywood <da...@apache.org>
Authored: Tue Jul 9 08:33:40 2013 +0100
Committer: Dan Haywood <da...@apache.org>
Committed: Tue Jul 9 08:33:40 2013 +0100

----------------------------------------------------------------------
 .../applib/service/support/IsisJdoSupport.java  |  13 ++-
 .../service/support/IsisJdoSupportImpl.java     | 116 +++++++++++++++++++
 2 files changed, 128 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/4ab4ac0e/component/objectstore/jdo/jdo-applib/src/main/java/org/apache/isis/objectstore/jdo/applib/service/support/IsisJdoSupport.java
----------------------------------------------------------------------
diff --git a/component/objectstore/jdo/jdo-applib/src/main/java/org/apache/isis/objectstore/jdo/applib/service/support/IsisJdoSupport.java b/component/objectstore/jdo/jdo-applib/src/main/java/org/apache/isis/objectstore/jdo/applib/service/support/IsisJdoSupport.java
index 598c3f0..4014476 100644
--- a/component/objectstore/jdo/jdo-applib/src/main/java/org/apache/isis/objectstore/jdo/applib/service/support/IsisJdoSupport.java
+++ b/component/objectstore/jdo/jdo-applib/src/main/java/org/apache/isis/objectstore/jdo/applib/service/support/IsisJdoSupport.java
@@ -20,6 +20,8 @@
 package org.apache.isis.objectstore.jdo.applib.service.support;
 
 import java.util.Collection;
+import java.util.List;
+import java.util.Map;
 
 import javax.jdo.PersistenceManager;
 
@@ -53,5 +55,14 @@ public interface IsisJdoSupport {
     
     @Programmatic
     PersistenceManager getJdoPersistenceManager();
-    
+
+    @Programmatic
+    List<Map<String, Object>> executeSql(String sql);
+
+    @Programmatic
+    Integer executeUpdate(String sql);
+
+    @Programmatic
+    void deleteAll(Class<?>... pcClasses);
+
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/4ab4ac0e/component/objectstore/jdo/jdo-datanucleus/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/service/support/IsisJdoSupportImpl.java
----------------------------------------------------------------------
diff --git a/component/objectstore/jdo/jdo-datanucleus/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/service/support/IsisJdoSupportImpl.java b/component/objectstore/jdo/jdo-datanucleus/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/service/support/IsisJdoSupportImpl.java
index dc1ac24..226ee88 100644
--- a/component/objectstore/jdo/jdo-datanucleus/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/service/support/IsisJdoSupportImpl.java
+++ b/component/objectstore/jdo/jdo-datanucleus/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/service/support/IsisJdoSupportImpl.java
@@ -19,15 +19,28 @@
 
 package org.apache.isis.objectstore.jdo.datanucleus.service.support;
 
+import java.sql.ResultSet;
+import java.sql.ResultSetMetaData;
+import java.sql.SQLException;
+import java.sql.Statement;
+import java.util.ArrayList;
 import java.util.Collection;
+import java.util.List;
+import java.util.Map;
 
+import javax.jdo.Extent;
 import javax.jdo.PersistenceManager;
+import javax.jdo.datastore.JDOConnection;
+
+import com.google.common.collect.Lists;
+import com.google.common.collect.Maps;
 
 import org.apache.isis.applib.annotation.Hidden;
 import org.apache.isis.applib.annotation.Programmatic;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
 import org.apache.isis.core.metamodel.services.ServicesInjectorSpi;
+import org.apache.isis.core.runtime.persistence.ObjectPersistenceException;
 import org.apache.isis.core.runtime.system.context.IsisContext;
 import org.apache.isis.core.runtime.system.persistence.PersistenceSession;
 import org.apache.isis.objectstore.jdo.applib.service.support.IsisJdoSupport;
@@ -51,6 +64,106 @@ public class IsisJdoSupportImpl implements IsisJdoSupport {
         getObjectStore().getPersistenceManager().retrieveAll(domainObjects);
     }
 
+    // //////////////////////////////////////
+
+    @Programmatic
+    @Override
+    public List<Map<String, Object>> executeSql(String sql) {
+        final JDOConnection dataStoreConnection = getJdoPersistenceManager().getDataStoreConnection();
+        try {
+            final Object connectionObj = dataStoreConnection.getNativeConnection();
+            if(!(connectionObj instanceof java.sql.Connection)) {
+                return null;
+            } 
+            java.sql.Connection connection = (java.sql.Connection) connectionObj;
+            return executeSql(connection, sql);
+        } finally {
+            dataStoreConnection.close();
+        }
+    }
+
+    @Programmatic
+    @Override
+    public Integer executeUpdate(String sql) {
+        final JDOConnection dataStoreConnection = getJdoPersistenceManager().getDataStoreConnection();
+        try {
+            final Object connectionObj = dataStoreConnection.getNativeConnection();
+            if(!(connectionObj instanceof java.sql.Connection)) {
+                return null;
+            } 
+            java.sql.Connection connection = (java.sql.Connection) connectionObj;
+            return executeUpdate(connection, sql);
+        } finally {
+            dataStoreConnection.close();
+        }
+    }
+
+    private static List<Map<String, Object>> executeSql(java.sql.Connection connection, String sql) {
+        final List<Map<String,Object>> rows = Lists.newArrayList();
+
+        Statement statement = null;
+        try {
+            statement = connection.createStatement();
+            final ResultSet rs = statement.executeQuery(sql);
+            final ResultSetMetaData rsmd = rs.getMetaData();
+            while(rs.next()) {
+                Map<String,Object> row = Maps.newLinkedHashMap(); 
+                final int columnCount = rsmd.getColumnCount();
+                for(int i=0; i<columnCount; i++) {
+                    final Object val = rs.getObject(i+1);
+                    row.put(rsmd.getColumnName(i+1), val);
+                }
+                rows.add(row);
+            }
+            
+        } catch (SQLException ex) {
+            throw new ObjectPersistenceException("Failed to executeSql: " + sql, ex);
+        } finally {
+            closeSafely(statement);
+        }
+
+        return rows;
+    }
+
+    private static int executeUpdate(java.sql.Connection connection, String sql) {
+        
+        Statement statement = null;
+        try {
+            statement = connection.createStatement();
+            return statement.executeUpdate(sql);
+            
+        } catch (SQLException ex) {
+            throw new ObjectPersistenceException("Failed to executeSql: " + sql, ex);
+        } finally {
+            closeSafely(statement);
+        }
+    }
+
+    private static void closeSafely(Statement statement) {
+        if(statement != null) {
+            try {
+                statement.close();
+            } catch (SQLException e) {
+                // ignore
+            }
+        }
+    }
+    
+    // //////////////////////////////////////
+
+    @Programmatic
+    @Override
+    public void deleteAll(Class<?>... pcClasses) {
+        for (Class<?> pcClass : pcClasses) {
+            final Extent<?> extent = getJdoPersistenceManager().getExtent(pcClass);
+            final List<Object> instances = Lists.newArrayList(extent.iterator());
+            getJdoPersistenceManager().deletePersistentAll(instances);
+        }
+    }
+
+    // //////////////////////////////////////
+    
+    
     protected DataNucleusObjectStore getObjectStore() {
         return (DataNucleusObjectStore) getPersistenceSession().getObjectStore();
     }
@@ -74,4 +187,7 @@ public class IsisJdoSupportImpl implements IsisJdoSupport {
     }
 
 
+
+
+
 }


[2/4] git commit: ISIS-460: synchronize adapters for deleted pojos.

Posted by da...@apache.org.
ISIS-460: synchronize adapters for deleted pojos.

This follows on from ISIS-459.


Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/5bbaa954
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/5bbaa954
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/5bbaa954

Branch: refs/heads/master
Commit: 5bbaa954222303d4674ac0157636680f08079a06
Parents: 4ab4ac0
Author: Dan Haywood <da...@apache.org>
Authored: Tue Jul 9 08:38:24 2013 +0100
Committer: Dan Haywood <da...@apache.org>
Committed: Tue Jul 9 08:38:24 2013 +0100

----------------------------------------------------------------------
 .../persistence/FrameworkSynchronizer.java      | 32 +++++++++++++++++++-
 .../persistence/IsisLifecycleListener.java      |  8 ++++-
 .../system/transaction/IsisTransaction.java     |  4 ++-
 3 files changed, 41 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/5bbaa954/component/objectstore/jdo/jdo-datanucleus/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/FrameworkSynchronizer.java
----------------------------------------------------------------------
diff --git a/component/objectstore/jdo/jdo-datanucleus/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/FrameworkSynchronizer.java b/component/objectstore/jdo/jdo-datanucleus/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/FrameworkSynchronizer.java
index 35e6099..fd11872 100644
--- a/component/objectstore/jdo/jdo-datanucleus/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/FrameworkSynchronizer.java
+++ b/component/objectstore/jdo/jdo-datanucleus/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/FrameworkSynchronizer.java
@@ -34,6 +34,7 @@ import org.apache.isis.applib.filter.Filter;
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
 import org.apache.isis.core.commons.exceptions.IsisException;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
+import org.apache.isis.core.metamodel.adapter.ResolveState;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
 import org.apache.isis.core.metamodel.adapter.oid.Oid;
 import org.apache.isis.core.metamodel.adapter.oid.RootOid;
@@ -46,6 +47,7 @@ import org.apache.isis.core.metamodel.facets.object.callbacks.UpdatedCallbackFac
 import org.apache.isis.core.metamodel.spec.feature.ObjectAssociation;
 import org.apache.isis.core.runtime.persistence.PersistorUtil;
 import org.apache.isis.core.runtime.system.context.IsisContext;
+import org.apache.isis.core.runtime.system.persistence.AdapterManagerSpi;
 import org.apache.isis.core.runtime.system.persistence.OidGenerator;
 import org.apache.isis.core.runtime.system.persistence.PersistenceSession;
 import org.apache.isis.core.runtime.system.transaction.IsisTransaction;
@@ -63,7 +65,7 @@ public class FrameworkSynchronizer {
      * Just used for logging.
      */
     public enum CalledFrom {
-        EVENT_LOAD, EVENT_STORE, EVENT_PREDIRTY, OS_QUERY, OS_RESOLVE, OS_LAZILYLOADED, EVENT_PREDELETE
+        EVENT_LOAD, EVENT_STORE, EVENT_PREDIRTY, OS_QUERY, OS_RESOLVE, OS_LAZILYLOADED, EVENT_PREDELETE, EVENT_POSTDELETE
     }
 
 
@@ -109,6 +111,9 @@ public class FrameworkSynchronizer {
                     PersistorUtil.toEndState(adapter);
                 }
                 adapter.setVersion(datastoreVersion);
+                if(pojo.jdoIsDeleted()) {
+                    adapter.changeState(ResolveState.DESTROYED);
+                }
 
                 ensureFrameworksInAgreement(pojo);
             }
@@ -229,6 +234,21 @@ public class FrameworkSynchronizer {
         
     }
 
+    public void postDeleteProcessingFor(final PersistenceCapable pojo, final CalledFrom calledFrom) {
+        withLogging(pojo, new Runnable() {
+            @Override
+            public void run() {
+                ObjectAdapter adapter = getAdapterManager().getAdapterFor(pojo);
+                if(!adapter.isDestroyed()) {
+                    adapter.changeState(ResolveState.DESTROYED);
+                }
+                
+                ensureFrameworksInAgreement(pojo);
+            }
+        }, calledFrom);
+        
+    }
+    
     // /////////////////////////////////////////////////////////
     // Helpers
     // /////////////////////////////////////////////////////////
@@ -287,7 +307,17 @@ public class FrameworkSynchronizer {
                 throw new IsisException(MessageFormat.format("adapter oid={0} has oid in invalid state; should be transient; pojo: {1}", oid, pojo));
             }
 
+        } else if(pojo.jdoIsDeleted()) {
+            
+            // make sure the adapter is destroyed
+            if (!adapter.getResolveState().isDestroyed()) {
+                throw new IsisException(MessageFormat.format("adapter oid={0} has resolve state in invalid state; should be destroyed but is {1}; pojo: {2}", oid, adapter.getResolveState(), pojo));
+            }
+            
         } else {
+            
+            
+            
             // make sure the adapter is persistent
             if (!adapter.getResolveState().representsPersistent()) {
                 throw new IsisException(MessageFormat.format("adapter oid={0} has resolve state in invalid state; should be in a persistent but is {1}; pojo: {2}", oid, adapter.getResolveState(), pojo));

http://git-wip-us.apache.org/repos/asf/isis/blob/5bbaa954/component/objectstore/jdo/jdo-datanucleus/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/IsisLifecycleListener.java
----------------------------------------------------------------------
diff --git a/component/objectstore/jdo/jdo-datanucleus/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/IsisLifecycleListener.java b/component/objectstore/jdo/jdo-datanucleus/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/IsisLifecycleListener.java
index c9118a8..1362d88 100644
--- a/component/objectstore/jdo/jdo-datanucleus/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/IsisLifecycleListener.java
+++ b/component/objectstore/jdo/jdo-datanucleus/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/IsisLifecycleListener.java
@@ -131,7 +131,13 @@ public class IsisLifecycleListener implements AttachLifecycleListener, ClearLife
 
     @Override
     public void postDelete(InstanceLifecycleEvent event) {
-        withLogging(Phase.POST, event, new RunnableEnsureFrameworksInAgreement(event));
+        withLogging(Phase.POST, event, new RunnableAbstract(event){
+            @Override
+            protected void doRun() {
+                final PersistenceCapable pojo = Utils.persistenceCapableFor(event);
+                synchronizer.postDeleteProcessingFor(pojo, CalledFrom.EVENT_POSTDELETE);
+            }
+        });
     }
 
     /**

http://git-wip-us.apache.org/repos/asf/isis/blob/5bbaa954/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/IsisTransaction.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/IsisTransaction.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/IsisTransaction.java
index f4b91b5..76f1df3 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/IsisTransaction.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/IsisTransaction.java
@@ -370,7 +370,9 @@ public class IsisTransaction implements TransactionScopedComponent {
                 if (command instanceof DestroyObjectCommand) {
                     final ObjectAdapter adapter = command.onAdapter();
                     adapter.setVersion(null);
-                    adapter.changeState(ResolveState.DESTROYED);
+                    if(!adapter.isDestroyed()) {
+                        adapter.changeState(ResolveState.DESTROYED);
+                    }
                 }
             }
         } finally {


[3/4] git commit: ISIS-461: provide ability to run arbitrary fixtures in integration tests.

Posted by da...@apache.org.
ISIS-461: provide ability to run arbitrary fixtures in integration tests.


Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/91e75da6
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/91e75da6
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/91e75da6

Branch: refs/heads/master
Commit: 91e75da688b30566f825bdeb039553cb17180464
Parents: 5bbaa95
Author: Dan Haywood <da...@apache.org>
Authored: Tue Jul 9 08:41:13 2013 +0100
Committer: Dan Haywood <da...@apache.org>
Committed: Tue Jul 9 08:41:13 2013 +0100

----------------------------------------------------------------------
 .../integtestsupport/IsisSystemForTest.java     | 22 +++++++++++++++++++-
 1 file changed, 21 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/91e75da6/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/IsisSystemForTest.java
----------------------------------------------------------------------
diff --git a/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/IsisSystemForTest.java b/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/IsisSystemForTest.java
index 9057b7d..1f84077 100644
--- a/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/IsisSystemForTest.java
+++ b/core/integtestsupport/src/main/java/org/apache/isis/core/integtestsupport/IsisSystemForTest.java
@@ -37,6 +37,7 @@ import org.apache.isis.applib.DomainObjectContainer;
 import org.apache.isis.applib.fixtures.InstallableFixture;
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
 import org.apache.isis.core.commons.config.IsisConfiguration;
+import org.apache.isis.core.integtestsupport.legacy.Fixture;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
 import org.apache.isis.core.metamodel.adapter.oid.RootOid;
@@ -622,8 +623,26 @@ public class IsisSystemForTest implements org.junit.rules.TestRule {
         }
         throw new RuntimeException("Could not find a service of type: " + serviceClass.getName());
     }
+
     
+    ////////////////////////////////////////////////////////////
+    // Fixture management 
+    // (for each test, rather than at bootstrap)
+    ////////////////////////////////////////////////////////////
+
     
+    public void installFixtures(final InstallableFixture... fixtures) {
+        final FixturesInstallerDelegate fid = new FixturesInstallerDelegate(getPersistenceSession());
+        for (InstallableFixture fixture : fixtures) {
+            fid.addFixture(fixture);
+        }
+        fid.installFixtures();
+    }
+
+
+    ////////////////////////////////////////////////////////////
+    // Dependencies
+    ////////////////////////////////////////////////////////////
     
     protected IsisTransactionManager getTransactionManager() {
         return getPersistenceSession().getTransactionManager();
@@ -641,6 +660,7 @@ public class IsisSystemForTest implements org.junit.rules.TestRule {
         return IsisContext.getPersistenceSession();
     }
 
-
+    
+    
     
 }


[4/4] git commit: updating the STATUS file, was out of date

Posted by da...@apache.org.
updating the STATUS file, was out of date

* with 31-01-13 and 31-05-13 releases
* new committers
* project info


Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/7d88dfa5
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/7d88dfa5
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/7d88dfa5

Branch: refs/heads/master
Commit: 7d88dfa550200953ecec5998fb369cb4123b5ca4
Parents: 91e75da
Author: Dan Haywood <da...@apache.org>
Authored: Tue Jul 9 08:42:07 2013 +0100
Committer: Dan Haywood <da...@apache.org>
Committed: Tue Jul 9 08:42:07 2013 +0100

----------------------------------------------------------------------
 STATUS | 95 ++++++++++++++++++++++++++++++++-----------------------------
 1 file changed, 50 insertions(+), 45 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/7d88dfa5/STATUS
----------------------------------------------------------------------
diff --git a/STATUS b/STATUS
index ea70a95..1fa73c8 100644
--- a/STATUS
+++ b/STATUS
@@ -1,43 +1,50 @@
 Web site: http://isis.apache.org/
 
-Project Status
+Description
 
-  Description
+  Apache Isis software is a framework for rapidly developing domain-driven apps in 
+  Java. Write your business logic in entities, domain services and repositories, and 
+  the framework dynamically generates a representation of that domain model as a 
+  webapp or a RESTful API.  Licensed under ASL v2.0.  Suitable for prototyping or 
+  for production.
 
-  Isis is an ASL 2.0 licensed implementation of the Naked Objects pattern and
-  also an implementation of the Restful Objects specification. It is based on 
-  contributions of the original Naked Objects Framework along with a number 
-  of sister projects that were developed for the book "Domain Driven Design 
-  using Naked Objects " (pragprog 2009).
+  Isis was accepted into the Apache Incubator in Sept 2010 and graduated in Oct 2012.
+  Its first release as a TLP was in Dec 2012.
 
-  Isis was accepted into the Incubator in 2010, September 7th.
-
-  Isis graduated from the Incubator in 2012, October 17th.
-
-  To participate in Isis, please join the mailing lists.  Send an empty 
-  message to users-subscribe@isis.apache.org (for users)
-  or to dev-subscribe@isis.apache.org (for developers).
-
-Project info
-
-  As a subproject of the Apache Incubator project, Isis follows the direction 
-  of the Apache Incubator PMC. Significant contributions over a sustained 
-  period of time can earn a contributor commit access to the codebase.
+  To participate in Isis, please join the mailing lists.  Send an empty message to 
+  users-subscribe@isis.apache.org (for users) or to dev-subscribe@isis.apache.org 
+  (for contributors).  Significant contributions over a sustained period of time can 
+  earn a contributor commit access to the codebase.
 
 TLP releases:
- * isis-security-shiro-1.0.0                      : Released Jan 2013
- * quickstart-wicket-restful_jdo-archetype-1.0.1  : Released Jan 2013
-
- * isis-1.0.0                                     : Released Dec 2012
- * isis-objectstore-jdo-1.0.0                     : Released Dec 2012
- * isis-security-file-1.0.0                       : Released Dec 2012
- * isis-viewer-wicket-1.0.0                       : Released Dec 2012
- * isis-viewer-restfulobjects-1.0.0               : Released Dec 2012
- * quickstart-wicket-restful_jdo-archetype-1.0.0  : Released Dec 2012
 
+  * isis-1.2.0                                     : 31 May 2013
+  * isis-viewer-wicket-1.2.0                       : 31 May 2013
+  * isis-viewer-restfulobjects-2.0.0               : 31 May 2013
+  * isis-objectstore-jdo-1.1.0                     : 31 May 2013
+  * isis-security-shiro-1.1.1                      : 31 May 2013
+  * isis-security-file-1.0.1                       : 31 May 2013
+  * quickstart-wicket-restful_jdo-archetype-1.0.3  : 31 May 2013
+ 
+  * isis-1.1.0                                     : 31 Jan 2013
+  * isis-security-shiro-1.1.0                      : 31 Jan 2013
+  * isis-viewer-wicket-1.1.0                       : 31 Jan 2013
+  * quickstart-wicket-restful_jdo-archetype-1.0.2  : 31 Jan 2013
+ 
+  * isis-security-shiro-1.0.0                      : 10 Jan 2013
+  * quickstart-wicket-restful_jdo-archetype-1.0.1  : 10 Jan 2013
+ 
+  * isis-1.0.0                                     : 24 Dec 2012
+  * isis-objectstore-jdo-1.0.0                     : 24 Dec 2012
+  * isis-security-file-1.0.0                       : 24 Dec 2012
+  * isis-viewer-wicket-1.0.0                       : 24 Dec 2012
+  * isis-viewer-restfulobjects-1.0.0               : 24 Dec 2012
+  * quickstart-wicket-restful_jdo-archetype-1.0.0  : 24 Dec 2012
+ 
 Incubating releases:
- * 0.2.0-incubating    : Released January 2012
- * 0.1.2-incubating    : Released July 2011
+
+  * 0.2.0-incubating                               : Jan 2012
+  * 0.1.2-incubating                               : Jul 2011
 
 
 Resources:
@@ -53,21 +60,19 @@ Resources:
   JIRA           www    http://issues.apache.org/jira/browse/ISIS
   Wiki           www    http://cwiki.apache.org/confluence/display/ISIS/Index
   CI             www    http://builds.apache.org/hudson/job/isis-trunk-windows
-  Fisheye        www    https://fisheye6.atlassian.com/graph/isis
+  Fisheye        www    https://fisheye6.atlassian.com/graph/isis-git
 
 
 Team:
 
-  role(s)            user id      name
-  -----------------  -----        -------------------------------------
-  Mentor, Committer  struberg     Mark Struberg
-  Mentor, Committer  bimargulies  Benson Margulies
-  Mentor, Committer  mnour        Mohammad Nour El-Din (CLA on file)
-  Mentor, Committer  sgoeschl     Siegfried Goeschl
-  Committer          danhaywood   Daniel Keir Haywood (CLA on file)
-  Committer          rmatthews    Robert Charles Matthews (CLA on file)
-  Committer          kevin        Kevin Meyer (CLA on file)
-  Committer          themalkolm   Alexander Krasnukhin (CLA on file)
-  Committer          dslaughter   David Slaughter (CLA on file)
-  Committer          jvanderwal   Jeroen van der Wal (CLA on file)
-  Committer          uli          Ulrich St�rk (CLA on file)
+  role(s)              user id      name
+  -----------------    -----        -------------------------------------
+  PMC Chair, Committer danhaywood   Daniel Keir Haywood (CLA on file)
+  PMC, Committer       jvanderwal   Jeroen van der Wal (CLA on file)
+  PMC, Committer       rmatthews    Robert Charles Matthews (CLA on file)
+  PMC, Committer       kevin        Kevin Meyer (CLA on file)
+  PMC, Committer       struberg     Mark Struberg (CLA on file)
+  PMC, Committer       mnour        Mohammad Nour El-Din (CLA on file)
+  PMC, Committer       themalkolm   Alexander Krasnukhin (CLA on file)
+  PMC, Committer       dslaughter   David Slaughter (CLA on file)
+  Committer            madytyoo     Maurizio Taverna (CLA on file)