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 2014/11/07 04:46:46 UTC

[22/29] isis git commit: ISIS-939: deleted the UpdateNotifier subcomponent. Not used by any released code, and the same information (and better) is available in the IsisTransaction itself.

ISIS-939: deleted the UpdateNotifier subcomponent.  Not used by any released code, and the same information (and better) is available in the IsisTransaction itself.


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

Branch: refs/heads/ISIS-939
Commit: 30eb514666c1968916a1e6f58d6b0de04a1efceb
Parents: fab4f47
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Mon Nov 3 19:47:28 2014 +0000
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Thu Nov 6 16:18:56 2014 +0000

----------------------------------------------------------------------
 .../viewer/scimpi/dispatcher/Dispatcher.java    |   2 -
 .../scimpi/dispatcher/action/ActionAction.java  |   2 -
 .../scimpi/dispatcher/edit/EditAction.java      |   2 -
 .../scimpi/dispatcher/edit/RemoveAction.java    |   2 -
 .../scimpi/dispatcher/logon/LogoutAction.java   |   1 -
 .../internal/RuntimeContextFromSession.java     |   6 -
 .../runtime/system/context/IsisContext.java     |   9 -
 .../system/persistence/PersistenceSession.java  |  16 --
 .../system/session/IsisSessionDefault.java      |   9 -
 .../system/transaction/IsisTransaction.java     |  20 +--
 .../transaction/IsisTransactionManager.java     |  38 +----
 .../system/transaction/UpdateNotifier.java      |  79 ---------
 .../transaction/UpdateNotifierDefault.java      | 168 -------------------
 .../system/transaction/IsisTransactionTest.java |   4 +-
 .../rendering/ReprRendererAbstract.java         |  24 +--
 15 files changed, 24 insertions(+), 358 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/30eb5146/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/Dispatcher.java
----------------------------------------------------------------------
diff --git a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/Dispatcher.java b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/Dispatcher.java
index 5f37318..82c67c1 100644
--- a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/Dispatcher.java
+++ b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/Dispatcher.java
@@ -279,11 +279,9 @@ public class Dispatcher {
         try {
             request.processNextTag();
             noteIfMessagesHaveNotBeenDisplay(context);
-            IsisContext.getUpdateNotifier().clear();
         } catch (final RuntimeException e) {
             IsisContext.getMessageBroker().getMessages();
             IsisContext.getMessageBroker().getWarnings();
-            IsisContext.getUpdateNotifier().clear();
             throw e;
         }
         final String page = request.popBuffer();

http://git-wip-us.apache.org/repos/asf/isis/blob/30eb5146/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/action/ActionAction.java
----------------------------------------------------------------------
diff --git a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/action/ActionAction.java b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/action/ActionAction.java
index f181cc9..c598ba3 100644
--- a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/action/ActionAction.java
+++ b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/action/ActionAction.java
@@ -156,8 +156,6 @@ public class ActionAction implements Action {
         } catch (final RuntimeException e) {
             getMessageBroker().getMessages();
             getMessageBroker().getWarnings();
-            IsisContext.getUpdateNotifier().clear();
-            IsisContext.getUpdateNotifier().clear();
             throw e;
         }
     }

http://git-wip-us.apache.org/repos/asf/isis/blob/30eb5146/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/edit/EditAction.java
----------------------------------------------------------------------
diff --git a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/edit/EditAction.java b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/edit/EditAction.java
index d069ea3..3784472 100644
--- a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/edit/EditAction.java
+++ b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/edit/EditAction.java
@@ -155,8 +155,6 @@ public class EditAction implements Action {
         } catch (final RuntimeException e) {
             IsisContext.getMessageBroker().getMessages();
             IsisContext.getMessageBroker().getWarnings();
-            IsisContext.getUpdateNotifier().clear();
-            IsisContext.getUpdateNotifier().clear();
             throw e;
         }
     }

http://git-wip-us.apache.org/repos/asf/isis/blob/30eb5146/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/edit/RemoveAction.java
----------------------------------------------------------------------
diff --git a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/edit/RemoveAction.java b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/edit/RemoveAction.java
index 1bd86a2..919ccc2 100644
--- a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/edit/RemoveAction.java
+++ b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/edit/RemoveAction.java
@@ -100,8 +100,6 @@ public class RemoveAction implements Action {
         } catch (final RuntimeException e) {
             IsisContext.getMessageBroker().getMessages();
             IsisContext.getMessageBroker().getWarnings();
-            IsisContext.getUpdateNotifier().clear();
-            IsisContext.getUpdateNotifier().clear();
             throw e;
         }
     }

http://git-wip-us.apache.org/repos/asf/isis/blob/30eb5146/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/logon/LogoutAction.java
----------------------------------------------------------------------
diff --git a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/logon/LogoutAction.java b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/logon/LogoutAction.java
index 219b5b4..a6f4730 100644
--- a/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/logon/LogoutAction.java
+++ b/component/viewer/scimpi/dispatcher/src/main/java/org/apache/isis/viewer/scimpi/dispatcher/logon/LogoutAction.java
@@ -35,7 +35,6 @@ public class LogoutAction implements Action {
         if (context.isUserAuthenticated()) {
             final AuthenticationSession session = context.getSession();
             if (session != null) {
-                IsisContext.getUpdateNotifier().clear();
                 UserManager.logoffUser(session);
             }
             context.endHttpSession();

http://git-wip-us.apache.org/repos/asf/isis/blob/30eb5146/core/runtime/src/main/java/org/apache/isis/core/runtime/persistence/internal/RuntimeContextFromSession.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/persistence/internal/RuntimeContextFromSession.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/persistence/internal/RuntimeContextFromSession.java
index d5b6d57..782e18b 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/persistence/internal/RuntimeContextFromSession.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/persistence/internal/RuntimeContextFromSession.java
@@ -51,7 +51,6 @@ import org.apache.isis.core.runtime.system.session.IsisSession;
 import org.apache.isis.core.runtime.system.transaction.IsisTransaction;
 import org.apache.isis.core.runtime.system.transaction.IsisTransactionManager;
 import org.apache.isis.core.runtime.system.transaction.MessageBroker;
-import org.apache.isis.core.runtime.system.transaction.UpdateNotifier;
 
 /**
  * Provides services to the metamodel based on the currently running
@@ -167,7 +166,6 @@ public class RuntimeContextFromSession extends RuntimeContextAbstract {
 
             @Override
             public void remove(final ObjectAdapter adapter) {
-                getUpdateNotifier().addDisposedObject(adapter);
                 getPersistenceSession().destroyObject(adapter);
             }
         };
@@ -399,10 +397,6 @@ public class RuntimeContextFromSession extends RuntimeContextAbstract {
         return getPersistenceSession().getAdapterManager();
     }
 
-    private static UpdateNotifier getUpdateNotifier() {
-        return IsisContext.getUpdateNotifier();
-    }
-
     private static IsisTransactionManager getTransactionManager() {
         return getPersistenceSession().getTransactionManager();
     }

http://git-wip-us.apache.org/repos/asf/isis/blob/30eb5146/core/runtime/src/main/java/org/apache/isis/core/runtime/system/context/IsisContext.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/context/IsisContext.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/context/IsisContext.java
index 2b139a4..f145f89 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/context/IsisContext.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/context/IsisContext.java
@@ -42,7 +42,6 @@ import org.apache.isis.core.runtime.system.session.IsisSessionFactory;
 import org.apache.isis.core.runtime.system.transaction.IsisTransaction;
 import org.apache.isis.core.runtime.system.transaction.IsisTransactionManager;
 import org.apache.isis.core.runtime.system.transaction.MessageBroker;
-import org.apache.isis.core.runtime.system.transaction.UpdateNotifier;
 
 /**
  * Provides singleton <i>access to</i> the current (session scoped)
@@ -468,14 +467,6 @@ public abstract class IsisContext implements DebuggableWithTitle {
         return (MessageBroker) getCurrentTransaction().getMessageBroker();
     }
 
-    /**
-     * Convenience method, returning the {@link UpdateNotifier} of the
-     * {@link #getCurrentTransaction() current transaction}.
-     */
-    public static UpdateNotifier getUpdateNotifier() {
-        return getCurrentTransaction().getUpdateNotifier();
-    }
-
     // ///////////////////////////////////////////////////////////
     // Debug
     // ///////////////////////////////////////////////////////////

http://git-wip-us.apache.org/repos/asf/isis/blob/30eb5146/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession.java
index 294ef30..59887c0 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession.java
@@ -788,7 +788,6 @@ public class PersistenceSession implements Persistor, EnlistedObjectDirtying, To
     public void objectChanged(final ObjectAdapter adapter) {
 
         if (adapter.isTransient() || (adapter.isParented() && adapter.getAggregateRoot().isTransient())) {
-            addObjectChangedForPresentationLayer(adapter);
             return;
         }
 
@@ -805,19 +804,9 @@ public class PersistenceSession implements Persistor, EnlistedObjectDirtying, To
             }
 
             addObjectChangedForPersistenceLayer(adapter);
-            addObjectChangedForPresentationLayer(adapter);
-        }
-        if (adapter.respondToChangesInPersistentObjects() || adapter.isTransient()) {
-            addObjectChangedForPresentationLayer(adapter);
         }
     }
 
-    private void addObjectChangedForPresentationLayer(final ObjectAdapter adapter) {
-        if(LOG.isDebugEnabled()) {
-            LOG.debug("object change to update presentation layer " + adapter.getOid());
-        }
-        getUpdateNotifier().addChangedObject(adapter);
-    }
 
     private void addObjectChangedForPersistenceLayer(final ObjectAdapter adapter) {
         if(LOG.isDebugEnabled()) {
@@ -847,7 +836,6 @@ public class PersistenceSession implements Persistor, EnlistedObjectDirtying, To
                 // should we do something here?
             }
         });
-        getUpdateNotifier().addChangedObject(adapter);
     }
 
     // ///////////////////////////////////////////////////////////////////////////
@@ -1078,10 +1066,6 @@ public class PersistenceSession implements Persistor, EnlistedObjectDirtying, To
     }
 
 
-    private UpdateNotifier getUpdateNotifier() {
-        return getTransactionManager().getTransaction().getUpdateNotifier();
-    }
-
     /**
      * The configured {@link ObjectAdapterFactory}.
      * 

http://git-wip-us.apache.org/repos/asf/isis/blob/30eb5146/core/runtime/src/main/java/org/apache/isis/core/runtime/system/session/IsisSessionDefault.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/session/IsisSessionDefault.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/session/IsisSessionDefault.java
index aaa6583..0f20891 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/session/IsisSessionDefault.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/session/IsisSessionDefault.java
@@ -309,7 +309,6 @@ public class IsisSessionDefault implements IsisSession {
 
         debug(debug, getPersistenceSession());
         if (getCurrentTransaction() != null) {
-            debug(debug, getCurrentTransaction().getUpdateNotifier());
             debug(debug, getCurrentTransaction().getMessageBroker());
         }
         debugSnapshot = debug.toString();
@@ -332,10 +331,6 @@ public class IsisSessionDefault implements IsisSession {
         asString.append("authenticationSession", getAuthenticationSession());
         asString.append("persistenceSession", getPersistenceSession());
         asString.append("transaction", getCurrentTransaction());
-        if (getCurrentTransaction() != null) {
-            asString.append("messageBroker", getCurrentTransaction().getMessageBroker());
-            asString.append("updateNotifier", getCurrentTransaction().getUpdateNotifier());
-        }
     }
 
     @Override
@@ -343,10 +338,6 @@ public class IsisSessionDefault implements IsisSession {
         debug.appendln("authenticationSession", getAuthenticationSession());
         debug.appendln("persistenceSession", getPersistenceSession());
         debug.appendln("transaction", getCurrentTransaction());
-        if (getCurrentTransaction() != null) {
-            debug.appendln("messageBroker", getCurrentTransaction().getMessageBroker());
-            debug.appendln("updateNotifier", getCurrentTransaction().getUpdateNotifier());
-        }
     }
 
     // /////////////////////////////////////////////////////

http://git-wip-us.apache.org/repos/asf/isis/blob/30eb5146/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 f98c804..259269c 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
@@ -204,7 +204,6 @@ public class IsisTransaction implements TransactionScopedComponent {
     private final List<PersistenceCommand> commands = Lists.newArrayList();
     private final IsisTransactionManager transactionManager;
     private final org.apache.isis.core.commons.authentication.MessageBroker messageBroker;
-    private final UpdateNotifier updateNotifier;
 
     private final ServicesInjector servicesInjector;
 
@@ -238,20 +237,17 @@ public class IsisTransaction implements TransactionScopedComponent {
 
 
     public IsisTransaction(
-            final IsisTransactionManager transactionManager, 
-            final org.apache.isis.core.commons.authentication.MessageBroker messageBroker, 
-            final UpdateNotifier updateNotifier, 
-            final TransactionalResource objectStore, 
+            final IsisTransactionManager transactionManager,
+            final org.apache.isis.core.commons.authentication.MessageBroker messageBroker,
+            final TransactionalResource objectStore,
             final ServicesInjector servicesInjector) {
         
         ensureThatArg(transactionManager, is(not(nullValue())), "transaction manager is required");
         ensureThatArg(messageBroker, is(not(nullValue())), "message broker is required");
-        ensureThatArg(updateNotifier, is(not(nullValue())), "update notifier is required");
         ensureThatArg(servicesInjector, is(not(nullValue())), "services injector is required");
 
         this.transactionManager = transactionManager;
         this.messageBroker = messageBroker;
-        this.updateNotifier = updateNotifier;
         this.servicesInjector = servicesInjector;
         
         this.commandContext = servicesInjector.lookupService(CommandContext.class);
@@ -1047,16 +1043,6 @@ public class IsisTransaction implements TransactionScopedComponent {
         return (MessageBroker) messageBroker;
     }
 
-    /**
-     * The {@link UpdateNotifier} for this transaction.
-     * 
-     * <p>
-     * Injected in constructor
-     */
-    public UpdateNotifier getUpdateNotifier() {
-        return updateNotifier;
-    }
-
     public static class AdapterAndProperty {
         
         private final ObjectAdapter objectAdapter;

http://git-wip-us.apache.org/repos/asf/isis/blob/30eb5146/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/IsisTransactionManager.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/IsisTransactionManager.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/IsisTransactionManager.java
index e39337c..8c0e523 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/IsisTransactionManager.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/IsisTransactionManager.java
@@ -117,13 +117,6 @@ public class IsisTransactionManager implements SessionScopedComponent {
 
 
     
-    /**
-     * Convenience method returning the {@link UpdateNotifier} of the
-     * {@link #getTransaction() current transaction}.
-     */
-    protected UpdateNotifier getUpdateNotifier() {
-        return getTransaction().getUpdateNotifier();
-    }
 
     /**
      * Convenience method returning the {@link MessageBroker} of the
@@ -227,28 +220,23 @@ public class IsisTransactionManager implements SessionScopedComponent {
      */
     protected final IsisTransaction createTransaction() {
         org.apache.isis.core.commons.authentication.MessageBroker messageBroker = createMessageBroker();
-        UpdateNotifier updateNotifier = createUpdateNotifier();
-        return this.transaction = createTransaction(messageBroker, updateNotifier, transactionalResource);
+        return this.transaction = createTransaction(messageBroker, transactionalResource);
     }
 
 
     /**
-     * The provided {@link MessageBroker} and {@link UpdateNotifier} are
-     * obtained from the hook methods ( {@link #createMessageBroker()} and
-     * {@link #createUpdateNotifier()}).
-     * @param transactionalResource 
-     * 
+     * The provided {@link MessageBroker} is
+     * obtained from the {@link #createMessageBroker()} hook method.
+     * @param transactionalResource
+     *
      * @see #createMessageBroker()
-     * @see #createUpdateNotifier()
      */
     private IsisTransaction createTransaction(
-            final org.apache.isis.core.commons.authentication.MessageBroker messageBroker, 
-            final UpdateNotifier updateNotifier, 
+            final org.apache.isis.core.commons.authentication.MessageBroker messageBroker,
             final TransactionalResource transactionalResource) {
         ensureThatArg(messageBroker, is(not(nullValue())));
-        ensureThatArg(updateNotifier, is(not(nullValue())));
 
-        return new IsisTransaction(this, messageBroker, updateNotifier, transactionalResource, servicesInjector);
+        return new IsisTransaction(this, messageBroker, transactionalResource, servicesInjector);
     }
     
 
@@ -541,7 +529,7 @@ public class IsisTransactionManager implements SessionScopedComponent {
 
     /**
      * Overridable hook, used in
-     * {@link #createTransaction(org.apache.isis.core.commons.authentication.MessageBroker, UpdateNotifier, org.apache.isis.core.runtime.persistence.objectstore.transaction.TransactionalResource)}
+     * {@link #createTransaction(org.apache.isis.core.commons.authentication.MessageBroker, org.apache.isis.core.runtime.persistence.objectstore.transaction.TransactionalResource)}
      * 
      * <p> Called when a new {@link IsisTransaction} is created.
      */
@@ -549,16 +537,6 @@ public class IsisTransactionManager implements SessionScopedComponent {
         return MessageBrokerDefault.acquire(getAuthenticationSession());
     }
 
-    /**
-     * Overridable hook, used in
-     * {@link #createTransaction(org.apache.isis.core.commons.authentication.MessageBroker, UpdateNotifier, org.apache.isis.core.runtime.persistence.objectstore.transaction.TransactionalResource)}
-     * 
-     * <p> Called when a new {@link IsisTransaction} is created.
-     */
-    protected UpdateNotifier createUpdateNotifier() {
-        return new UpdateNotifierDefault();
-    }
-
     // ////////////////////////////////////////////////////////////////
     // helpers
     // ////////////////////////////////////////////////////////////////

http://git-wip-us.apache.org/repos/asf/isis/blob/30eb5146/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/UpdateNotifier.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/UpdateNotifier.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/UpdateNotifier.java
deleted file mode 100644
index 589e54e..0000000
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/UpdateNotifier.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-package org.apache.isis.core.runtime.system.transaction;
-
-import java.util.List;
-
-import org.apache.isis.core.commons.components.TransactionScopedComponent;
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-
-/**
- * UpdateNotifier provides updates to client making available lists of the
- * latest changed and disposed objects.
- */
-public interface UpdateNotifier extends TransactionScopedComponent {
-
-    // //////////////////////////////////////////////////
-    // Changed Objects
-    // //////////////////////////////////////////////////
-
-    /**
-     * Used by the framework to add objects that have just changed.
-     */
-    void addChangedObject(ObjectAdapter object);
-
-    /**
-     * Returns an immutable {@link List} of changed objects.
-     * 
-     * <p>
-     * Each changed object that was added is only ever provided during one call
-     * to this method so the list must be processed fully to avoid missing
-     * updates.
-     */
-    List<ObjectAdapter> getChangedObjects();
-
-    // //////////////////////////////////////////////////
-    // Disposed Objects
-    // //////////////////////////////////////////////////
-
-    /**
-     * Used by the framework to add objects that have just been disposed of.
-     */
-    void addDisposedObject(ObjectAdapter adapter);
-
-    /**
-     * Returns an immutable {@link List} of disposed objects.
-     * 
-     * <p>
-     * Each object that was disposed of is only ever provided during one call to
-     * this method so the list must be processed fully to avoid missing
-     * deletions.
-     */
-    public List<ObjectAdapter> getDisposedObjects();
-
-    // //////////////////////////////////////////////////
-    // Empty, Clear
-    // //////////////////////////////////////////////////
-
-    void ensureEmpty();
-
-    void clear();
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/30eb5146/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/UpdateNotifierDefault.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/UpdateNotifierDefault.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/UpdateNotifierDefault.java
deleted file mode 100644
index 9e92e0f..0000000
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/UpdateNotifierDefault.java
+++ /dev/null
@@ -1,168 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-package org.apache.isis.core.runtime.system.transaction;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import org.apache.isis.core.commons.debug.DebugBuilder;
-import org.apache.isis.core.commons.debug.DebuggableWithTitle;
-import org.apache.isis.core.commons.exceptions.IsisException;
-import org.apache.isis.core.commons.util.ToString;
-import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
-
-public class UpdateNotifierDefault implements UpdateNotifier, DebuggableWithTitle {
-
-    private static final Logger LOG = LoggerFactory.getLogger(UpdateNotifierDefault.class);
-    
-    private final List<ObjectAdapter> changes = new ArrayList<ObjectAdapter>();
-    private final List<ObjectAdapter> disposals = new ArrayList<ObjectAdapter>();
-
-    // //////////////////////////////////////////////////
-    // Constructor
-    // //////////////////////////////////////////////////
-
-    public UpdateNotifierDefault() {
-        // does nothing
-    }
-
-    // //////////////////////////////////////////////////
-    // Changed Objects
-    // //////////////////////////////////////////////////
-
-    @Override
-    public synchronized void addChangedObject(final ObjectAdapter adapter) {
-        if (!adapter.isResolved() && !adapter.isTransient()) {
-            return;
-        }
-
-        if (LOG.isDebugEnabled()) {
-            LOG.debug("mark as changed " + adapter);
-        }
-        if (!changes.contains(adapter)) {
-            changes.add(adapter);
-        }
-    }
-
-    @Override
-    public List<ObjectAdapter> getChangedObjects() {
-        if (changes.size() > 0) {
-            if (LOG.isDebugEnabled()) {
-                LOG.debug("dirty (changed) objects " + changes);
-            }
-        }
-        final List<ObjectAdapter> changedObjects = new ArrayList<ObjectAdapter>();
-        changedObjects.addAll(changes);
-
-        changes.clear();
-
-        return Collections.unmodifiableList(changedObjects);
-    }
-
-    // //////////////////////////////////////////////////
-    // Disposed Objects
-    // //////////////////////////////////////////////////
-
-    @Override
-    public void addDisposedObject(final ObjectAdapter adapter) {
-        if (LOG.isDebugEnabled()) {
-            LOG.debug("mark as disposed " + adapter);
-        }
-        if (!disposals.contains(adapter)) {
-            disposals.add(adapter);
-        }
-    }
-
-    @Override
-    public List<ObjectAdapter> getDisposedObjects() {
-        if (disposals.size() > 0) {
-            if (LOG.isDebugEnabled()) {
-                LOG.debug("dirty (disposed) objects " + disposals);
-            }
-        }
-        final List<ObjectAdapter> disposedObjects = new ArrayList<ObjectAdapter>();
-        disposedObjects.addAll(disposals);
-
-        disposals.clear();
-
-        return Collections.unmodifiableList(disposedObjects);
-    }
-
-    // //////////////////////////////////////////////////
-    // Empty, Clear
-    // //////////////////////////////////////////////////
-
-    @Override
-    public void ensureEmpty() {
-        if (changes.size() > 0) {
-            throw new IsisException("Update notifier still has updates");
-        }
-    }
-
-    @Override
-    public void clear() {
-        changes.clear();
-        disposals.clear();
-    }
-
-    // //////////////////////////////////////////////////
-    // Debugging
-    // //////////////////////////////////////////////////
-
-    @Override
-    public void debugData(final DebugBuilder debug) {
-        debug.appendln("Changes");
-        debugList(debug, changes);
-
-        debug.appendln("Disposals");
-        debugList(debug, disposals);
-    }
-
-    @Override
-    public String debugTitle() {
-        return "Simple Update Notifier";
-    }
-
-    private void debugList(final DebugBuilder debug, final List<ObjectAdapter> list) {
-        debug.indent();
-        if (list.size() == 0) {
-            debug.appendln("none");
-        } else {
-            for (final ObjectAdapter adapter : list) {
-                debug.appendln(adapter.toString());
-            }
-        }
-        debug.unindent();
-    }
-
-    // //////////////////////////////////////////////////
-    // toString
-    // //////////////////////////////////////////////////
-
-    @Override
-    public String toString() {
-        return new ToString(this).append("changes", changes).toString();
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/isis/blob/30eb5146/core/runtime/src/test/java/org/apache/isis/core/runtime/system/transaction/IsisTransactionTest.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/test/java/org/apache/isis/core/runtime/system/transaction/IsisTransactionTest.java b/core/runtime/src/test/java/org/apache/isis/core/runtime/system/transaction/IsisTransactionTest.java
index 2a66a8f..9f4c2c8 100644
--- a/core/runtime/src/test/java/org/apache/isis/core/runtime/system/transaction/IsisTransactionTest.java
+++ b/core/runtime/src/test/java/org/apache/isis/core/runtime/system/transaction/IsisTransactionTest.java
@@ -70,8 +70,6 @@ public class IsisTransactionTest {
     @Mock
     private MessageBroker mockMessageBroker;
     @Mock
-    private UpdateNotifier mockUpdateNotifier;
-    @Mock
     private CommandContext mockCommandContext;
     @Mock
     private CommandService mockCommandService;
@@ -225,7 +223,7 @@ public class IsisTransactionTest {
             will(returnValue("sven"));
         }});
         
-        transaction = new IsisTransaction(mockTransactionManager, mockMessageBroker, mockUpdateNotifier, mockObjectStore, mockServicesInjector);
+        transaction = new IsisTransaction(mockTransactionManager, mockMessageBroker, mockObjectStore, mockServicesInjector);
         
         transientAdapter1 = PojoAdapterBuilder.create().with(Persistence.TRANSIENT).withIdentifier("1").build();
         transientAdapter2 = PojoAdapterBuilder.create().with(Persistence.TRANSIENT).withIdentifier("2").build();

http://git-wip-us.apache.org/repos/asf/isis/blob/30eb5146/core/viewer-restfulobjects-rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/ReprRendererAbstract.java
----------------------------------------------------------------------
diff --git a/core/viewer-restfulobjects-rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/ReprRendererAbstract.java b/core/viewer-restfulobjects-rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/ReprRendererAbstract.java
index 155eb96..8fe4620 100644
--- a/core/viewer-restfulobjects-rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/ReprRendererAbstract.java
+++ b/core/viewer-restfulobjects-rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/ReprRendererAbstract.java
@@ -20,21 +20,18 @@ package org.apache.isis.viewer.restfulobjects.rendering;
 
 import java.util.List;
 import java.util.Map;
-
 import javax.ws.rs.core.MediaType;
-
+import com.google.common.collect.Lists;
+import com.google.common.collect.Maps;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.spec.ObjectSpecification;
 import org.apache.isis.core.runtime.system.context.IsisContext;
-import org.apache.isis.core.runtime.system.transaction.UpdateNotifier;
 import org.apache.isis.viewer.restfulobjects.applib.JsonRepresentation;
 import org.apache.isis.viewer.restfulobjects.applib.Rel;
 import org.apache.isis.viewer.restfulobjects.applib.RepresentationType;
 import org.apache.isis.viewer.restfulobjects.rendering.domainobjects.DomainObjectReprRenderer;
 import org.apache.isis.viewer.restfulobjects.rendering.domaintypes.DomainTypeReprRenderer;
 
-import com.google.common.collect.Maps;
-
 public abstract class ReprRendererAbstract<R extends ReprRendererAbstract<R, T>, T> implements ReprRenderer<R, T> {
 
     protected final RendererContext rendererContext;
@@ -163,13 +160,20 @@ public abstract class ReprRendererAbstract<R extends ReprRendererAbstract<R, T>,
      * mutate state.
      */
     protected final void addExtensionsIsisProprietaryChangedObjects() {
-        final UpdateNotifier updateNotifier = getUpdateNotifier();
 
-        addToExtensions("changed", updateNotifier.getChangedObjects());
-        addToExtensions("disposed", updateNotifier.getDisposedObjects());
+        // TODO: have removed UpdateNotifier, plan is to re-introduce using the IsisTransaction enlisted objects
+        // (which would also allow newly-created objects to be shown)
+        final List<ObjectAdapter> changedObjects = Lists.newArrayList(); // updateNotifier.getChangedObjects();
+        final List<ObjectAdapter> disposedObjects = Lists.newArrayList(); // updateNotifier.getDisposedObjects();
+
+        addToExtensions("changed", changedObjects);
+        addToExtensions("disposed", disposedObjects);
     }
 
     private void addToExtensions(final String key, final List<ObjectAdapter> adapters) {
+        if(adapters == null || adapters.isEmpty()) {
+            return;
+        }
         final JsonRepresentation adapterList = JsonRepresentation.newArray();
         getExtensions().mapPut(key, adapterList);
         for (final ObjectAdapter adapter : adapters) {
@@ -181,8 +185,4 @@ public abstract class ReprRendererAbstract<R extends ReprRendererAbstract<R, T>,
         return IsisContext.getPersistenceSession().getServices();
     }
 
-    protected UpdateNotifier getUpdateNotifier() {
-        return IsisContext.getCurrentTransaction().getUpdateNotifier();
-    }
-
 }