You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2020/09/18 11:08:21 UTC

[isis] branch master updated (3b80737 -> a449131)

This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git.


    from 3b80737  ISIS-2435: Commons: writing about.adoc
     new 163f779  ISIS-2435: Commons: remove CDI plugin
     new 60afa22  ISIS-2435: Commons: move plugin specific exception class
     new a449131  ISIS-2435: Commons: remove any Spring components (move env. to config)

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../apache/isis/commons/IsisModuleCoreCommons.java |  32 ---
 .../isis/commons/internal/context/_Plugin.java     |  11 +-
 .../_PluginResolveException.java}                  |  10 +-
 .../commons/internal/ioc/cdi/BeanAdapterCDI.java   |  54 -----
 .../isis/commons/internal/ioc/cdi/CdiPlugin.java   |  52 -----
 .../apache/isis/commons/internal/ioc/cdi/_CDI.java | 243 ---------------------
 .../commons/internal/ioc/cdi/_CDI_Lifecycle.java   |  44 ----
 .../plugins/ioc/ConversationContextHandle.java     |  30 ---
 .../plugins/ioc/ConversationContextService.java    |  32 ---
 .../ioc/ConversationContextServiceDefault.java     |  38 ----
 .../apache/isis/commons/internal/cdi/CDITest.java  | 128 -----------
 .../internal/cdi/ValidQualifierForTesting.java     |  35 ---
 .../bytebuddy/IsisModuleCoreCodegenByteBuddy.java  |   4 -
 .../isis/core/config/IsisModuleCoreConfig.java     |   5 +-
 .../core/config}/environment/DeploymentType.java   |   2 +-
 .../config}/environment/IsisSystemEnvironment.java |   2 +-
 .../metamodel/specloader/IntrospectionMode.java    |   4 +-
 .../jmocking/JUnitRuleMockery2.java                |  24 +-
 .../_testing/MetaModelContext_forTesting.java      |   2 +-
 .../core/metamodel/context/MetaModelContext.java   |   2 +-
 .../context/MetaModelContext_usingIoc.java         |   2 +-
 .../core/metamodel/context/MetaModelContexts.java  |   2 +-
 .../PrototypeFacetForActionAnnotation.java         |   2 +-
 .../actions/prototype/PrototypeFacetAbstract.java  |   2 +-
 .../services/grid/GridLoaderServiceDefault.java    |   2 +-
 .../services/grid/GridSystemServiceAbstract.java   |   2 +-
 .../services/registry/ServiceRegistryDefault.java  |   2 +-
 .../specloader/SpecificationLoaderDefault.java     |   2 +-
 .../prototype/PrototypeFacetAbstractTest.java      |   4 +-
 .../confmenu/ConfigurationViewServiceDefault.java  |   2 +-
 .../factory/FactoryServiceDefault.java             |   2 +-
 .../i18n/po/TranslationServicePo.java              |   2 +-
 .../menubars/MenuBarsLoaderServiceDefault.java     |   2 +-
 .../menubars/bootstrap3/MenuBarsServiceBS3.java    |   2 +-
 .../javafx/ui/components/UiComponentFactoryFx.java |   2 +-
 .../bootstrapping/AutoConfigurationTest.java       |   2 +-
 .../SpringServiceProvisioningTest.java             |   2 +-
 .../DomainModelTest_usingBadDomain.java            |   2 +-
 ...nModelTest_usingBadDomain_noActionEnforced.java |   2 +-
 .../applib/services/FixturesLifecycleService.java  |   2 +-
 .../h2console/ui/webmodule/WebModuleH2Console.java |   2 +-
 .../applib/validate/DomainModelValidator.java      |   2 +-
 .../applib/core/jmocking/JUnitRuleMockery2.java    |   5 -
 .../rendering/util/JsonWriterUtil.java             |   2 +-
 .../wicket/viewer/webmodule/WebModuleWicket.java   |   2 +-
 .../viewer/wicketapp/IsisWicketApplication.java    |   2 +-
 46 files changed, 56 insertions(+), 755 deletions(-)
 delete mode 100644 commons/src/main/java/org/apache/isis/commons/IsisModuleCoreCommons.java
 rename commons/src/main/java/org/apache/isis/commons/internal/{plugins/PluginResolveException.java => context/_PluginResolveException.java} (76%)
 delete mode 100644 commons/src/main/java/org/apache/isis/commons/internal/ioc/cdi/BeanAdapterCDI.java
 delete mode 100644 commons/src/main/java/org/apache/isis/commons/internal/ioc/cdi/CdiPlugin.java
 delete mode 100644 commons/src/main/java/org/apache/isis/commons/internal/ioc/cdi/_CDI.java
 delete mode 100644 commons/src/main/java/org/apache/isis/commons/internal/ioc/cdi/_CDI_Lifecycle.java
 delete mode 100644 commons/src/main/java/org/apache/isis/commons/internal/plugins/ioc/ConversationContextHandle.java
 delete mode 100644 commons/src/main/java/org/apache/isis/commons/internal/plugins/ioc/ConversationContextService.java
 delete mode 100644 commons/src/main/java/org/apache/isis/commons/internal/plugins/ioc/ConversationContextServiceDefault.java
 delete mode 100644 commons/src/test/java/org/apache/isis/commons/internal/cdi/CDITest.java
 delete mode 100644 commons/src/test/java/org/apache/isis/commons/internal/cdi/ValidQualifierForTesting.java
 rename {commons/src/main/java/org/apache/isis/commons/internal => core/config/src/main/java/org/apache/isis/core/config}/environment/DeploymentType.java (95%)
 rename {commons/src/main/java/org/apache/isis/commons/internal => core/config/src/main/java/org/apache/isis/core/config}/environment/IsisSystemEnvironment.java (99%)


[isis] 02/03: ISIS-2435: Commons: move plugin specific exception class

Posted by ah...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 60afa22325a379d2f7744a815196a1ac30427137
Author: Andi Huber <ah...@apache.org>
AuthorDate: Fri Sep 18 12:10:21 2020 +0200

    ISIS-2435: Commons: move plugin specific exception class
---
 .../org/apache/isis/commons/internal/context/_Plugin.java     | 11 +++++------
 .../_PluginResolveException.java}                             | 10 +++++-----
 2 files changed, 10 insertions(+), 11 deletions(-)

diff --git a/commons/src/main/java/org/apache/isis/commons/internal/context/_Plugin.java b/commons/src/main/java/org/apache/isis/commons/internal/context/_Plugin.java
index b957d4f..33354b7 100644
--- a/commons/src/main/java/org/apache/isis/commons/internal/context/_Plugin.java
+++ b/commons/src/main/java/org/apache/isis/commons/internal/context/_Plugin.java
@@ -35,7 +35,6 @@ import org.apache.isis.commons.internal.base._Casts;
 import org.apache.isis.commons.internal.base._NullSafe;
 import org.apache.isis.commons.internal.base._With;
 import org.apache.isis.commons.internal.collections._Sets;
-import org.apache.isis.commons.internal.plugins.PluginResolveException;
 
 /**
  * <h1>- internal use only -</h1>
@@ -124,11 +123,11 @@ public final class _Plugin {
 
     // -- CONVENIENT EXCEPTION FACTORIES
 
-    public static <T> PluginResolveException ambiguityNonRecoverable(
+    public static <T> _PluginResolveException ambiguityNonRecoverable(
             Class<T> pluginInterfaceClass,
             Set<? extends T> ambiguousPlugins) {
 
-        return new PluginResolveException(
+        return new _PluginResolveException(
                 String.format("Ambiguous plugins implementing %s found on class path.\n{%s}",
                         pluginInterfaceClass.getName(),
 
@@ -140,9 +139,9 @@ public final class _Plugin {
                         ));
     }
 
-    public static PluginResolveException absenceNonRecoverable(Class<?> pluginInterfaceClass) {
+    public static _PluginResolveException absenceNonRecoverable(Class<?> pluginInterfaceClass) {
 
-        return new PluginResolveException(
+        return new _PluginResolveException(
                 String.format("No plugin implementing %s found on class path.",
                         pluginInterfaceClass.getName() ));
     }
@@ -174,7 +173,7 @@ public final class _Plugin {
             }
 
         } catch (Exception e) {
-            throw new PluginResolveException(
+            throw new _PluginResolveException(
                     String.format("Failed to load plugin '%s' implementing '%s' from path '%s'.",
                             pluginFullyQualifiedClassName,
                             pluginInterfaceClass.getName(),
diff --git a/commons/src/main/java/org/apache/isis/commons/internal/plugins/PluginResolveException.java b/commons/src/main/java/org/apache/isis/commons/internal/context/_PluginResolveException.java
similarity index 76%
rename from commons/src/main/java/org/apache/isis/commons/internal/plugins/PluginResolveException.java
rename to commons/src/main/java/org/apache/isis/commons/internal/context/_PluginResolveException.java
index 8363c03..f0b1cd6 100644
--- a/commons/src/main/java/org/apache/isis/commons/internal/plugins/PluginResolveException.java
+++ b/commons/src/main/java/org/apache/isis/commons/internal/context/_PluginResolveException.java
@@ -16,21 +16,21 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.commons.internal.plugins;
+package org.apache.isis.commons.internal.context;
 
-public class PluginResolveException extends RuntimeException {
+public class _PluginResolveException extends RuntimeException {
 
     private static final long serialVersionUID = 1L;
 
-    public PluginResolveException(final String msg) {
+    public _PluginResolveException(final String msg) {
         super(msg);
     }
 
-    public PluginResolveException(final Throwable cause) {
+    public _PluginResolveException(final Throwable cause) {
         super(cause);
     }
 
-    public PluginResolveException(final String msg, final Throwable cause) {
+    public _PluginResolveException(final String msg, final Throwable cause) {
         super(msg, cause);
     }
 


[isis] 03/03: ISIS-2435: Commons: remove any Spring components (move env. to config)

Posted by ah...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit a449131d5a83fb09e22d2091dbfc8282ba3ba389
Author: Andi Huber <ah...@apache.org>
AuthorDate: Fri Sep 18 13:06:46 2020 +0200

    ISIS-2435: Commons: remove any Spring components (move env. to config)
    
    also remove JUnit 'IsisEnvironment' hack in JUnitRuleMockery2
---
 .../apache/isis/commons/IsisModuleCoreCommons.java | 32 ----------------------
 .../bytebuddy/IsisModuleCoreCodegenByteBuddy.java  |  4 ---
 .../isis/core/config/IsisModuleCoreConfig.java     |  5 ++--
 .../core/config}/environment/DeploymentType.java   |  2 +-
 .../config}/environment/IsisSystemEnvironment.java |  2 +-
 .../metamodel/specloader/IntrospectionMode.java    |  4 +--
 .../jmocking/JUnitRuleMockery2.java                | 24 ++++++++--------
 .../_testing/MetaModelContext_forTesting.java      |  2 +-
 .../core/metamodel/context/MetaModelContext.java   |  2 +-
 .../context/MetaModelContext_usingIoc.java         |  2 +-
 .../core/metamodel/context/MetaModelContexts.java  |  2 +-
 .../PrototypeFacetForActionAnnotation.java         |  2 +-
 .../actions/prototype/PrototypeFacetAbstract.java  |  2 +-
 .../services/grid/GridLoaderServiceDefault.java    |  2 +-
 .../services/grid/GridSystemServiceAbstract.java   |  2 +-
 .../services/registry/ServiceRegistryDefault.java  |  2 +-
 .../specloader/SpecificationLoaderDefault.java     |  2 +-
 .../prototype/PrototypeFacetAbstractTest.java      |  4 +--
 .../confmenu/ConfigurationViewServiceDefault.java  |  2 +-
 .../factory/FactoryServiceDefault.java             |  2 +-
 .../i18n/po/TranslationServicePo.java              |  2 +-
 .../menubars/MenuBarsLoaderServiceDefault.java     |  2 +-
 .../menubars/bootstrap3/MenuBarsServiceBS3.java    |  2 +-
 .../javafx/ui/components/UiComponentFactoryFx.java |  2 +-
 .../bootstrapping/AutoConfigurationTest.java       |  2 +-
 .../SpringServiceProvisioningTest.java             |  2 +-
 .../DomainModelTest_usingBadDomain.java            |  2 +-
 ...nModelTest_usingBadDomain_noActionEnforced.java |  2 +-
 .../applib/services/FixturesLifecycleService.java  |  2 +-
 .../h2console/ui/webmodule/WebModuleH2Console.java |  2 +-
 .../applib/validate/DomainModelValidator.java      |  2 +-
 .../applib/core/jmocking/JUnitRuleMockery2.java    |  5 ----
 .../rendering/util/JsonWriterUtil.java             |  2 +-
 .../wicket/viewer/webmodule/WebModuleWicket.java   |  2 +-
 .../viewer/wicketapp/IsisWicketApplication.java    |  2 +-
 35 files changed, 46 insertions(+), 88 deletions(-)

diff --git a/commons/src/main/java/org/apache/isis/commons/IsisModuleCoreCommons.java b/commons/src/main/java/org/apache/isis/commons/IsisModuleCoreCommons.java
deleted file mode 100644
index aa4656c..0000000
--- a/commons/src/main/java/org/apache/isis/commons/IsisModuleCoreCommons.java
+++ /dev/null
@@ -1,32 +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.commons;
-
-import org.springframework.context.annotation.Configuration;
-import org.springframework.context.annotation.Import;
-
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
-
-@Configuration
-@Import({
-    // @Service's
-    IsisSystemEnvironment.class
-})
-public class IsisModuleCoreCommons {
-}
diff --git a/core/codegen-bytebuddy/src/main/java/org/apache/isis/core/codegen/bytebuddy/IsisModuleCoreCodegenByteBuddy.java b/core/codegen-bytebuddy/src/main/java/org/apache/isis/core/codegen/bytebuddy/IsisModuleCoreCodegenByteBuddy.java
index 773cb75..587b891 100644
--- a/core/codegen-bytebuddy/src/main/java/org/apache/isis/core/codegen/bytebuddy/IsisModuleCoreCodegenByteBuddy.java
+++ b/core/codegen-bytebuddy/src/main/java/org/apache/isis/core/codegen/bytebuddy/IsisModuleCoreCodegenByteBuddy.java
@@ -21,14 +21,10 @@ package org.apache.isis.core.codegen.bytebuddy;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.context.annotation.Import;
 
-import org.apache.isis.commons.IsisModuleCoreCommons;
 import org.apache.isis.core.codegen.bytebuddy.services.ProxyFactoryServiceByteBuddy;
 
 @Configuration
 @Import({
-        // modules
-        IsisModuleCoreCommons.class,
-        
         // services
         ProxyFactoryServiceByteBuddy.class
 })
diff --git a/core/config/src/main/java/org/apache/isis/core/config/IsisModuleCoreConfig.java b/core/config/src/main/java/org/apache/isis/core/config/IsisModuleCoreConfig.java
index 5a84f8e..3d31c9e 100644
--- a/core/config/src/main/java/org/apache/isis/core/config/IsisModuleCoreConfig.java
+++ b/core/config/src/main/java/org/apache/isis/core/config/IsisModuleCoreConfig.java
@@ -27,16 +27,14 @@ import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.context.annotation.Import;
 
-import org.apache.isis.commons.IsisModuleCoreCommons;
 import org.apache.isis.core.config.beans.IsisBeanFactoryPostProcessorForSpring;
 import org.apache.isis.core.config.converters.PatternsConverter;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.core.config.validators.PatternOptionalStringConstraintValidator;
 import org.apache.isis.core.config.viewer.wicket.WebAppContextPath;
 
 @Configuration
 @Import({
-    // modules
-    IsisModuleCoreCommons.class,
 
     // @Component's
     PatternsConverter.class,
@@ -44,6 +42,7 @@ import org.apache.isis.core.config.viewer.wicket.WebAppContextPath;
     PatternOptionalStringConstraintValidator.class,
 
     // @Service's
+    IsisSystemEnvironment.class,
     WebAppContextPath.class,
 })
 @EnableConfigurationProperties({
diff --git a/commons/src/main/java/org/apache/isis/commons/internal/environment/DeploymentType.java b/core/config/src/main/java/org/apache/isis/core/config/environment/DeploymentType.java
similarity index 95%
rename from commons/src/main/java/org/apache/isis/commons/internal/environment/DeploymentType.java
rename to core/config/src/main/java/org/apache/isis/core/config/environment/DeploymentType.java
index f65bc85..4af5b11 100644
--- a/commons/src/main/java/org/apache/isis/commons/internal/environment/DeploymentType.java
+++ b/core/config/src/main/java/org/apache/isis/core/config/environment/DeploymentType.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.commons.internal.environment;
+package org.apache.isis.core.config.environment;
 
 /**
  * 
diff --git a/commons/src/main/java/org/apache/isis/commons/internal/environment/IsisSystemEnvironment.java b/core/config/src/main/java/org/apache/isis/core/config/environment/IsisSystemEnvironment.java
similarity index 99%
rename from commons/src/main/java/org/apache/isis/commons/internal/environment/IsisSystemEnvironment.java
rename to core/config/src/main/java/org/apache/isis/core/config/environment/IsisSystemEnvironment.java
index 449d9a8..22bdd3d 100644
--- a/commons/src/main/java/org/apache/isis/commons/internal/environment/IsisSystemEnvironment.java
+++ b/core/config/src/main/java/org/apache/isis/core/config/environment/IsisSystemEnvironment.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.commons.internal.environment;
+package org.apache.isis.core.config.environment;
 
 import javax.annotation.PostConstruct;
 import javax.annotation.PreDestroy;
diff --git a/core/config/src/main/java/org/apache/isis/core/config/metamodel/specloader/IntrospectionMode.java b/core/config/src/main/java/org/apache/isis/core/config/metamodel/specloader/IntrospectionMode.java
index f80bf8e..12c29cb 100644
--- a/core/config/src/main/java/org/apache/isis/core/config/metamodel/specloader/IntrospectionMode.java
+++ b/core/config/src/main/java/org/apache/isis/core/config/metamodel/specloader/IntrospectionMode.java
@@ -18,9 +18,9 @@
  */
 package org.apache.isis.core.config.metamodel.specloader;
 
-import org.apache.isis.commons.internal.environment.DeploymentType;
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
 import org.apache.isis.core.config.IsisConfiguration;
+import org.apache.isis.core.config.environment.DeploymentType;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 
 import lombok.val;
 
diff --git a/core/internaltestsupport/src/main/java/org/apache/isis/core/internaltestsupport/jmocking/JUnitRuleMockery2.java b/core/internaltestsupport/src/main/java/org/apache/isis/core/internaltestsupport/jmocking/JUnitRuleMockery2.java
index 5b56bf7..913622d 100644
--- a/core/internaltestsupport/src/main/java/org/apache/isis/core/internaltestsupport/jmocking/JUnitRuleMockery2.java
+++ b/core/internaltestsupport/src/main/java/org/apache/isis/core/internaltestsupport/jmocking/JUnitRuleMockery2.java
@@ -18,15 +18,6 @@
  */
 package org.apache.isis.core.internaltestsupport.jmocking;
 
-import static java.lang.annotation.ElementType.FIELD;
-import static java.lang.annotation.RetentionPolicy.RUNTIME;
-import static org.junit.Assert.fail;
-
-import org.apache.isis.commons.internal.base._Casts;
-import org.apache.isis.commons.internal.context._Context;
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
-import org.apache.isis.commons.internal.reflection._Reflect;
-
 import java.lang.annotation.Retention;
 import java.lang.annotation.Target;
 import java.lang.reflect.Constructor;
@@ -34,6 +25,9 @@ import java.lang.reflect.Field;
 import java.util.List;
 import java.util.function.Consumer;
 
+import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
 import org.jmock.Expectations;
 import org.jmock.auto.Mock;
 import org.jmock.integration.junit4.JUnit4Mockery;
@@ -45,9 +39,15 @@ import org.junit.runners.model.Statement;
 import org.picocontainer.MutablePicoContainer;
 import org.picocontainer.PicoBuilder;
 
-import junit.framework.AssertionFailedError;
+import static org.junit.Assert.fail;
+
+import org.apache.isis.commons.internal.base._Casts;
+import org.apache.isis.commons.internal.reflection._Reflect;
+
 import lombok.RequiredArgsConstructor;
 
+import junit.framework.AssertionFailedError;
+
 
 /**
  * Use as a <tt>@Rule</tt>, meaning that the <tt>@RunWith(JMock.class)</tt> can
@@ -78,8 +78,8 @@ public class JUnitRuleMockery2 extends JUnit4Mockery implements MethodRule {
      */
     public static JUnitRuleMockery2 createFor(final Mode mode) {
         
-        _Context.computeIfAbsent(IsisSystemEnvironment.class, IsisSystemEnvironment::new)
-        .setUnitTesting(true);
+//        _Context.computeIfAbsent(IsisSystemEnvironment.class, IsisSystemEnvironment::new)
+//        .setUnitTesting(true);
         
         final JUnitRuleMockery2 jUnitRuleMockery2 = new JUnitRuleMockery2();
         if (mode == Mode.INTERFACES_AND_CLASSES) {
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/_testing/MetaModelContext_forTesting.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/_testing/MetaModelContext_forTesting.java
index 03e1f4a..725abff 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/_testing/MetaModelContext_forTesting.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/_testing/MetaModelContext_forTesting.java
@@ -38,10 +38,10 @@ import org.apache.isis.applib.services.xactn.TransactionState;
 import org.apache.isis.commons.internal.base._NullSafe;
 import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.commons.internal.collections._Maps;
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
 import org.apache.isis.core.config.IsisConfiguration;
 import org.apache.isis.core.config.beans.IsisBeanTypeRegistry;
 import org.apache.isis.core.config.beans.IsisBeanTypeRegistryHolder;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.core.metamodel.context.MetaModelContext;
 import org.apache.isis.core.metamodel.objectmanager.ObjectManager;
 import org.apache.isis.core.metamodel.objectmanager.ObjectManagerDefault;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/context/MetaModelContext.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/context/MetaModelContext.java
index 3f9a1fd..80e3bbc 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/context/MetaModelContext.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/context/MetaModelContext.java
@@ -28,8 +28,8 @@ import org.apache.isis.applib.services.repository.RepositoryService;
 import org.apache.isis.applib.services.title.TitleService;
 import org.apache.isis.applib.services.xactn.TransactionService;
 import org.apache.isis.applib.services.xactn.TransactionState;
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
 import org.apache.isis.core.config.IsisConfiguration;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.core.metamodel.objectmanager.ObjectManager;
 import org.apache.isis.core.metamodel.spec.ManagedObject;
 import org.apache.isis.core.metamodel.spec.ObjectSpecification;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/context/MetaModelContext_usingIoc.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/context/MetaModelContext_usingIoc.java
index b67cf6f..3c2f8e9 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/context/MetaModelContext_usingIoc.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/context/MetaModelContext_usingIoc.java
@@ -33,7 +33,7 @@ import org.apache.isis.applib.services.title.TitleService;
 import org.apache.isis.applib.services.xactn.TransactionService;
 import org.apache.isis.applib.services.xactn.TransactionState;
 import org.apache.isis.commons.internal.base._Lazy;
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.commons.internal.exceptions._Exceptions;
 import org.apache.isis.commons.internal.ioc.IocContainer;
 import org.apache.isis.commons.internal.ioc.ManagedBeanAdapter;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/context/MetaModelContexts.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/context/MetaModelContexts.java
index 46c97b4..af8b50d 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/context/MetaModelContexts.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/context/MetaModelContexts.java
@@ -25,7 +25,7 @@ import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.context.annotation.Primary;
 
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 
 /**
  * 
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/prototype/PrototypeFacetForActionAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/prototype/PrototypeFacetForActionAnnotation.java
index 5982755..75c5810 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/prototype/PrototypeFacetForActionAnnotation.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/prototype/PrototypeFacetForActionAnnotation.java
@@ -24,7 +24,7 @@ import java.util.function.Supplier;
 
 import org.apache.isis.applib.annotation.Action;
 import org.apache.isis.applib.annotation.RestrictTo;
-import org.apache.isis.commons.internal.environment.DeploymentType;
+import org.apache.isis.core.config.environment.DeploymentType;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.actions.prototype.PrototypeFacet;
 import org.apache.isis.core.metamodel.facets.actions.prototype.PrototypeFacetAbstract;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/prototype/PrototypeFacetAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/prototype/PrototypeFacetAbstract.java
index eaa4040..2734dfe 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/prototype/PrototypeFacetAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/prototype/PrototypeFacetAbstract.java
@@ -21,7 +21,7 @@ package org.apache.isis.core.metamodel.facets.actions.prototype;
 
 import java.util.Map;
 
-import org.apache.isis.commons.internal.environment.DeploymentType;
+import org.apache.isis.core.config.environment.DeploymentType;
 import org.apache.isis.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facetapi.FacetAbstract;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/GridLoaderServiceDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/GridLoaderServiceDefault.java
index 5a92eda..75de6cb 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/GridLoaderServiceDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/GridLoaderServiceDefault.java
@@ -38,7 +38,7 @@ import org.apache.isis.applib.services.grid.GridLoaderService;
 import org.apache.isis.applib.services.message.MessageService;
 import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.commons.internal.collections._Maps;
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.commons.internal.resources._Resources;
 
 import lombok.Value;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/GridSystemServiceAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/GridSystemServiceAbstract.java
index 9a20fd6..89a6ff8 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/GridSystemServiceAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/grid/GridSystemServiceAbstract.java
@@ -40,7 +40,7 @@ import org.apache.isis.applib.services.jaxb.JaxbService;
 import org.apache.isis.applib.services.message.MessageService;
 import org.apache.isis.commons.internal.base._Casts;
 import org.apache.isis.commons.internal.collections._Sets;
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
 import org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionXml;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/registry/ServiceRegistryDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/registry/ServiceRegistryDefault.java
index 4155505..afafb57 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/registry/ServiceRegistryDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/registry/ServiceRegistryDefault.java
@@ -38,7 +38,7 @@ import org.apache.isis.commons.collections.Can;
 import org.apache.isis.commons.internal.base._Lazy;
 import org.apache.isis.commons.internal.base._NullSafe;
 import org.apache.isis.commons.internal.collections._Maps;
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.commons.internal.ioc.ManagedBeanAdapter;
 import org.apache.isis.commons.internal.ioc.spring._Spring;
 import org.apache.isis.core.config.beans.IsisBeanTypeRegistryHolder;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/SpecificationLoaderDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/SpecificationLoaderDefault.java
index 0a7e414..65df984 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/SpecificationLoaderDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/SpecificationLoaderDefault.java
@@ -46,11 +46,11 @@ import org.apache.isis.commons.internal.base._Blackhole;
 import org.apache.isis.commons.internal.base._Lazy;
 import org.apache.isis.commons.internal.base._Timing;
 import org.apache.isis.commons.internal.collections._Lists;
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
 import org.apache.isis.commons.internal.exceptions._Exceptions;
 import org.apache.isis.core.config.IsisConfiguration;
 import org.apache.isis.core.config.beans.IsisBeanTypeRegistry;
 import org.apache.isis.core.config.beans.IsisBeanTypeRegistryHolder;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.core.config.metamodel.specloader.IntrospectionMode;
 import org.apache.isis.core.metamodel.context.MetaModelContext;
 import org.apache.isis.core.metamodel.facetapi.Facet;
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/actions/prototype/PrototypeFacetAbstractTest.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/actions/prototype/PrototypeFacetAbstractTest.java
index 095a265..c5dc269 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/actions/prototype/PrototypeFacetAbstractTest.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/actions/prototype/PrototypeFacetAbstractTest.java
@@ -24,10 +24,10 @@ import org.junit.Test;
 
 import static org.junit.Assert.assertEquals;
 
+import org.apache.isis.core.config.environment.DeploymentType;
+import org.apache.isis.core.internaltestsupport.jmocking.JUnitRuleMockery2;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.interactions.VisibilityContext;
-import org.apache.isis.commons.internal.environment.DeploymentType;
-import org.apache.isis.core.internaltestsupport.jmocking.JUnitRuleMockery2;
 
 public class PrototypeFacetAbstractTest {
 
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/confmenu/ConfigurationViewServiceDefault.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/confmenu/ConfigurationViewServiceDefault.java
index 07f660a..f3a33c0 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/confmenu/ConfigurationViewServiceDefault.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/confmenu/ConfigurationViewServiceDefault.java
@@ -39,7 +39,7 @@ import org.apache.isis.applib.services.confview.ConfigurationViewService;
 import org.apache.isis.commons.internal.base._Lazy;
 import org.apache.isis.commons.internal.base._Strings;
 import org.apache.isis.commons.internal.collections._Maps;
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.core.config.IsisConfiguration;
 import org.apache.isis.core.config.RestEasyConfiguration;
 import org.apache.isis.core.config.util.ValueMaskingUtil;
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/factory/FactoryServiceDefault.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/factory/FactoryServiceDefault.java
index e493bab..dfe55c5 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/factory/FactoryServiceDefault.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/factory/FactoryServiceDefault.java
@@ -33,7 +33,7 @@ import org.apache.isis.applib.annotation.OrderPrecedence;
 import org.apache.isis.applib.services.factory.FactoryService;
 import org.apache.isis.applib.services.inject.ServiceInjector;
 import org.apache.isis.commons.internal.base._Casts;
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.commons.internal.exceptions._Exceptions;
 import org.apache.isis.commons.internal.reflection._Reflect;
 import org.apache.isis.core.metamodel.facets.object.mixin.MixinFacet;
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/i18n/po/TranslationServicePo.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/i18n/po/TranslationServicePo.java
index 7aba3f3..cc8d074 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/i18n/po/TranslationServicePo.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/i18n/po/TranslationServicePo.java
@@ -37,7 +37,7 @@ import org.apache.isis.applib.services.i18n.TranslationsResolver;
 import org.apache.isis.applib.services.registry.ServiceRegistry;
 import org.apache.isis.commons.collections.Can;
 import org.apache.isis.commons.internal.base._Lazy;
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.core.config.IsisConfiguration;
 
 import lombok.val;
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/menubars/MenuBarsLoaderServiceDefault.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/menubars/MenuBarsLoaderServiceDefault.java
index eeb89f2..c04eb10 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/menubars/MenuBarsLoaderServiceDefault.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/menubars/MenuBarsLoaderServiceDefault.java
@@ -35,7 +35,7 @@ import org.apache.isis.applib.layout.menubars.bootstrap3.BS3MenuBars;
 import org.apache.isis.applib.services.jaxb.JaxbService;
 import org.apache.isis.applib.services.menu.MenuBarsLoaderService;
 import org.apache.isis.commons.internal.base._Strings;
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.core.config.IsisConfiguration;
 import org.apache.isis.core.config.viewer.wicket.WebAppContextPath;
 
diff --git a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/menubars/bootstrap3/MenuBarsServiceBS3.java b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/menubars/bootstrap3/MenuBarsServiceBS3.java
index fac297f..2048825 100644
--- a/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/menubars/bootstrap3/MenuBarsServiceBS3.java
+++ b/core/runtimeservices/src/main/java/org/apache/isis/core/runtimeservices/menubars/bootstrap3/MenuBarsServiceBS3.java
@@ -51,7 +51,7 @@ import org.apache.isis.commons.internal.base._Strings;
 import org.apache.isis.commons.internal.collections._Lists;
 import org.apache.isis.commons.internal.collections._Maps;
 import org.apache.isis.commons.internal.collections._Sets;
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.core.metamodel.context.MetaModelContext;
 import org.apache.isis.core.metamodel.facets.actions.notinservicemenu.NotInServiceMenuFacet;
 import org.apache.isis.core.metamodel.facets.all.named.NamedFacet;
diff --git a/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/UiComponentFactoryFx.java b/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/UiComponentFactoryFx.java
index 402cf2e..31a928f 100644
--- a/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/UiComponentFactoryFx.java
+++ b/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/UiComponentFactoryFx.java
@@ -27,7 +27,7 @@ import org.springframework.stereotype.Service;
 
 import org.apache.isis.applib.annotation.LabelPosition;
 import org.apache.isis.commons.handler.ChainOfResponsibility;
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.commons.internal.exceptions._Exceptions;
 import org.apache.isis.core.metamodel.facets.objectvalue.labelat.LabelAtFacet;
 import org.apache.isis.core.metamodel.interactions.managed.ManagedMember;
diff --git a/regressiontests/stable/src/test/java/org/apache/isis/testdomain/bootstrapping/AutoConfigurationTest.java b/regressiontests/stable/src/test/java/org/apache/isis/testdomain/bootstrapping/AutoConfigurationTest.java
index 3a76b33..eee6dad 100644
--- a/regressiontests/stable/src/test/java/org/apache/isis/testdomain/bootstrapping/AutoConfigurationTest.java
+++ b/regressiontests/stable/src/test/java/org/apache/isis/testdomain/bootstrapping/AutoConfigurationTest.java
@@ -33,7 +33,7 @@ import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
 import static org.junit.jupiter.api.Assertions.assertThrows;
 
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.core.config.beans.IsisBeanFactoryPostProcessorForSpring;
 import org.apache.isis.core.config.beans.IsisBeanTypeRegistryHolder;
 import org.apache.isis.core.config.presets.IsisPresets;
diff --git a/regressiontests/stable/src/test/java/org/apache/isis/testdomain/bootstrapping/SpringServiceProvisioningTest.java b/regressiontests/stable/src/test/java/org/apache/isis/testdomain/bootstrapping/SpringServiceProvisioningTest.java
index 34a47f6..5b6da011 100644
--- a/regressiontests/stable/src/test/java/org/apache/isis/testdomain/bootstrapping/SpringServiceProvisioningTest.java
+++ b/regressiontests/stable/src/test/java/org/apache/isis/testdomain/bootstrapping/SpringServiceProvisioningTest.java
@@ -36,7 +36,7 @@ import static org.junit.jupiter.api.Assertions.assertFalse;
 
 import org.apache.isis.applib.services.registry.ServiceRegistry;
 import org.apache.isis.commons.internal.base._Strings;
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.commons.internal.ioc.ManagedBeanAdapter;
 import org.apache.isis.commons.internal.resources._Resources;
 import org.apache.isis.core.config.presets.IsisPresets;
diff --git a/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingBadDomain.java b/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingBadDomain.java
index 68fdac4..c9ae861 100644
--- a/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingBadDomain.java
+++ b/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingBadDomain.java
@@ -29,7 +29,7 @@ import org.springframework.test.context.TestPropertySource;
 import static org.junit.jupiter.api.Assertions.assertThrows;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.core.config.IsisConfiguration;
 import org.apache.isis.core.config.metamodel.specloader.IntrospectionMode;
 import org.apache.isis.core.config.presets.IsisPresets;
diff --git a/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingBadDomain_noActionEnforced.java b/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingBadDomain_noActionEnforced.java
index 2efecb4..6f49af0 100644
--- a/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingBadDomain_noActionEnforced.java
+++ b/regressiontests/stable/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingBadDomain_noActionEnforced.java
@@ -28,7 +28,7 @@ import static org.junit.jupiter.api.Assertions.assertFalse;
 import static org.junit.jupiter.api.Assertions.assertThrows;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.core.config.IsisConfiguration;
 import org.apache.isis.core.config.metamodel.specloader.IntrospectionMode;
 import org.apache.isis.core.config.presets.IsisPresets;
diff --git a/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/services/FixturesLifecycleService.java b/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/services/FixturesLifecycleService.java
index 7369f2c..fa11f0f 100644
--- a/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/services/FixturesLifecycleService.java
+++ b/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/services/FixturesLifecycleService.java
@@ -32,7 +32,7 @@ import org.springframework.stereotype.Service;
 import org.apache.isis.applib.annotation.OrderPrecedence;
 import org.apache.isis.applib.clock.Clock;
 import org.apache.isis.applib.services.inject.ServiceInjector;
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.commons.internal.exceptions._Exceptions;
 import org.apache.isis.core.config.IsisConfiguration;
 import org.apache.isis.core.runtime.events.app.AppLifecycleEvent;
diff --git a/testing/h2console/ui/src/main/java/org/apache/isis/testing/h2console/ui/webmodule/WebModuleH2Console.java b/testing/h2console/ui/src/main/java/org/apache/isis/testing/h2console/ui/webmodule/WebModuleH2Console.java
index 848820a..6b5e1ab 100644
--- a/testing/h2console/ui/src/main/java/org/apache/isis/testing/h2console/ui/webmodule/WebModuleH2Console.java
+++ b/testing/h2console/ui/src/main/java/org/apache/isis/testing/h2console/ui/webmodule/WebModuleH2Console.java
@@ -34,7 +34,7 @@ import org.apache.isis.applib.services.inject.ServiceInjector;
 import org.apache.isis.applib.value.LocalResourcePath;
 import org.apache.isis.commons.collections.Can;
 import org.apache.isis.commons.internal.base._Strings;
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.core.config.IsisConfiguration;
 import org.apache.isis.core.webapp.modules.WebModuleAbstract;
 import org.apache.isis.core.webapp.modules.WebModuleContext;
diff --git a/testing/integtestsupport/applib/src/main/java/org/apache/isis/testing/integtestsupport/applib/validate/DomainModelValidator.java b/testing/integtestsupport/applib/src/main/java/org/apache/isis/testing/integtestsupport/applib/validate/DomainModelValidator.java
index 99a9af7..049b068 100644
--- a/testing/integtestsupport/applib/src/main/java/org/apache/isis/testing/integtestsupport/applib/validate/DomainModelValidator.java
+++ b/testing/integtestsupport/applib/src/main/java/org/apache/isis/testing/integtestsupport/applib/validate/DomainModelValidator.java
@@ -33,7 +33,7 @@ import org.junit.jupiter.api.Assertions;
 import org.apache.isis.applib.Identifier;
 import org.apache.isis.applib.services.inject.ServiceInjector;
 import org.apache.isis.applib.services.registry.ServiceRegistry;
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.core.config.IsisConfiguration;
 import org.apache.isis.core.config.metamodel.specloader.IntrospectionMode;
 import org.apache.isis.core.metamodel.spec.DomainModelException;
diff --git a/testing/unittestsupport/applib/src/main/java/org/apache/isis/testing/unittestsupport/applib/core/jmocking/JUnitRuleMockery2.java b/testing/unittestsupport/applib/src/main/java/org/apache/isis/testing/unittestsupport/applib/core/jmocking/JUnitRuleMockery2.java
index 7c48fd4..abdda20 100644
--- a/testing/unittestsupport/applib/src/main/java/org/apache/isis/testing/unittestsupport/applib/core/jmocking/JUnitRuleMockery2.java
+++ b/testing/unittestsupport/applib/src/main/java/org/apache/isis/testing/unittestsupport/applib/core/jmocking/JUnitRuleMockery2.java
@@ -42,8 +42,6 @@ import org.picocontainer.PicoBuilder;
 import static org.junit.Assert.fail;
 
 import org.apache.isis.commons.internal.base._Casts;
-import org.apache.isis.commons.internal.context._Context;
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
 import org.apache.isis.commons.internal.reflection._Reflect;
 
 import lombok.RequiredArgsConstructor;
@@ -80,9 +78,6 @@ public class JUnitRuleMockery2 extends JUnit4Mockery implements MethodRule {
      */
     public static JUnitRuleMockery2 createFor(final Mode mode) {
         
-        _Context.computeIfAbsent(IsisSystemEnvironment.class, IsisSystemEnvironment::new)
-        .setUnitTesting(true);
-        
         final JUnitRuleMockery2 jUnitRuleMockery2 = new JUnitRuleMockery2();
         if (mode == Mode.INTERFACES_AND_CLASSES) {
             jUnitRuleMockery2.setImposteriser(Imposterisers.getDefault());
diff --git a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/util/JsonWriterUtil.java b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/util/JsonWriterUtil.java
index 31ce70d..276cedf 100644
--- a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/util/JsonWriterUtil.java
+++ b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/util/JsonWriterUtil.java
@@ -22,7 +22,7 @@ import java.io.IOException;
 
 import javax.annotation.Nullable;
 
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.viewer.restfulobjects.applib.util.JsonMapper;
 
 import lombok.val;
diff --git a/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/webmodule/WebModuleWicket.java b/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/webmodule/WebModuleWicket.java
index b1d15bf..d0b2dde 100644
--- a/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/webmodule/WebModuleWicket.java
+++ b/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/webmodule/WebModuleWicket.java
@@ -34,7 +34,7 @@ import org.springframework.stereotype.Service;
 import org.apache.isis.applib.annotation.OrderPrecedence;
 import org.apache.isis.applib.services.inject.ServiceInjector;
 import org.apache.isis.commons.collections.Can;
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.core.config.IsisConfiguration;
 import org.apache.isis.core.webapp.modules.WebModuleAbstract;
 import org.apache.isis.core.webapp.modules.WebModuleContext;
diff --git a/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/wicketapp/IsisWicketApplication.java b/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/wicketapp/IsisWicketApplication.java
index 5d546a3..bde7f5a 100644
--- a/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/wicketapp/IsisWicketApplication.java
+++ b/viewers/wicket/viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/wicketapp/IsisWicketApplication.java
@@ -66,7 +66,7 @@ import org.wicketstuff.select2.ApplicationSettings;
 
 import org.apache.isis.commons.internal.concurrent._ConcurrentContext;
 import org.apache.isis.commons.internal.concurrent._ConcurrentTaskList;
-import org.apache.isis.commons.internal.environment.IsisSystemEnvironment;
+import org.apache.isis.core.config.environment.IsisSystemEnvironment;
 import org.apache.isis.core.config.IsisConfiguration;
 import org.apache.isis.core.metamodel.context.MetaModelContext;
 import org.apache.isis.core.metamodel.spec.ManagedObject;


[isis] 01/03: ISIS-2435: Commons: remove CDI plugin

Posted by ah...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 163f779cdb3a92f0ea0979dcf400c193fed00fad
Author: Andi Huber <ah...@apache.org>
AuthorDate: Fri Sep 18 12:03:24 2020 +0200

    ISIS-2435: Commons: remove CDI plugin
---
 .../commons/internal/ioc/cdi/BeanAdapterCDI.java   |  54 -----
 .../isis/commons/internal/ioc/cdi/CdiPlugin.java   |  52 -----
 .../apache/isis/commons/internal/ioc/cdi/_CDI.java | 243 ---------------------
 .../commons/internal/ioc/cdi/_CDI_Lifecycle.java   |  44 ----
 .../plugins/ioc/ConversationContextHandle.java     |  30 ---
 .../plugins/ioc/ConversationContextService.java    |  32 ---
 .../ioc/ConversationContextServiceDefault.java     |  38 ----
 .../apache/isis/commons/internal/cdi/CDITest.java  | 128 -----------
 .../internal/cdi/ValidQualifierForTesting.java     |  35 ---
 9 files changed, 656 deletions(-)

diff --git a/commons/src/main/java/org/apache/isis/commons/internal/ioc/cdi/BeanAdapterCDI.java b/commons/src/main/java/org/apache/isis/commons/internal/ioc/cdi/BeanAdapterCDI.java
deleted file mode 100644
index dd6e5de..0000000
--- a/commons/src/main/java/org/apache/isis/commons/internal/ioc/cdi/BeanAdapterCDI.java
+++ /dev/null
@@ -1,54 +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.commons.internal.ioc.cdi;
-
-import javax.enterprise.inject.spi.Bean;
-
-import org.apache.isis.commons.collections.Can;
-import org.apache.isis.commons.internal.ioc.ManagedBeanAdapter;
-
-import lombok.Value;
-import lombok.val;
-
-@Value(staticConstructor="of")
-final class BeanAdapterCDI implements ManagedBeanAdapter {
-
-    private final String id;
-    private final Bean<?> bean;
-
-    @Override
-    public Can<?> getInstance() {
-        val type = bean.getBeanClass();
-        return _CDI.select(type, bean.getQualifiers());
-    }
-
-    @Override
-    public boolean isCandidateFor(Class<?> requiredType) {
-        return bean.getTypes().stream()
-                .filter(type -> type instanceof Class)
-                .map(type->(Class<?>)type)
-                .anyMatch(type->requiredType.isAssignableFrom(type));
-    }
-
-    @Override
-    public Class<?> getBeanClass() {
-        return bean.getBeanClass(); //TODO[2033] does not work for 'produced' beans
-    }
-
-}
diff --git a/commons/src/main/java/org/apache/isis/commons/internal/ioc/cdi/CdiPlugin.java b/commons/src/main/java/org/apache/isis/commons/internal/ioc/cdi/CdiPlugin.java
deleted file mode 100644
index 815e92f..0000000
--- a/commons/src/main/java/org/apache/isis/commons/internal/ioc/cdi/CdiPlugin.java
+++ /dev/null
@@ -1,52 +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.commons.internal.ioc.cdi;
-
-import java.util.stream.Stream;
-
-import javax.enterprise.inject.spi.CDIProvider;
-
-import org.apache.isis.commons.internal.context._Plugin;
-
-/**
- * No longer used since 2.0.
- *  
- * @since 2.0
- */
-interface CdiPlugin {
-
-    // -- INTERFACE
-
-    public CDIProvider getCDIProvider(Stream<Class<?>> discover);
-
-    // -- LOOKUP
-
-    public static CdiPlugin get() {
-
-        return _Plugin.getOrElse(CdiPlugin.class,
-                ambiguousPlugins->{
-                    return _Plugin.pickAnyAndWarn(CdiPlugin.class, ambiguousPlugins);
-                },
-                ()->{
-                    throw _Plugin.absenceNonRecoverable(CdiPlugin.class);
-                });
-    }
-
-
-}
diff --git a/commons/src/main/java/org/apache/isis/commons/internal/ioc/cdi/_CDI.java b/commons/src/main/java/org/apache/isis/commons/internal/ioc/cdi/_CDI.java
deleted file mode 100644
index bec3ac4..0000000
--- a/commons/src/main/java/org/apache/isis/commons/internal/ioc/cdi/_CDI.java
+++ /dev/null
@@ -1,243 +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.commons.internal.ioc.cdi;
-
-import java.lang.annotation.Annotation;
-import java.util.Collection;
-import java.util.List;
-import java.util.NoSuchElementException;
-import java.util.Optional;
-import java.util.Set;
-import java.util.function.Function;
-import java.util.function.Supplier;
-import java.util.stream.Collectors;
-import java.util.stream.Stream;
-
-import javax.annotation.Nullable;
-import javax.enterprise.inject.Any;
-import javax.enterprise.inject.spi.Bean;
-import javax.enterprise.inject.spi.BeanManager;
-import javax.enterprise.inject.spi.CDI;
-import javax.enterprise.inject.spi.CDIProvider;
-import javax.enterprise.util.AnnotationLiteral;
-import javax.inject.Qualifier;
-
-import org.apache.isis.commons.collections.Can;
-import org.apache.isis.commons.internal.base._NullSafe;
-import org.apache.isis.commons.internal.base._With;
-import org.apache.isis.commons.internal.context._Context;
-import org.apache.isis.commons.internal.exceptions._Exceptions;
-import org.apache.isis.commons.internal.functions._Functions.CheckedRunnable;
-import org.apache.isis.commons.internal.ioc.ManagedBeanAdapter;
-
-import static org.apache.isis.commons.internal.base._NullSafe.isEmpty;
-import static org.apache.isis.commons.internal.base._NullSafe.stream;
-
-import lombok.val;
-
-/**
- * <h1>- internal use only -</h1>
- * <p>
- * Framework internal CDI support.
- * <p>
- * <b>WARNING</b>: Do <b>NOT</b> use any of the classes provided by this package! <br/>
- * These may be changed or removed without notice!
- *
- * @since 2.0
- */
-public final class _CDI {
-
-    /**
-     * Bootstrap CDI if not already present.
-     * @param onDiscover - Packages of the specified (stream of) classes will be scanned and found classes 
-     * will be added to the set of bean classes for the synthetic bean archive. 
-     */
-    public static void init(Supplier<Stream<Class<?>>> onDiscover) {
-
-        if(cdi().isPresent()) {
-            return;
-        }
-
-        _With.requires(onDiscover, "onDiscover");
-
-        // plug in the provider
-        final CDIProvider standaloneCDIProvider = CdiPlugin.get().getCDIProvider(onDiscover.get());
-        CDI.setCDIProvider(standaloneCDIProvider);
-
-        // verify
-        if(!cdi().isPresent()) {
-            throw _Exceptions.unrecoverable("Could not resolve an instance of CDI.");
-        }
-
-        // proper CDI lifecycle support utilizing the fact that WELD provides a WeldContainer that 
-        // implements AutoCloseable, which we can put on the _Context, such that when _Context.clear()
-        // is called, gets properly closed
-        final CheckedRunnable onClose = () -> ((AutoCloseable)CDI.current()).close();
-        _Context.putSingleton(_CDI_Lifecycle.class, _CDI_Lifecycle.of(onClose));
-
-    }
-
-    /**
-     * Get the CDI BeanManager for the current context.
-     * @return non-null
-     * @throws RuntimeException - if no BeanManager could be resolved
-     */
-    public static BeanManager getBeanManager() {
-        return cdi().map(CDI::getBeanManager)
-                .orElseThrow(()->_Exceptions.unrecoverable("Could not resolve a BeanManager."));
-    }
-
-    /**
-     * Obtains a child Instance for the given required type and additional required qualifiers. 
-     * @param subType
-     * @param qualifiers
-     * @return non-null {@code Bin}
-     */
-    public static <T> Can<T> select(final Class<T> subType, Collection<Annotation> qualifiers) {
-        if(_NullSafe.isEmpty(qualifiers)) {
-            return select(subType);
-        }
-
-        final Annotation[] _qualifiers = qualifiers.toArray(new Annotation[] {});
-
-        return cdi()
-                .map(cdi->tryGet(()->cdi.select(subType, _qualifiers)))
-                .map(instance->Can.ofInstance(instance))
-                .orElse(Can.empty());
-    }
-
-    /**
-     * Obtains a child Instance for the given required type and additional required qualifiers. 
-     * @param subType
-     * @return non-null {@code Bin}
-     */
-    public static <T> Can<T> select(final Class<T> subType) {
-        return cdi()
-                .map(cdi->tryGet(()->cdi.select(subType)))
-                .map(instance->Can.ofInstance(instance))
-                .orElse(Can.empty());
-    }
-
-
-    /**
-     * Filters the input array into a collection, such that only annotations are retained, 
-     * that are valid qualifiers for CDI.
-     * @param annotations
-     * @return non-null
-     */
-    public static List<Annotation> filterQualifiers(final Annotation[] annotations) {
-        return _NullSafe.stream(annotations)
-                .filter(_CDI::isQualifier)
-                .collect(Collectors.toList());
-    }
-
-    /**
-     * @param annotation
-     * @return whether or not the annotation is a valid qualifier for CDI
-     */
-    public static boolean isQualifier(Annotation annotation) {
-        if(annotation==null) {
-            return false;
-        }
-        return annotation.annotationType().getAnnotationsByType(Qualifier.class).length>0;
-    }
-
-    // -- GENERIC SINGLETON RESOLVING
-
-    /**
-     * @return CDI managed singleton wrapped in an Optional
-     */
-    public static <T> Optional<T> getSingleton(@Nullable Class<T> type) {
-        if(type==null) {
-            return Optional.empty();
-        }
-        return _CDI.select(type).getSingleton();
-    }
-
-    /**
-     * @return CDI managed singleton
-     * @throws NoSuchElementException - if the singleton is not resolvable
-     */
-    public static <T> T getSingletonElseFail(@Nullable Class<T> type) {
-        return getSingleton(type)
-                .orElseThrow(()->_Exceptions.noSuchElement("Cannot resolve singleton '%s'", type));
-
-    }
-
-    // -- ENUMERATE BEANS
-
-    public static final AnnotationLiteral<Any> QUALIFIER_ANY = 
-            new AnnotationLiteral<Any>() {
-        private static final long serialVersionUID = 1L;};
-
-        private static Stream<Bean<?>> streamAllCDIBeans() {
-            BeanManager beanManager = _CDI.getBeanManager();
-            Set<Bean<?>> beans = beanManager.getBeans(Object.class, _CDI.QUALIFIER_ANY);
-            return beans.stream();
-        }
-
-        /**
-         * 
-         * @param classifier
-         * @param beanNameProvider - usually ServiceUtil::idOfBean
-         */
-        public static Stream<ManagedBeanAdapter> streamAllBeans(
-                Function<Bean<?>, String> beanNameProvider) {
-
-            return streamAllCDIBeans()
-                    .map(bean->{
-
-                        //val scope = bean.getScope().getSimpleName(); // also works for produced beans
-                        val id = beanNameProvider.apply(bean);
-                        val beanAdapter = BeanAdapterCDI.of(id, bean);
-                        return beanAdapter;
-                    });
-
-        }
-
-        // -- HELPER
-
-        private _CDI() {}
-
-        /**
-         * Get the CDI instance that provides access to the current container. 
-         * @return an optional
-         */
-        private static Optional<CDI<Object>> cdi() {
-            try {
-                CDI<Object> cdi = CDI.current();
-                return Optional.ofNullable(cdi);
-            } catch (Exception e) {
-                return Optional.empty();
-            }
-        }
-
-        private static <T> T tryGet(final Supplier<T> supplier) {
-            try { 
-                return supplier.get();  
-            } catch (Exception e) {
-                return null;
-            }
-        }
-
-
-
-
-
-}
diff --git a/commons/src/main/java/org/apache/isis/commons/internal/ioc/cdi/_CDI_Lifecycle.java b/commons/src/main/java/org/apache/isis/commons/internal/ioc/cdi/_CDI_Lifecycle.java
deleted file mode 100644
index 8f5c49a..0000000
--- a/commons/src/main/java/org/apache/isis/commons/internal/ioc/cdi/_CDI_Lifecycle.java
+++ /dev/null
@@ -1,44 +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.commons.internal.ioc.cdi;
-
-import org.apache.isis.commons.internal.functions._Functions.CheckedRunnable;
-
-import lombok.RequiredArgsConstructor;
-import lombok.val;
-import lombok.extern.log4j.Log4j2;
-
-@RequiredArgsConstructor(staticName="of") @Log4j2
-final class _CDI_Lifecycle implements AutoCloseable {
-
-    private final CheckedRunnable onClose;
-
-    @Override
-    public void close() {
-        try {
-            onClose.run();
-        } catch (Exception e) {
-            val note = "This implementation expects the IocPlugin to provide a CDIProvider "
-                    + "that creates CDI instances that implement AutoClosable";
-
-            log.warn("Failed to properly close the CDI container. Note: {}", note, e);
-        }
-    }
-
-}
diff --git a/commons/src/main/java/org/apache/isis/commons/internal/plugins/ioc/ConversationContextHandle.java b/commons/src/main/java/org/apache/isis/commons/internal/plugins/ioc/ConversationContextHandle.java
deleted file mode 100644
index 8fbc9bd..0000000
--- a/commons/src/main/java/org/apache/isis/commons/internal/plugins/ioc/ConversationContextHandle.java
+++ /dev/null
@@ -1,30 +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.commons.internal.plugins.ioc;
-
-public interface ConversationContextHandle extends AutoCloseable {
-
-    void resume(String cid);
-
-    /**
-     * Refined to not throw a catched exception
-     */
-    @Override void close();
-
-}
diff --git a/commons/src/main/java/org/apache/isis/commons/internal/plugins/ioc/ConversationContextService.java b/commons/src/main/java/org/apache/isis/commons/internal/plugins/ioc/ConversationContextService.java
deleted file mode 100644
index 78eea53..0000000
--- a/commons/src/main/java/org/apache/isis/commons/internal/plugins/ioc/ConversationContextService.java
+++ /dev/null
@@ -1,32 +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.commons.internal.plugins.ioc;
-
-public interface ConversationContextService {
-
-    ConversationContextHandle startTransientConversation();
-
-    static void closeHandle(ConversationContextHandle conversationContextHandle) {
-        if(conversationContextHandle!=null) {
-            conversationContextHandle.close();
-        }
-    }
-
-
-}
diff --git a/commons/src/main/java/org/apache/isis/commons/internal/plugins/ioc/ConversationContextServiceDefault.java b/commons/src/main/java/org/apache/isis/commons/internal/plugins/ioc/ConversationContextServiceDefault.java
deleted file mode 100644
index a61ca95..0000000
--- a/commons/src/main/java/org/apache/isis/commons/internal/plugins/ioc/ConversationContextServiceDefault.java
+++ /dev/null
@@ -1,38 +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.commons.internal.plugins.ioc;
-
-/**
- * Acts as a no-op implementation, that is used as lowest priority default, whenever
- * service-provisioning can not find any alternative with higher priority.  
- * <p>
- * Introduced for CDI, no longer used since Spring.
-
- * @since 2.0
- *
- */
-//@Singleton @Alternative @Priority(PriorityConstants.PRIORITY_BELOW_DEFAULT)
-public class ConversationContextServiceDefault implements ConversationContextService {
-
-    @Override
-    public ConversationContextHandle startTransientConversation() {
-        return null; // don't return a handle
-    }
-
-}
diff --git a/commons/src/test/java/org/apache/isis/commons/internal/cdi/CDITest.java b/commons/src/test/java/org/apache/isis/commons/internal/cdi/CDITest.java
deleted file mode 100644
index 7d97ba2..0000000
--- a/commons/src/test/java/org/apache/isis/commons/internal/cdi/CDITest.java
+++ /dev/null
@@ -1,128 +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.commons.internal.cdi;
-
-import java.lang.annotation.Annotation;
-import java.lang.reflect.Field;
-import java.util.List;
-
-import javax.annotation.CheckForNull;
-import javax.inject.Inject;
-
-import org.junit.jupiter.api.AfterEach;
-import org.junit.jupiter.api.Assertions;
-import org.junit.jupiter.api.BeforeEach;
-import org.junit.jupiter.api.Test;
-
-import static org.junit.Assert.assertNotNull;
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertTrue;
-
-import org.apache.isis.commons.internal.ioc.cdi._CDI;
-
-class CDITest {
-
-    private Field stringField1;
-    private Field stringField2;
-    private Field stringField3;
-
-    @BeforeEach
-    void setUp() throws Exception {
-        stringField1 = Customer.class.getDeclaredField("stringField1");
-        stringField2 = Customer.class.getDeclaredField("stringField2");
-        stringField3 = Customer.class.getDeclaredField("stringField3");
-    }
-
-    @AfterEach
-    void tearDown() throws Exception {
-    }
-
-    // -- STAGED TEST CLASS
-
-    static class Customer {
-
-        @Inject  
-        String stringField1;
-
-        @Inject @CheckForNull //arbitrary non qualifier
-        String stringField2;
-
-        @Inject @ValidQualifierForTesting
-        String stringField3;
-    }
-
-    // ---
-
-    @Test
-    void qualifierDetection() {
-
-        //when
-        ValidQualifierForTesting[] annotations = stringField3.getAnnotationsByType(ValidQualifierForTesting.class);
-
-        //then
-        assertNotNull(annotations);
-        assertEquals(1, annotations.length);
-
-        //when 
-        ValidQualifierForTesting annotation = annotations[0];
-
-        //then
-        assertNotNull(annotation);
-        Assertions.assertTrue(_CDI.isQualifier(annotation));
-
-    }
-
-
-    @Test
-    void noQualifier() {
-
-        //when
-        List<Annotation> qualifiers = _CDI.filterQualifiers(stringField1.getAnnotations());
-
-        //then
-        assertNotNull(qualifiers);
-        assertEquals(0, qualifiers.size());
-
-    }
-
-    @Test
-    void noQualifier_arbitraryAnnotation() {
-
-        //when
-        List<Annotation> qualifiers = _CDI.filterQualifiers(stringField2.getAnnotations());
-
-        //then
-        assertNotNull(qualifiers);
-        assertEquals(0, qualifiers.size());
-
-    }
-
-    @Test
-    void singleQualifier() {
-
-        //when
-        List<Annotation> qualifiers = _CDI.filterQualifiers(stringField3.getAnnotations());
-
-        //then
-        assertNotNull(qualifiers);
-        assertEquals(1, qualifiers.size());
-
-    }
-
-}
diff --git a/commons/src/test/java/org/apache/isis/commons/internal/cdi/ValidQualifierForTesting.java b/commons/src/test/java/org/apache/isis/commons/internal/cdi/ValidQualifierForTesting.java
deleted file mode 100644
index 47316ef..0000000
--- a/commons/src/test/java/org/apache/isis/commons/internal/cdi/ValidQualifierForTesting.java
+++ /dev/null
@@ -1,35 +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.commons.internal.cdi;
-
-import java.lang.annotation.Retention;
-import java.lang.annotation.Target;
-
-import static java.lang.annotation.ElementType.FIELD;
-import static java.lang.annotation.RetentionPolicy.RUNTIME;
-
-import javax.inject.Qualifier;
-
-@Qualifier
-@Retention(RUNTIME)
-@Target(FIELD)
-@interface ValidQualifierForTesting {
-
-
-}