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/10/30 14:59:21 UTC

[5/8] git commit: ISIS-939: pruning defunct uses of SpecificationTraverser and similar.

ISIS-939: pruning defunct uses of SpecificationTraverser and similar.


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

Branch: refs/heads/master
Commit: 06929abc2156df2665ce25115f1aac7cebc28f72
Parents: d716572
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Wed Oct 29 08:36:26 2014 +0000
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Wed Oct 29 08:36:26 2014 +0000

----------------------------------------------------------------------
 .../isis/core/metamodel/app/IsisMetaModel.java  | 69 +++-----------------
 .../specloader/ObjectReflectorDefault.java      | 54 ++-------------
 .../specimpl/FacetedMethodsBuilder.java         | 23 ++-----
 .../specimpl/FacetedMethodsBuilderContext.java  | 10 +--
 .../progmodels/dflt/JavaReflectorHelper.java    |  5 +-
 ...IsisMetaModelBaseTest_constructDefaults.java | 10 ---
 .../metamodel/app/IsisMetaModelTest_init.java   |  6 --
 .../ObjectReflectorDefaultTestAbstract.java     |  2 -
 8 files changed, 22 insertions(+), 157 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/06929abc/core/metamodel/src/main/java/org/apache/isis/core/metamodel/app/IsisMetaModel.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/app/IsisMetaModel.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/app/IsisMetaModel.java
index acdd5f6..f0cd890 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/app/IsisMetaModel.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/app/IsisMetaModel.java
@@ -33,9 +33,6 @@ import org.apache.isis.core.metamodel.services.container.DomainObjectContainerDe
 import org.apache.isis.core.metamodel.spec.ObjectSpecification;
 import org.apache.isis.core.metamodel.spec.SpecificationLoaderSpi;
 import org.apache.isis.core.metamodel.specloader.ObjectReflectorDefault;
-import org.apache.isis.core.metamodel.specloader.classsubstitutor.ClassSubstitutor;
-import org.apache.isis.core.metamodel.specloader.collectiontyperegistry.CollectionTypeRegistry;
-import org.apache.isis.core.metamodel.specloader.traverser.SpecificationTraverser;
 import org.apache.isis.core.metamodel.specloader.validator.MetaModelValidator;
 import org.apache.isis.core.metamodel.specloader.validator.ValidationFailures;
 
@@ -65,10 +62,7 @@ public class IsisMetaModel implements ApplicationScopedComponent {
     private RuntimeContext runtimeContext;
 
     private IsisConfiguration configuration;
-    private ClassSubstitutor classSubstitutor;
-    private CollectionTypeRegistry collectionTypeRegistry;
     private ProgrammingModel programmingModel;
-    private SpecificationTraverser specificationTraverser;
     private Set<FacetDecorator> facetDecorators;
     private MetaModelValidator metaModelValidator;
 
@@ -107,23 +101,21 @@ public class IsisMetaModel implements ApplicationScopedComponent {
         this(runtimeContext, programmingModel, services.toArray());
     }
     
-    public IsisMetaModel(final RuntimeContext runtimeContext, ProgrammingModel programmingModel, final Object... services) {
+    public IsisMetaModel(
+            final RuntimeContext runtimeContext,
+            final ProgrammingModel programmingModel,
+            final Object... services) {
         this.runtimeContext = runtimeContext;
 
         this.services.add(new DomainObjectContainerDefault());
         this.services.addAll(Arrays.asList(services));
 
-        setConfiguration(new IsisConfigurationDefault());
+        this.configuration = new IsisConfigurationDefault();
 
-        this.classSubstitutor = new ClassSubstitutor();
-
-        this.collectionTypeRegistry = new CollectionTypeRegistry();
-        this.specificationTraverser = new SpecificationTraverser();
-
-        setFacetDecorators(new TreeSet<FacetDecorator>());
+        this.facetDecorators = new TreeSet<>();
         setProgrammingModelFacets(programmingModel);
 
-        setMetaModelValidator(new MetaModelValidatorDefault());
+        this.metaModelValidator = new MetaModelValidatorDefault();
     }
 
     /**
@@ -140,7 +132,7 @@ public class IsisMetaModel implements ApplicationScopedComponent {
     @Override
     public void init() {
         ensureNotInitialized();
-        reflector = new ObjectReflectorDefault(configuration, specificationTraverser, programmingModel, facetDecorators, metaModelValidator);
+        reflector = new ObjectReflectorDefault(configuration, programmingModel, facetDecorators, metaModelValidator);
 
         reflector.setServices(services);
         
@@ -217,51 +209,6 @@ public class IsisMetaModel implements ApplicationScopedComponent {
     }
 
     /**
-     * The {@link ClassSubstitutor} in force, either defaulted or specified
-     * {@link #setClassSubstitutor(ClassSubstitutor) explicitly}.
-     */
-    public ClassSubstitutor getClassSubstitutor() {
-        return classSubstitutor;
-    }
-
-    /**
-     * The {@link CollectionTypeRegistry} in force, either defaulted or
-     * specified {@link #setCollectionTypeRegistry(CollectionTypeRegistry)
-     * explicitly.}
-     */
-    public CollectionTypeRegistry getCollectionTypeRegistry() {
-        return collectionTypeRegistry;
-    }
-
-    /**
-     * Optionally specify the {@link CollectionTypeRegistry}.
-     * 
-     * <p>
-     * Call prior to {@link #init()}.
-     */
-    public void setCollectionTypeRegistry(final CollectionTypeRegistry collectionTypeRegistry) {
-        ensureNotInitialized();
-        ensureThatArg(collectionTypeRegistry, is(notNullValue()));
-        this.collectionTypeRegistry = collectionTypeRegistry;
-    }
-
-    /**
-     * The {@link SpecificationTraverser} in force, either defaulted or
-     * specified {@link #setSpecificationTraverser(SpecificationTraverser)
-     * explicitly}.
-     */
-    public SpecificationTraverser getSpecificationTraverser() {
-        return specificationTraverser;
-    }
-
-    /**
-     * Optionally specify the {@link SpecificationTraverser}.
-     */
-    public void setSpecificationTraverser(final SpecificationTraverser specificationTraverser) {
-        this.specificationTraverser = specificationTraverser;
-    }
-
-    /**
      * The {@link ProgrammingModel} in force, either defaulted or specified
      * {@link #setProgrammingModelFacets(ProgrammingModel) explicitly}.
      */

http://git-wip-us.apache.org/repos/asf/isis/blob/06929abc/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 f5808d3..02a6ca1 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
@@ -138,7 +138,7 @@ public final class ObjectReflectorDefault implements SpecificationLoaderSpi, App
      */
     private RuntimeContext runtimeContext;
 
-    private final SpecificationTraverser specificationTraverser;
+    private final SpecificationTraverser specificationTraverser = new SpecificationTraverser();
 
     /**
      * @see #setServices(List)
@@ -157,20 +157,17 @@ public final class ObjectReflectorDefault implements SpecificationLoaderSpi, App
 
     public ObjectReflectorDefault(
             final IsisConfiguration configuration,
-            final SpecificationTraverser specificationTraverser,
             final ProgrammingModel programmingModel,
             final Set<FacetDecorator> facetDecorators,
             final MetaModelValidator metaModelValidator) {
 
         ensureThatArg(configuration, is(notNullValue()));
-        ensureThatArg(specificationTraverser, is(notNullValue()));
         ensureThatArg(programmingModel, is(notNullValue()));
         ensureThatArg(facetDecorators, is(notNullValue()));
         ensureThatArg(metaModelValidator, is(notNullValue()));
 
         this.configuration = configuration;
         this.programmingModel = programmingModel;
-        this.specificationTraverser = specificationTraverser;
 
         this.facetDecoratorSet = new FacetDecoratorSet();
         for (final FacetDecorator facetDecorator : facetDecorators) {
@@ -258,34 +255,15 @@ public final class ObjectReflectorDefault implements SpecificationLoaderSpi, App
 	}
 
     /**
-     * load the service specifications and then, using the
-     * {@link #getSpecificationTraverser() traverser}, keep loading all
-     * referenced specifications until we can find no more.
+     * load the service specifications.
      */
     private void primeCache() {
         for (final Class<?> serviceClass : getServiceClasses()) {
             internalLoadSpecification(serviceClass);
         }
-        loadAllSpecifications();
     }
 
-    private void loadAllSpecifications() {
-        List<Class<?>> newlyDiscoveredClasses = Lists.newArrayList();
 
-        while (newlyDiscoveredClasses.size() > 0) {
-            for (final Class<?> newClass : newlyDiscoveredClasses) {
-                internalLoadSpecification(newClass);
-            }
-            newlyDiscoveredClasses = newlyDiscoveredClasses();
-        }
-    }
-
-    private List<Class<?>> newlyDiscoveredClasses() {
-        return Lists.newArrayList();
-    }
-
-    
-    
     @Override
     public void shutdown() {
         LOG.info("shutting down " + this);
@@ -330,7 +308,7 @@ public final class ObjectReflectorDefault implements SpecificationLoaderSpi, App
     }
 
     //region > isInjectorMethodFor
-    private InjectorMethodEvaluator injectorMethodEvaluator = new InjectorMethodEvaluatorDefault();
+    private final InjectorMethodEvaluator injectorMethodEvaluator = new InjectorMethodEvaluatorDefault();
 
     public boolean isInjectorMethodFor(Method method, final Class<?> serviceClass) {
         return injectorMethodEvaluator.isInjectorMethodFor(method, serviceClass);
@@ -466,7 +444,7 @@ public final class ObjectReflectorDefault implements SpecificationLoaderSpi, App
             final SpecificationLoaderSpi specificationLoader = this;
             final ServicesInjector dependencyInjector = getRuntimeContext().getDependencyInjector();
             final CreateObjectContext createObjectContext = new CreateObjectContext(adapterMap, dependencyInjector);
-            final FacetedMethodsBuilderContext facetedMethodsBuilderContext = new FacetedMethodsBuilderContext(specificationLoader, classSubstitutor, specificationTraverser, facetProcessor);
+            final FacetedMethodsBuilderContext facetedMethodsBuilderContext = new FacetedMethodsBuilderContext(specificationLoader, facetProcessor);
             return new ObjectSpecificationDefault(cls, facetedMethodsBuilderContext, specContext, objectMemberContext, createObjectContext);
         }
     }
@@ -655,34 +633,10 @@ public final class ObjectReflectorDefault implements SpecificationLoaderSpi, App
     // Dependencies (injected from constructor)
     // ////////////////////////////////////////////////////////////////////
 
-    protected IsisConfiguration getIsisConfiguration() {
-        return configuration;
-    }
-
-    protected CollectionTypeRegistry getCollectionTypeRegistry() {
-        return collectionTypeRegistry;
-    }
-
-    protected ClassSubstitutor getClassSubstitutor() {
-        return classSubstitutor;
-    }
-
-    protected SpecificationTraverser getSpecificationTraverser() {
-        return specificationTraverser;
-    }
-
-    protected ProgrammingModel getProgrammingModelFacets() {
-        return programmingModel;
-    }
-
     protected MetaModelValidator getMetaModelValidator() {
         return metaModelValidator;
     }
 
-    protected Set<FacetDecorator> getFacetDecoratorSet() {
-        return facetDecoratorSet.getFacetDecorators();
-    }
-
     @Override
     public void validateSpecifications(ValidationFailures validationFailures) {
         final Map<ObjectSpecId, ObjectSpecification> specById = Maps.newHashMap();

http://git-wip-us.apache.org/repos/asf/isis/blob/06929abc/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/FacetedMethodsBuilder.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/FacetedMethodsBuilder.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/FacetedMethodsBuilder.java
index bab2043..20bc08b 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/FacetedMethodsBuilder.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/FacetedMethodsBuilder.java
@@ -128,9 +128,8 @@ public class FacetedMethodsBuilder {
 
     private final FacetProcessor facetProcessor;
 
-    private final SpecificationTraverser specificationTraverser;
-
-    private final ClassSubstitutor classSubstitutor;
+    private final SpecificationTraverser specificationTraverser = new SpecificationTraverser();
+    private final ClassSubstitutor classSubstitutor = new ClassSubstitutor();
 
     private final SpecificationLoaderSpi specificationLoader;
 
@@ -150,8 +149,6 @@ public class FacetedMethodsBuilder {
         this.methodRemover = new FacetedMethodsMethodRemover(methods);
 
         this.facetProcessor = facetedMethodsBuilderContext.facetProcessor;
-        this.specificationTraverser = facetedMethodsBuilderContext.specificationTraverser;
-        this.classSubstitutor = facetedMethodsBuilderContext.classSubstitutor;
         this.specificationLoader = facetedMethodsBuilderContext.specificationLoader;
     }
 
@@ -260,7 +257,7 @@ public class FacetedMethodsBuilder {
         // Ensure all return types are known
         final List<Class<?>> typesToLoad = Lists.newArrayList();
         for (final Method method : associationCandidateMethods) {
-            getSpecificationTraverser().traverseTypes(method, typesToLoad);
+            specificationTraverser.traverseTypes(method, typesToLoad);
         }
         getSpecificationLoader().loadSpecifications(typesToLoad, introspectedClass);
 
@@ -313,7 +310,7 @@ public class FacetedMethodsBuilder {
             facetedMethod.setType(elementType);
 
             // skip if class substitutor says so.
-            if (getClassSubstitutor().getClass(elementType) == null) {
+            if (classSubstitutor.getClass(elementType) == null) {
                 continue;
             }
 
@@ -329,7 +326,7 @@ public class FacetedMethodsBuilder {
             final Class<?> returnType = accessorMethod.getReturnType();
 
             // skip if class strategy says so.
-            if (getClassSubstitutor().getClass(returnType) == null) {
+            if (classSubstitutor.getClass(returnType) == null) {
                 continue;
             }
 
@@ -463,7 +460,7 @@ public class FacetedMethodsBuilder {
         }
 
         final List<Class<?>> typesToLoad = new ArrayList<Class<?>>();
-        getSpecificationTraverser().traverseTypes(actionMethod, typesToLoad);
+        specificationTraverser.traverseTypes(actionMethod, typesToLoad);
 
         final boolean anyLoadedAsNull = getSpecificationLoader().loadSpecifications(typesToLoad);
         if (anyLoadedAsNull) {
@@ -568,16 +565,8 @@ public class FacetedMethodsBuilder {
         return specificationLoader;
     }
 
-    private SpecificationTraverser getSpecificationTraverser() {
-        return specificationTraverser;
-    }
-
     private FacetProcessor getFacetProcessor() {
         return facetProcessor;
     }
 
-    private ClassSubstitutor getClassSubstitutor() {
-        return classSubstitutor;
-    }
-
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/06929abc/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/FacetedMethodsBuilderContext.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/FacetedMethodsBuilderContext.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/FacetedMethodsBuilderContext.java
index 5aee3d1..198d567 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/FacetedMethodsBuilderContext.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/FacetedMethodsBuilderContext.java
@@ -17,20 +17,16 @@
 package org.apache.isis.core.metamodel.specloader.specimpl;
 
 import org.apache.isis.core.metamodel.spec.SpecificationLoaderSpi;
-import org.apache.isis.core.metamodel.specloader.classsubstitutor.ClassSubstitutor;
 import org.apache.isis.core.metamodel.specloader.facetprocessor.FacetProcessor;
-import org.apache.isis.core.metamodel.specloader.traverser.SpecificationTraverser;
 
 public class FacetedMethodsBuilderContext {
     public final SpecificationLoaderSpi specificationLoader;
-    public final SpecificationTraverser specificationTraverser;
     public final FacetProcessor facetProcessor;
-    public final ClassSubstitutor classSubstitutor;
 
-    public FacetedMethodsBuilderContext(final SpecificationLoaderSpi specificationLoader, final ClassSubstitutor classSubstitutor, final SpecificationTraverser specificationTraverser, final FacetProcessor facetProcessor) {
+    public FacetedMethodsBuilderContext(
+            final SpecificationLoaderSpi specificationLoader,
+            final FacetProcessor facetProcessor) {
         this.specificationLoader = specificationLoader;
-        this.classSubstitutor = classSubstitutor;
-        this.specificationTraverser = specificationTraverser;
         this.facetProcessor = facetProcessor;
     }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/isis/blob/06929abc/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorHelper.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorHelper.java b/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorHelper.java
index 8294088..38b906f 100644
--- a/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorHelper.java
+++ b/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorHelper.java
@@ -29,7 +29,6 @@ import org.apache.isis.core.metamodel.facetdecorator.FacetDecorator;
 import org.apache.isis.core.metamodel.progmodel.ProgrammingModel;
 import org.apache.isis.core.metamodel.spec.SpecificationLoaderSpi;
 import org.apache.isis.core.metamodel.specloader.ObjectReflectorDefault;
-import org.apache.isis.core.metamodel.specloader.traverser.SpecificationTraverser;
 import org.apache.isis.core.metamodel.specloader.validator.MetaModelValidator;
 import org.apache.isis.core.metamodel.specloader.validator.MetaModelValidatorComposite;
 
@@ -47,8 +46,6 @@ public final class JavaReflectorHelper  {
             final MetaModelValidator mmv,
             final IsisConfiguration configuration) {
 
-        final SpecificationTraverser specificationTraverser = new SpecificationTraverser();
-
         MetaModelValidatorComposite metaModelValidator = MetaModelValidatorComposite.asComposite(mmv);
         for (MetaModelRefiner metaModelRefiner : metaModelRefiners) {
             metaModelRefiner.refineProgrammingModel(programmingModel, configuration);
@@ -60,7 +57,7 @@ public final class JavaReflectorHelper  {
             programmingModel.refineMetaModelValidator(metaModelValidator, configuration);
         }
         
-        return new ObjectReflectorDefault(configuration, specificationTraverser, programmingModel, facetDecorators, metaModelValidator);
+        return new ObjectReflectorDefault(configuration, programmingModel, facetDecorators, metaModelValidator);
     }
 
 }

http://git-wip-us.apache.org/repos/asf/isis/blob/06929abc/core/metamodel/src/test/java/org/apache/isis/core/metamodel/app/IsisMetaModelBaseTest_constructDefaults.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/app/IsisMetaModelBaseTest_constructDefaults.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/app/IsisMetaModelBaseTest_constructDefaults.java
index 76ce7e0..90fabd4 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/app/IsisMetaModelBaseTest_constructDefaults.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/app/IsisMetaModelBaseTest_constructDefaults.java
@@ -57,21 +57,11 @@ public class IsisMetaModelBaseTest_constructDefaults {
     }
 
     @Test
-    public void shouldDefaultClassSubstitutor() {
-        assertThat(metaModel.getClassSubstitutor(), is(notNullValue()));
-    }
-
-    @Test
     public void shouldDefaultProgrammingModelFacets() {
         assertThat(metaModel.getProgrammingModelFacets(), is(notNullValue()));
     }
 
     @Test
-    public void shouldDefaultCollectionTypeRegistry() {
-        assertThat(metaModel.getCollectionTypeRegistry(), is(notNullValue()));
-    }
-
-    @Test
     public void shouldDefaultFacetDecorators() {
         assertThat(metaModel.getFacetDecorators(), is(notNullValue()));
     }

http://git-wip-us.apache.org/repos/asf/isis/blob/06929abc/core/metamodel/src/test/java/org/apache/isis/core/metamodel/app/IsisMetaModelTest_init.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/app/IsisMetaModelTest_init.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/app/IsisMetaModelTest_init.java
index fb7e0eb..2f8b97d 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/app/IsisMetaModelTest_init.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/app/IsisMetaModelTest_init.java
@@ -148,12 +148,6 @@ public class IsisMetaModelTest_init {
     }
 
     @Test(expected = IllegalStateException.class)
-    public void shouldNotBeAbleToChangeCollectionTypeRegistry() {
-        metaModel.init();
-        metaModel.setCollectionTypeRegistry(mockCollectionTypeRegistry);
-    }
-
-    @Test(expected = IllegalStateException.class)
     public void shouldNotBeAbleToChangeFacetDecorators() {
         metaModel.init();
         metaModel.setFacetDecorators(new TreeSet<FacetDecorator>());

http://git-wip-us.apache.org/repos/asf/isis/blob/06929abc/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorDefaultTestAbstract.java
----------------------------------------------------------------------
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorDefaultTestAbstract.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorDefaultTestAbstract.java
index a24afcf..2346a2e 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorDefaultTestAbstract.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/ObjectReflectorDefaultTestAbstract.java
@@ -40,7 +40,6 @@ import org.apache.isis.core.metamodel.runtimecontext.RuntimeContext;
 import org.apache.isis.core.metamodel.runtimecontext.noruntime.RuntimeContextNoRuntime;
 import org.apache.isis.core.metamodel.services.container.DomainObjectContainerDefault;
 import org.apache.isis.core.metamodel.spec.ObjectSpecification;
-import org.apache.isis.core.metamodel.specloader.traverser.SpecificationTraverser;
 import org.apache.isis.core.unittestsupport.jmocking.InjectIntoJMockAction;
 import org.apache.isis.core.unittestsupport.jmocking.JUnitRuleMockery2;
 import org.apache.isis.core.unittestsupport.jmocking.JUnitRuleMockery2.Mode;
@@ -76,7 +75,6 @@ public abstract class ObjectReflectorDefaultTestAbstract {
         final ObjectReflectorDefault reflector = 
                 new ObjectReflectorDefault(
                         mockConfiguration,
-                        new SpecificationTraverser(),
                         new ProgrammingModelFacetsJava5(),
                         new HashSet<FacetDecorator>(),
                         new MetaModelValidatorDefault());