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/02/20 14:11:00 UTC

[4/5] git commit: ISIS-707: bulk interaction facet contributed actions

ISIS-707: bulk interaction facet contributed actions

ObjectActionContributee
- same set up of Bulk.InteractionContext as currently done by ActionInvocationFacetViaMethod

requires changes to:
- ObjectMemberContext
  - to provide a servicesProvider (for lookup of the bookmarkService)
- ObjectReflectorDefault
  - to initialize ObjectMemberContext
- ObjectMemberAbstract
  - to expose servicesProvider to subclasses (ie ObjectActionContributee)
- unit tests

and requires changes to:
- ServicesProvider API
  - to provide a new lookupService(Class) method
- RuntimeContextFromSession, RuntimeContextNoRuntime
  - corresponding impls


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

Branch: refs/heads/master
Commit: f10d671f52303c45a53e3b83a3840bfa24713315
Parents: 19b7c17
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Thu Feb 20 13:00:45 2014 +0000
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Thu Feb 20 13:00:45 2014 +0000

----------------------------------------------------------------------
 .../core/metamodel/adapter/ServicesProvider.java |  2 ++
 .../noruntime/RuntimeContextNoRuntime.java       |  5 +++++
 .../spec/feature/ObjectMemberContext.java        | 16 +++++++++++++++-
 .../specloader/ObjectReflectorDefault.java       |  2 +-
 .../specimpl/ObjectActionContributee.java        | 19 +++++++++++++++++++
 .../specimpl/ObjectMemberAbstract.java           |  7 +++++++
 .../specimpl/ObjectAssociationAbstractTest.java  |  2 +-
 ...jectAssociationAbstractTest_alwaysHidden.java |  2 +-
 .../internal/RuntimeContextFromSession.java      |  5 +++++
 .../runtime/system/ObjectActionImplTest.java     |  2 +-
 .../runtime/system/ObjectMemberAbstractTest.java |  2 +-
 .../system/OneToManyAssociationImplTest.java     |  5 ++++-
 12 files changed, 62 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/f10d671f/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/ServicesProvider.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/ServicesProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/ServicesProvider.java
index 568aa70..f315aaa 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/ServicesProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/ServicesProvider.java
@@ -31,4 +31,6 @@ public interface ServicesProvider extends Injectable {
      */
     List<ObjectAdapter> getServices();
 
+    <T> T lookupService(Class<T> cls);
+
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/f10d671f/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/noruntime/RuntimeContextNoRuntime.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/noruntime/RuntimeContextNoRuntime.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/noruntime/RuntimeContextNoRuntime.java
index faec78f..2f1da7c 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/noruntime/RuntimeContextNoRuntime.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/runtimecontext/noruntime/RuntimeContextNoRuntime.java
@@ -353,6 +353,11 @@ public class RuntimeContextNoRuntime extends RuntimeContextAbstract {
             public List<ObjectAdapter> getServices() {
                 return Collections.emptyList();
             }
+
+            @Override
+            public <T> T lookupService(Class<T> cls) {
+                return null;
+            }
         };
     }
 

http://git-wip-us.apache.org/repos/asf/isis/blob/f10d671f/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/feature/ObjectMemberContext.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/feature/ObjectMemberContext.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/feature/ObjectMemberContext.java
index f86dc31..2aef1e1 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/feature/ObjectMemberContext.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/feature/ObjectMemberContext.java
@@ -18,6 +18,7 @@ package org.apache.isis.core.metamodel.spec.feature;
 
 import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider;
 import org.apache.isis.core.metamodel.adapter.QuerySubmitter;
+import org.apache.isis.core.metamodel.adapter.ServicesProvider;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
 import org.apache.isis.core.metamodel.deployment.DeploymentCategory;
 import org.apache.isis.core.metamodel.spec.SpecificationLoader;
@@ -31,8 +32,16 @@ public class ObjectMemberContext {
     private final AdapterManager adapterManager;
     private final QuerySubmitter querySubmitter;
     private final CollectionTypeRegistry collectionTypeRegistry;
+    private final ServicesProvider servicesProvider;
 
-    public ObjectMemberContext(final DeploymentCategory deploymentCategory, final AuthenticationSessionProvider authenticationSessionProvider, final SpecificationLoader specificationLookup, final AdapterManager adapterManager, final QuerySubmitter querySubmitter, final CollectionTypeRegistry collectionTypeRegistry) {
+    public ObjectMemberContext(
+            final DeploymentCategory deploymentCategory, 
+            final AuthenticationSessionProvider authenticationSessionProvider, 
+            final SpecificationLoader specificationLookup, 
+            final AdapterManager adapterManager, 
+            final QuerySubmitter querySubmitter, 
+            final CollectionTypeRegistry collectionTypeRegistry,
+            final ServicesProvider servicesProvider) {
 
         this.deploymentCategory = deploymentCategory;
         this.authenticationSessionProvider = authenticationSessionProvider;
@@ -40,6 +49,7 @@ public class ObjectMemberContext {
         this.adapterManager = adapterManager;
         this.querySubmitter = querySubmitter;
         this.collectionTypeRegistry = collectionTypeRegistry;
+        this.servicesProvider = servicesProvider;
     }
 
     public DeploymentCategory getDeploymentCategory() {
@@ -58,6 +68,10 @@ public class ObjectMemberContext {
         return adapterManager;
     }
 
+    public ServicesProvider getServicesProvider() {
+        return servicesProvider;
+    }
+    
     public QuerySubmitter getQuerySubmitter() {
         return querySubmitter;
     }

http://git-wip-us.apache.org/repos/asf/isis/blob/f10d671f/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorDefault.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorDefault.java
index d83d2fb..a354a17 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorDefault.java
@@ -504,7 +504,7 @@ public final class ObjectReflectorDefault implements SpecificationLoaderSpi, App
         final SpecificationContext specContext = new SpecificationContext(getDeploymentCategory(), authenticationSessionProvider, servicesProvider, objectInstantiator, specificationLookup, facetProcessor);
 
         final AdapterManager adapterMap = getRuntimeContext().getAdapterManager();
-        final ObjectMemberContext objectMemberContext = new ObjectMemberContext(getDeploymentCategory(), authenticationSessionProvider, specificationLookup, adapterMap, getRuntimeContext().getQuerySubmitter(), collectionTypeRegistry);
+        final ObjectMemberContext objectMemberContext = new ObjectMemberContext(getDeploymentCategory(), authenticationSessionProvider, specificationLookup, adapterMap, getRuntimeContext().getQuerySubmitter(), collectionTypeRegistry, servicesProvider);
 
         // ... and create the specs
         if (FreeStandingList.class.isAssignableFrom(cls)) {

http://git-wip-us.apache.org/repos/asf/isis/blob/f10d671f/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionContributee.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionContributee.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionContributee.java
index de00892..49cd76c 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionContributee.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionContributee.java
@@ -17,11 +17,14 @@
 package org.apache.isis.core.metamodel.specloader.specimpl;
 
 import java.util.Arrays;
+import java.util.Collections;
 import java.util.List;
 
 import com.google.common.collect.Lists;
 
 import org.apache.isis.applib.Identifier;
+import org.apache.isis.applib.annotation.Bulk;
+import org.apache.isis.applib.annotation.Bulk.InteractionContext.InvokedAs;
 import org.apache.isis.applib.annotation.Where;
 import org.apache.isis.applib.filter.Filter;
 import org.apache.isis.core.commons.authentication.AuthenticationSession;
@@ -33,9 +36,11 @@ import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FacetHolderImpl;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
 import org.apache.isis.core.metamodel.facetapi.MultiTypedFacet;
+import org.apache.isis.core.metamodel.facets.actions.invoke.ActionInvocationFacet;
 import org.apache.isis.core.metamodel.spec.ObjectSpecification;
 import org.apache.isis.core.metamodel.spec.feature.ObjectActionParameter;
 import org.apache.isis.core.metamodel.spec.feature.ObjectMemberContext;
+import org.apache.isis.core.progmodel.facets.actions.bulk.BulkFacet;
 
 public class ObjectActionContributee extends ObjectActionImpl implements ContributeeMember {
 
@@ -164,6 +169,20 @@ public class ObjectActionContributee extends ObjectActionImpl implements Contrib
 
     @Override
     public ObjectAdapter execute(final ObjectAdapter contributee, final ObjectAdapter[] arguments) {
+        
+        // this code also exists in ActionInvocationFacetViaMethod
+        // we need to repeat it here because the target adapter should be the contributee, not the contributing service.
+        final Bulk.InteractionContext bulkInteractionContext = getServicesProvider().lookupService(Bulk.InteractionContext.class);
+
+        final BulkFacet bulkFacet = getFacet(BulkFacet.class);
+        if (bulkFacet != null && 
+            bulkInteractionContext != null &&
+            bulkInteractionContext.getInvokedAs() == null) {
+            
+            bulkInteractionContext.setInvokedAs(InvokedAs.REGULAR);
+            bulkInteractionContext.setDomainObjects(Collections.singletonList(contributee.getObject()));
+        }
+
         return serviceAction.execute(serviceAdapter, argsPlusContributee(contributee, arguments));
     }
 

http://git-wip-us.apache.org/repos/asf/isis/blob/f10d671f/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectMemberAbstract.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectMemberAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectMemberAbstract.java
index 6f520c3..b688f56 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectMemberAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectMemberAbstract.java
@@ -30,6 +30,7 @@ import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider
 import org.apache.isis.core.commons.lang.StringExtensions;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.QuerySubmitter;
+import org.apache.isis.core.metamodel.adapter.ServicesProvider;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
 import org.apache.isis.core.metamodel.consent.Consent;
 import org.apache.isis.core.metamodel.consent.InteractionInvocationMethod;
@@ -67,6 +68,7 @@ public abstract class ObjectMemberAbstract implements ObjectMember {
     private final AuthenticationSessionProvider authenticationSessionProvider;
     private final SpecificationLoader specificationLookup;
     private final AdapterManager adapterManager;
+    private final ServicesProvider servicesProvider;
     private final QuerySubmitter querySubmitter;
     private final CollectionTypeRegistry collectionTypeRegistry;
     private final DeploymentCategory deploymentCategory;
@@ -85,6 +87,7 @@ public abstract class ObjectMemberAbstract implements ObjectMember {
         this.authenticationSessionProvider = objectMemberContext.getAuthenticationSessionProvider();
         this.specificationLookup = objectMemberContext.getSpecificationLookup();
         this.adapterManager = objectMemberContext.getAdapterManager();
+        this.servicesProvider = objectMemberContext.getServicesProvider();
         this.querySubmitter = objectMemberContext.getQuerySubmitter();
         this.collectionTypeRegistry = objectMemberContext.getCollectionTypeRegistry();
     }
@@ -312,6 +315,10 @@ public abstract class ObjectMemberAbstract implements ObjectMember {
         return adapterManager;
     }
 
+    public ServicesProvider getServicesProvider() {
+        return servicesProvider;
+    }
+
     public QuerySubmitter getQuerySubmitter() {
         return querySubmitter;
     }

http://git-wip-us.apache.org/repos/asf/isis/blob/f10d671f/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstractTest.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstractTest.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstractTest.java
index 0bee5d1..c445bf6 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstractTest.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstractTest.java
@@ -73,7 +73,7 @@ public class ObjectAssociationAbstractTest {
     public void setup() {
         facetedMethod = FacetedMethod.createForProperty(Customer.class, "firstName");
         
-        objectAssociation = new ObjectAssociationAbstract(facetedMethod, FeatureType.PROPERTY, objectSpecification, new ObjectMemberContext(DeploymentCategory.PRODUCTION, null, null, null, null, null)) {
+        objectAssociation = new ObjectAssociationAbstract(facetedMethod, FeatureType.PROPERTY, objectSpecification, new ObjectMemberContext(DeploymentCategory.PRODUCTION, null, null, null, null, null, null)) {
 
             @Override
             public ObjectAdapter get(final ObjectAdapter fromObject) {

http://git-wip-us.apache.org/repos/asf/isis/blob/f10d671f/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstractTest_alwaysHidden.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstractTest_alwaysHidden.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstractTest_alwaysHidden.java
index b4cdf5a..1bfbfb7 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstractTest_alwaysHidden.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstractTest_alwaysHidden.java
@@ -72,7 +72,7 @@ public class ObjectAssociationAbstractTest_alwaysHidden {
     public void setup() {
         facetedMethod = FacetedMethod.createForProperty(Customer.class, "firstName");
         
-        objectAssociation = new ObjectAssociationAbstract(facetedMethod, FeatureType.PROPERTY, objectSpecification, new ObjectMemberContext(DeploymentCategory.PRODUCTION, null, null, null, null, null)) {
+        objectAssociation = new ObjectAssociationAbstract(facetedMethod, FeatureType.PROPERTY, objectSpecification, new ObjectMemberContext(DeploymentCategory.PRODUCTION, null, null, null, null, null, null)) {
 
             @Override
             public ObjectAdapter get(final ObjectAdapter fromObject) {

http://git-wip-us.apache.org/repos/asf/isis/blob/f10d671f/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 a1dba17..02fa73e 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
@@ -179,6 +179,11 @@ public class RuntimeContextFromSession extends RuntimeContextAbstract {
             public List<ObjectAdapter> getServices() {
                 return getPersistenceSession().getServices();
             }
+
+            @Override
+            public <T> T lookupService(Class<T> cls) {
+                return getPersistenceSession().getServicesInjector().lookupService(cls);
+            }
         };
         this.domainObjectServices = new DomainObjectServicesAbstract() {
 

http://git-wip-us.apache.org/repos/asf/isis/blob/f10d671f/core/runtime/src/test/java/org/apache/isis/core/runtime/system/ObjectActionImplTest.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/test/java/org/apache/isis/core/runtime/system/ObjectActionImplTest.java b/core/runtime/src/test/java/org/apache/isis/core/runtime/system/ObjectActionImplTest.java
index 8571dae..9620344 100644
--- a/core/runtime/src/test/java/org/apache/isis/core/runtime/system/ObjectActionImplTest.java
+++ b/core/runtime/src/test/java/org/apache/isis/core/runtime/system/ObjectActionImplTest.java
@@ -77,7 +77,7 @@ public class ObjectActionImplTest {
             }
         });
 
-        action = new ObjectActionImpl(mockFacetedMethod, new ObjectMemberContext(DeploymentCategory.PRODUCTION, mockAuthenticationSessionProvider, mockSpecificationLookup, mockAdapterManager, mockQuerySubmitter, mockCollectionTypeRegistry));
+        action = new ObjectActionImpl(mockFacetedMethod, new ObjectMemberContext(DeploymentCategory.PRODUCTION, mockAuthenticationSessionProvider, mockSpecificationLookup, mockAdapterManager, mockQuerySubmitter, mockCollectionTypeRegistry, mockServicesProvider));
     }
 
 

http://git-wip-us.apache.org/repos/asf/isis/blob/f10d671f/core/runtime/src/test/java/org/apache/isis/core/runtime/system/ObjectMemberAbstractTest.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/test/java/org/apache/isis/core/runtime/system/ObjectMemberAbstractTest.java b/core/runtime/src/test/java/org/apache/isis/core/runtime/system/ObjectMemberAbstractTest.java
index 9c80148..588ad36 100644
--- a/core/runtime/src/test/java/org/apache/isis/core/runtime/system/ObjectMemberAbstractTest.java
+++ b/core/runtime/src/test/java/org/apache/isis/core/runtime/system/ObjectMemberAbstractTest.java
@@ -205,7 +205,7 @@ class ObjectMemberAbstractImpl extends ObjectMemberAbstract {
     }
 
     protected ObjectMemberAbstractImpl(final String id) {
-        super(FacetedMethod.createForProperty(Customer.class, "firstName"), FeatureType.PROPERTY, new ObjectMemberContext(DeploymentCategory.PRODUCTION, null, null, null, null, null));
+        super(FacetedMethod.createForProperty(Customer.class, "firstName"), FeatureType.PROPERTY, new ObjectMemberContext(DeploymentCategory.PRODUCTION, null, null, null, null, null, null));
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/isis/blob/f10d671f/core/runtime/src/test/java/org/apache/isis/core/runtime/system/OneToManyAssociationImplTest.java
----------------------------------------------------------------------
diff --git a/core/runtime/src/test/java/org/apache/isis/core/runtime/system/OneToManyAssociationImplTest.java b/core/runtime/src/test/java/org/apache/isis/core/runtime/system/OneToManyAssociationImplTest.java
index 688a821..8af224a 100644
--- a/core/runtime/src/test/java/org/apache/isis/core/runtime/system/OneToManyAssociationImplTest.java
+++ b/core/runtime/src/test/java/org/apache/isis/core/runtime/system/OneToManyAssociationImplTest.java
@@ -33,6 +33,7 @@ import org.apache.isis.applib.Identifier;
 import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.QuerySubmitter;
+import org.apache.isis.core.metamodel.adapter.ServicesProvider;
 import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
 import org.apache.isis.core.metamodel.deployment.DeploymentCategory;
 import org.apache.isis.core.metamodel.facets.FacetedMethod;
@@ -80,6 +81,8 @@ public class OneToManyAssociationImplTest {
     @Mock
     private NamedFacet mockNamedFacet;
     @Mock
+    private ServicesProvider mockServicesProvider;
+    @Mock
     private CollectionAddToFacet mockCollectionAddToFacet;
     @Mock
     private CollectionTypeRegistry mockCollectionTypeRegistry;
@@ -91,7 +94,7 @@ public class OneToManyAssociationImplTest {
         allowingPeerToReturnCollectionType();
         allowingPeerToReturnIdentifier();
         allowingSpecLoaderToReturnSpecs();
-        association = new OneToManyAssociationImpl(mockPeer, new ObjectMemberContext(DeploymentCategory.PRODUCTION, mockAuthenticationSessionProvider, mockSpecificationLookup, mockAdapterManager, mockQuerySubmitter, mockCollectionTypeRegistry));
+        association = new OneToManyAssociationImpl(mockPeer, new ObjectMemberContext(DeploymentCategory.PRODUCTION, mockAuthenticationSessionProvider, mockSpecificationLookup, mockAdapterManager, mockQuerySubmitter, mockCollectionTypeRegistry, mockServicesProvider));
     }
 
     private void allowingSpecLoaderToReturnSpecs() {