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/03/04 08:33:58 UTC

git commit: ISIS-726, ISIS-660: bulk actions should also create a command

Repository: isis
Updated Branches:
  refs/heads/master 9543f0a06 -> b8817a988


ISIS-726, ISIS-660: bulk actions should also create a command


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

Branch: refs/heads/master
Commit: b8817a988171a2501ab34b943478948859356fa1
Parents: 9543f0a
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Tue Mar 4 07:33:47 2014 +0000
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Tue Mar 4 07:33:47 2014 +0000

----------------------------------------------------------------------
 .../ajaxtable/BulkActionsLinkFactory.java        | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/b8817a98/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/BulkActionsLinkFactory.java
----------------------------------------------------------------------
diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/BulkActionsLinkFactory.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/BulkActionsLinkFactory.java
index a7e55f5..9d0a04e 100644
--- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/BulkActionsLinkFactory.java
+++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/collectioncontents/ajaxtable/BulkActionsLinkFactory.java
@@ -32,6 +32,9 @@ import org.apache.wicket.markup.html.link.Link;
 import org.apache.isis.applib.RecoverableException;
 import org.apache.isis.applib.annotation.Bulk;
 import org.apache.isis.applib.annotation.Bulk.InteractionContext.InvokedAs;
+import org.apache.isis.applib.services.command.Command;
+import org.apache.isis.applib.services.command.CommandContext;
+import org.apache.isis.applib.services.command.Command.Executor;
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
 import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider;
 import org.apache.isis.core.commons.authentication.MessageBroker;
@@ -40,7 +43,9 @@ import org.apache.isis.core.commons.exceptions.IsisException;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager.ConcurrencyChecking;
 import org.apache.isis.core.metamodel.adapter.version.ConcurrencyException;
+import org.apache.isis.core.metamodel.runtimecontext.ServicesInjector;
 import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
+import org.apache.isis.core.runtime.system.context.IsisContext;
 import org.apache.isis.viewer.wicket.model.links.LinkAndLabel;
 import org.apache.isis.viewer.wicket.model.mementos.ActionMemento;
 import org.apache.isis.viewer.wicket.model.mementos.ObjectAdapterMemento;
@@ -105,6 +110,16 @@ final class BulkActionsLinkFactory implements ActionLinkFactory {
                         bulkInteractionContext.setInvokedAs(InvokedAs.BULK);
                         bulkInteractionContext.setDomainObjects(domainObjects);
                     }
+                    
+                    final CommandContext commandContext = getServicesInjector().lookupService(CommandContext.class);
+                    final Command command;
+                    if (commandContext != null) {
+                        command = commandContext.getCommand();
+                        command.setExecutor(Executor.USER);
+                    } else {
+                        command = null;
+                    }
+
 
                     ObjectAdapter lastReturnedAdapter = null;
                     int i=0;
@@ -215,4 +230,8 @@ final class BulkActionsLinkFactory implements ActionLinkFactory {
         return getAuthenticationSession().getMessageBroker();
     }
 
+    protected ServicesInjector getServicesInjector() {
+        return IsisContext.getPersistenceSession().getServicesInjector();
+    }
+
 }
\ No newline at end of file