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 2019/03/13 08:54:50 UTC
[isis] branch 2033-IoC updated: ISIS-2033: new module
'runtime-services' to consolidate concrete service
This is an automated email from the ASF dual-hosted git repository.
ahuber pushed a commit to branch 2033-IoC
in repository https://gitbox.apache.org/repos/asf/isis.git
The following commit(s) were added to refs/heads/2033-IoC by this push:
new 54da829 ISIS-2033: new module 'runtime-services' to consolidate concrete service
54da829 is described below
commit 54da829872900986aa3b182ac402e0b666f8fa72
Author: Andi Huber <ah...@apache.org>
AuthorDate: Tue Mar 12 17:58:59 2019 +0100
ISIS-2033: new module 'runtime-services' to consolidate concrete service
these services are to be managed by an IoC container
also moving eventbus implementations to 'jso-common'
Task-Url: https://issues.apache.org/jira/browse/ISIS-2033
---
.../java/org/apache/isis/applib/AppManifest.java | 1 +
core/detached-tests/pom.xml | 7 ++
core/mavendeps/webapp/pom.xml | 6 +
core/plugins/eventbus-axon/pom.xml | 14 +++
.../plugins/eventbus/EventBusPluginForAxon.java | 2 +-
.../QueryResultsCacheUsingAxonTest.java | 4 +-
.../EventBusServiceBaseUsingAxonSimpleTest.java} | 53 +++++----
core/plugins/eventbus-guava/pom.xml | 16 +++
.../plugins/eventbus/EventBusPluginForGuava.java | 2 +-
.../QueryResultsCacheUsingGuavaTest.java | 4 +-
.../EventBusServiceBaseUsingGuavaTest.java} | 31 ++---
.../jdo/persistence/PersistenceSessionBase.java | 2 +-
.../eventbus/EventBusImplementationAbstract.java | 2 +-
.../services/eventbus/EventBusServiceBase.java} | 8 +-
.../services/metrics/MetricsServiceDefault.java | 4 +-
.../eventbus/EventBusServiceBaseTest.java} | 46 ++++----
.../service/eventbus/EventBusServiceJdo.java | 4 +-
.../WrapperFactoryDefaultTest_wrappedObject.java | 24 ++--
.../service/eventbus/EventBusServiceJdo.java | 4 +-
.../WrapperFactoryDefaultTest_wrappedObject.java | 24 ++--
core/pom.xml | 1 +
core/runtime-services/pom.xml | 131 +++++++++++++++++++++
.../runtime/services/InitialisationException.java | 0
.../runtime/services/RequestScopedService.java | 0
.../runtime/services/RuntimeServicesModule.java | 5 +
.../core/runtime/services/ServiceException.java | 0
.../core/runtime/services/ServiceInstantiator.java | 0
.../AuthenticationSessionProviderDefault.java | 0
.../background/BackgroundCommandExecution.java | 0
.../background/BackgroundServiceDefault.java | 0
.../background/CommandExecutionAbstract.java | 0
.../background/CommandExecutorServiceDefault.java | 0
.../background/CommandInvocationHandler.java | 0
.../background/ForkingInvocationHandler.java | 0
.../bookmarks/BookmarkServiceInternalDefault.java | 0
.../command/CommandDtoServiceInternalDefault.java | 0
.../services/command/CommandServiceDefault.java | 0
.../services/email/EmailServiceDefault.java | 0
.../core/runtime/services/error/EmailTicket.java | 0
.../core/runtime/services/error/SimpleTicket.java | 0
.../factory/FactoryServiceInternalDefault.java | 0
.../homepage/HomePageProviderServiceDefault.java | 0
.../isis/core/runtime/services/i18n/po/Block.java | 0
.../runtime/services/i18n/po/ContextAndMsgId.java | 0
.../core/runtime/services/i18n/po/PoAbstract.java | 0
.../core/runtime/services/i18n/po/PoDisabled.java | 0
.../core/runtime/services/i18n/po/PoReader.java | 0
.../core/runtime/services/i18n/po/PoWriter.java | 0
.../services/i18n/po/TranslationServicePo.java | 0
.../services/i18n/po/TranslationServicePoMenu.java | 0
.../isis/core/runtime/services/i18n/po/Util.java | 0
.../ixn/InteractionDtoServiceInternalDefault.java | 0
.../menubars/MenuBarsLoaderServiceDefault.java | 0
.../menubars/bootstrap3/MenuBarsServiceBS3.java | 0
.../menubars/bootstrap3/ServiceAndAction.java | 0
.../services/message/MessageServiceDefault.java | 0
.../ObjectAdapterServiceDefault.java | 0
.../services/publish/PublishedObjectsDefault.java | 0
.../publish/PublishingServiceInternalDefault.java | 2 +-
.../RepositoryServiceInternalDefault.java | 0
.../sessmgmt/SessionManagementServiceDefault.java | 0
.../runtime/services/sudo/SudoServiceDefault.java | 0
.../userprof/UserProfileServiceDefault.java | 0
.../userreg/EmailNotificationServiceDefault.java | 0
.../userreg/EmailVerificationTemplate.html | 0
.../services/userreg/PasswordResetTemplate.html | 0
.../services/xactn/TransactionServiceDefault.java | 0
.../services/xmlsnapshot/XmlSnapshotBuilder.java | 0
.../xmlsnapshot/XmlSnapshotServiceDefault.java | 0
.../changes/PreAndPostValues_shouldAudit_Test.java | 1 +
.../email/EmailServiceDefaultTest_actually.java | 0
.../email/EmailServiceDefaultTest_notEmpty.java | 0
.../runtime/services/i18n/po/PoReaderTest.java | 0
.../services/i18n/po/PoWriterTest_escape.java | 0
.../RepositoryServiceDefaultTest_allMatches.java | 0
.../transaction}/AdapterAndProperty.java | 2 +-
.../transaction}/AuditingServiceInternal.java | 5 +-
.../ChangedObjectsServiceInternal.java | 2 +-
.../system/transaction/IsisTransaction.java | 6 +-
.../transaction}/PreAndPostValues.java | 2 +-
.../runtime/services/ServiceInstantiatorTest.java | 28 -----
example/application/simpleapp/application/pom.xml | 3 +-
.../application/simpleapp/module-simple/pom.xml | 3 +-
83 files changed, 297 insertions(+), 152 deletions(-)
diff --git a/core/applib/src/main/java/org/apache/isis/applib/AppManifest.java b/core/applib/src/main/java/org/apache/isis/applib/AppManifest.java
index 38a4376..a8419b4 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/AppManifest.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/AppManifest.java
@@ -175,6 +175,7 @@ public interface AppManifest {
"org.apache.isis.core.wrapper.WrapperFactoryDefault",
"org.apache.isis.core.metamodel.MetamodelModule",
"org.apache.isis.core.runtime.RuntimeModule",
+ "org.apache.isis.core.runtime.services.RuntimeServicesModule",
"org.apache.isis.jdo.JdoModule",
"org.apache.isis.viewer.restfulobjects.rendering.RendererContext"
diff --git a/core/detached-tests/pom.xml b/core/detached-tests/pom.xml
index 7f08757..01ad0c4 100644
--- a/core/detached-tests/pom.xml
+++ b/core/detached-tests/pom.xml
@@ -54,6 +54,13 @@
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-runtime-services</artifactId>
+ <version>${revision}</version>
+ <scope>test</scope>
+ </dependency>
+
<dependency>
<groupId>org.apache.isis.core</groupId>
<artifactId>isis-core-runtime-extensions</artifactId>
diff --git a/core/mavendeps/webapp/pom.xml b/core/mavendeps/webapp/pom.xml
index 84e6309..44870d7 100644
--- a/core/mavendeps/webapp/pom.xml
+++ b/core/mavendeps/webapp/pom.xml
@@ -48,6 +48,12 @@
</activation>
<dependencies>
+ <!-- TODO [2033] version should be managed -->
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-runtime-services</artifactId>
+ <version>2.0.0-M3-SNAPSHOT</version>
+ </dependency>
<dependency>
<groupId>org.apache.isis.core</groupId>
<artifactId>isis-core-runtime-extensions</artifactId>
diff --git a/core/plugins/eventbus-axon/pom.xml b/core/plugins/eventbus-axon/pom.xml
index 46d2470..2562bde 100644
--- a/core/plugins/eventbus-axon/pom.xml
+++ b/core/plugins/eventbus-axon/pom.xml
@@ -68,6 +68,12 @@
<scope>compile</scope>
</dependency>
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-plugins-jdo-common</artifactId>
+ <scope>compile</scope>
+ </dependency>
+
<!-- TESTS -->
<dependency>
@@ -86,6 +92,14 @@
<dependency>
<groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-plugins-jdo-common</artifactId>
+ <version>${revision}</version>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
<artifactId>isis-core-unittestsupport</artifactId>
<scope>test</scope>
</dependency>
diff --git a/core/plugins/eventbus-axon/src/main/java/org/apache/isis/core/plugins/eventbus/EventBusPluginForAxon.java b/core/plugins/eventbus-axon/src/main/java/org/apache/isis/core/plugins/eventbus/EventBusPluginForAxon.java
index 99d3b65..9e9d7c8 100644
--- a/core/plugins/eventbus-axon/src/main/java/org/apache/isis/core/plugins/eventbus/EventBusPluginForAxon.java
+++ b/core/plugins/eventbus-axon/src/main/java/org/apache/isis/core/plugins/eventbus/EventBusPluginForAxon.java
@@ -33,7 +33,7 @@ import org.axonframework.eventhandling.SimpleEventBus;
import org.apache.isis.applib.events.domain.AbstractDomainEvent;
import org.apache.isis.commons.internal.base._NullSafe;
-import org.apache.isis.core.runtime.services.eventbus.EventBusImplementationAbstract;
+import org.apache.isis.jdo.services.eventbus.EventBusImplementationAbstract;
/**
diff --git a/core/plugins/eventbus-axon/src/test/java/org/apache/isis/applib/services/queryresultscache/QueryResultsCacheUsingAxonTest.java b/core/plugins/eventbus-axon/src/test/java/org/apache/isis/applib/services/queryresultscache/QueryResultsCacheUsingAxonTest.java
index 00ba9c4..5cd35bc 100644
--- a/core/plugins/eventbus-axon/src/test/java/org/apache/isis/applib/services/queryresultscache/QueryResultsCacheUsingAxonTest.java
+++ b/core/plugins/eventbus-axon/src/test/java/org/apache/isis/applib/services/queryresultscache/QueryResultsCacheUsingAxonTest.java
@@ -24,7 +24,7 @@ import java.util.concurrent.Callable;
import org.apache.isis.applib.fixturescripts.events.FixturesInstallingEvent;
import org.apache.isis.applib.services.fixturespec.FixtureScriptsDefault;
import org.apache.isis.core.plugins.eventbus.EventBusPluginForAxon;
-import org.apache.isis.core.runtime.services.eventbus.EventBusServiceDefault;
+import org.apache.isis.jdo.services.eventbus.EventBusServiceBase;
import org.junit.Before;
import org.junit.Test;
@@ -39,7 +39,7 @@ public class QueryResultsCacheUsingAxonTest {
queryResultsCache = new QueryResultsCacheInternal();
control = new QueryResultsCacheControlInternal() {
{
- eventBusService = new EventBusServiceDefault() {
+ eventBusService = new EventBusServiceBase() {
{
allowLateRegistration = true;
eventBusImplementation = eventBusImplementationAxon
diff --git a/core/plugins/eventbus-axon/src/test/java/org/apache/isis/core/runtime/services/eventbus/EventBusServiceDefaultUsingAxonSimpleTest.java b/core/plugins/eventbus-axon/src/test/java/org/apache/isis/jdo/services/eventbus/EventBusServiceBaseUsingAxonSimpleTest.java
similarity index 85%
rename from core/plugins/eventbus-axon/src/test/java/org/apache/isis/core/runtime/services/eventbus/EventBusServiceDefaultUsingAxonSimpleTest.java
rename to core/plugins/eventbus-axon/src/test/java/org/apache/isis/jdo/services/eventbus/EventBusServiceBaseUsingAxonSimpleTest.java
index cce336e..80c2b82 100644
--- a/core/plugins/eventbus-axon/src/test/java/org/apache/isis/core/runtime/services/eventbus/EventBusServiceDefaultUsingAxonSimpleTest.java
+++ b/core/plugins/eventbus-axon/src/test/java/org/apache/isis/jdo/services/eventbus/EventBusServiceBaseUsingAxonSimpleTest.java
@@ -14,33 +14,34 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.isis.core.runtime.services.eventbus;
+package org.apache.isis.jdo.services.eventbus;
+
+import static org.hamcrest.Matchers.is;
+import static org.hamcrest.Matchers.nullValue;
+import static org.junit.Assert.assertThat;
+import static org.junit.jupiter.api.Assertions.assertThrows;
import javax.enterprise.context.ApplicationScoped;
import javax.inject.Inject;
-import org.jboss.weld.junit5.EnableWeld;
-import org.jboss.weld.junit5.WeldInitiator;
-import org.jboss.weld.junit5.WeldSetup;
-import org.junit.jupiter.api.BeforeEach;
-import org.junit.jupiter.api.Test;
-
import org.apache.isis.applib.annotation.DomainService;
import org.apache.isis.applib.services.inject.ServiceInjector;
import org.apache.isis.config.internal._Config;
import org.apache.isis.core.metamodel.BeansForTesting;
import org.apache.isis.core.metamodel.services.ServiceInjectorDefault;
import org.apache.isis.core.metamodel.services.registry.ServiceRegistryDefault;
+import org.apache.isis.jdo.services.eventbus.EventBusServiceBase;
+import org.apache.isis.jdo.services.eventbus.EventBusServiceBaseTest;
+import org.jboss.weld.junit5.EnableWeld;
+import org.jboss.weld.junit5.WeldInitiator;
+import org.jboss.weld.junit5.WeldSetup;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
-import static org.hamcrest.Matchers.is;
-import static org.hamcrest.Matchers.nullValue;
-import static org.junit.Assert.assertThat;
-import static org.junit.jupiter.api.Assertions.assertThrows;
-
-class EventBusServiceDefaultUsingAxonSimpleTest {
+class EventBusServiceBaseUsingAxonSimpleTest {
@ApplicationScoped @DomainService
- static class EventBusServiceForTest extends EventBusServiceDefault {
+ static class EventBusServiceForTest extends EventBusServiceBase {
}
@@ -62,13 +63,13 @@ class EventBusServiceDefaultUsingAxonSimpleTest {
}
@EnableWeld
- static class Post extends EventBusServiceDefaultTest {
+ static class Post extends EventBusServiceBaseTest {
@WeldSetup
public WeldInitiator weld = weld();
@Inject protected ServiceInjector injector;
- @Inject protected EventBusServiceDefault eventBusService;
+ @Inject protected EventBusServiceBase eventBusService;
private final static String EVENTBUS_IMPL_NAME = "axon";
@@ -119,8 +120,8 @@ class EventBusServiceDefaultUsingAxonSimpleTest {
@Test
public void allow_late_registration_means_can_register_after_post() throws Exception {
// given
- _Config.put(EventBusServiceDefault.KEY_ALLOW_LATE_REGISTRATION, true);
- _Config.put(EventBusServiceDefault.KEY_EVENT_BUS_IMPLEMENTATION, EVENTBUS_IMPL_NAME);
+ _Config.put(EventBusServiceBase.KEY_ALLOW_LATE_REGISTRATION, true);
+ _Config.put(EventBusServiceBase.KEY_EVENT_BUS_IMPLEMENTATION, EVENTBUS_IMPL_NAME);
eventBusService.init();
assertThat(eventBusService.isAllowLateRegistration(), is(true));
@@ -138,8 +139,8 @@ class EventBusServiceDefaultUsingAxonSimpleTest {
@Test
public void disallow_late_registration_means_cannot_register_after_post() throws Exception {
// given
- _Config.put(EventBusServiceDefault.KEY_ALLOW_LATE_REGISTRATION, false);
- _Config.put(EventBusServiceDefault.KEY_EVENT_BUS_IMPLEMENTATION, EVENTBUS_IMPL_NAME);
+ _Config.put(EventBusServiceBase.KEY_ALLOW_LATE_REGISTRATION, false);
+ _Config.put(EventBusServiceBase.KEY_EVENT_BUS_IMPLEMENTATION, EVENTBUS_IMPL_NAME);
eventBusService.init();
assertThat(eventBusService.isAllowLateRegistration(), is(false));
@@ -156,8 +157,8 @@ class EventBusServiceDefaultUsingAxonSimpleTest {
@Test
public void disallow_late_registration_means_can_register_before_post() throws Exception {
// given
- _Config.put(EventBusServiceDefault.KEY_ALLOW_LATE_REGISTRATION, false);
- _Config.put(EventBusServiceDefault.KEY_EVENT_BUS_IMPLEMENTATION, EVENTBUS_IMPL_NAME);
+ _Config.put(EventBusServiceBase.KEY_ALLOW_LATE_REGISTRATION, false);
+ _Config.put(EventBusServiceBase.KEY_EVENT_BUS_IMPLEMENTATION, EVENTBUS_IMPL_NAME);
eventBusService.init();
assertThat(eventBusService.isAllowLateRegistration(), is(false));
@@ -176,8 +177,8 @@ class EventBusServiceDefaultUsingAxonSimpleTest {
@Test
public void multiple_subscribers_receive_same_event_if_same_type() throws Exception {
// given
- _Config.put(EventBusServiceDefault.KEY_ALLOW_LATE_REGISTRATION, false);
- _Config.put(EventBusServiceDefault.KEY_EVENT_BUS_IMPLEMENTATION, EVENTBUS_IMPL_NAME);
+ _Config.put(EventBusServiceBase.KEY_ALLOW_LATE_REGISTRATION, false);
+ _Config.put(EventBusServiceBase.KEY_EVENT_BUS_IMPLEMENTATION, EVENTBUS_IMPL_NAME);
eventBusService.init();
assertThat(eventBusService.isAllowLateRegistration(), is(false));
assertThat(eventBusService.getImplementation(), is(EVENTBUS_IMPL_NAME));
@@ -208,8 +209,8 @@ class EventBusServiceDefaultUsingAxonSimpleTest {
@Test
public void multiple_subscribers_eventlistener() throws Exception {
// given
- _Config.put(EventBusServiceDefault.KEY_ALLOW_LATE_REGISTRATION, false);
- _Config.put(EventBusServiceDefault.KEY_EVENT_BUS_IMPLEMENTATION, EVENTBUS_IMPL_NAME);
+ _Config.put(EventBusServiceBase.KEY_ALLOW_LATE_REGISTRATION, false);
+ _Config.put(EventBusServiceBase.KEY_EVENT_BUS_IMPLEMENTATION, EVENTBUS_IMPL_NAME);
eventBusService.init();
assertThat(eventBusService.isAllowLateRegistration(), is(false));
assertThat(eventBusService.getImplementation(), is(EVENTBUS_IMPL_NAME));
diff --git a/core/plugins/eventbus-guava/pom.xml b/core/plugins/eventbus-guava/pom.xml
index 9fd7ef5..2de5c20 100644
--- a/core/plugins/eventbus-guava/pom.xml
+++ b/core/plugins/eventbus-guava/pom.xml
@@ -66,6 +66,12 @@
<dependency>
<groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-plugins-jdo-common</artifactId>
+ <scope>compile</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
<artifactId>isis-core-config</artifactId>
<type>test-jar</type>
<scope>test</scope>
@@ -90,6 +96,14 @@
<type>test-jar</type>
<scope>test</scope>
</dependency>
+
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-plugins-jdo-common</artifactId>
+ <version>${revision}</version>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
<dependency>
<groupId>javax.jdo</groupId>
@@ -98,6 +112,8 @@
<scope>test</scope>
</dependency>
+
+
</dependencies>
<profiles>
diff --git a/core/plugins/eventbus-guava/src/main/java/org/apache/isis/core/plugins/eventbus/EventBusPluginForGuava.java b/core/plugins/eventbus-guava/src/main/java/org/apache/isis/core/plugins/eventbus/EventBusPluginForGuava.java
index 46111ed..96f9a98 100644
--- a/core/plugins/eventbus-guava/src/main/java/org/apache/isis/core/plugins/eventbus/EventBusPluginForGuava.java
+++ b/core/plugins/eventbus-guava/src/main/java/org/apache/isis/core/plugins/eventbus/EventBusPluginForGuava.java
@@ -21,7 +21,7 @@ import java.util.function.Consumer;
import org.apache.isis.applib.events.domain.AbstractDomainEvent;
import org.apache.isis.core.plugins.eventbus.EventBusPlugin;
-import org.apache.isis.core.runtime.services.eventbus.EventBusImplementationAbstract;
+import org.apache.isis.jdo.services.eventbus.EventBusImplementationAbstract;
import com.google.common.eventbus.SubscriberExceptionContext;
import com.google.common.eventbus.SubscriberExceptionHandler;
diff --git a/core/plugins/eventbus-guava/src/test/java/org/apache/isis/applib/services/queryresultscache/QueryResultsCacheUsingGuavaTest.java b/core/plugins/eventbus-guava/src/test/java/org/apache/isis/applib/services/queryresultscache/QueryResultsCacheUsingGuavaTest.java
index 084477b..5fe918c 100644
--- a/core/plugins/eventbus-guava/src/test/java/org/apache/isis/applib/services/queryresultscache/QueryResultsCacheUsingGuavaTest.java
+++ b/core/plugins/eventbus-guava/src/test/java/org/apache/isis/applib/services/queryresultscache/QueryResultsCacheUsingGuavaTest.java
@@ -24,7 +24,7 @@ import java.util.concurrent.Callable;
import org.apache.isis.applib.fixturescripts.events.FixturesInstallingEvent;
import org.apache.isis.applib.services.fixturespec.FixtureScriptsDefault;
import org.apache.isis.core.plugins.eventbus.EventBusPluginForGuava;
-import org.apache.isis.core.runtime.services.eventbus.EventBusServiceDefault;
+import org.apache.isis.jdo.services.eventbus.EventBusServiceBase;
import org.junit.Before;
import org.junit.Test;
@@ -39,7 +39,7 @@ public class QueryResultsCacheUsingGuavaTest {
queryResultsCache = new QueryResultsCacheInternal();
control = new QueryResultsCacheControlInternal() {
{
- eventBusService = new EventBusServiceDefault() {
+ eventBusService = new EventBusServiceBase() {
{
allowLateRegistration = true;
eventBusImplementation = eventBusImplementationGuava
diff --git a/core/plugins/eventbus-guava/src/test/java/org/apache/isis/core/runtime/services/eventbus/EventBusServiceDefaultUsingGuavaTest.java b/core/plugins/eventbus-guava/src/test/java/org/apache/isis/jdo/services/eventbus/EventBusServiceBaseUsingGuavaTest.java
similarity index 85%
rename from core/plugins/eventbus-guava/src/test/java/org/apache/isis/core/runtime/services/eventbus/EventBusServiceDefaultUsingGuavaTest.java
rename to core/plugins/eventbus-guava/src/test/java/org/apache/isis/jdo/services/eventbus/EventBusServiceBaseUsingGuavaTest.java
index 363ebef..0eed250 100644
--- a/core/plugins/eventbus-guava/src/test/java/org/apache/isis/core/runtime/services/eventbus/EventBusServiceDefaultUsingGuavaTest.java
+++ b/core/plugins/eventbus-guava/src/test/java/org/apache/isis/jdo/services/eventbus/EventBusServiceBaseUsingGuavaTest.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.isis.core.runtime.services.eventbus;
+package org.apache.isis.jdo.services.eventbus;
import javax.enterprise.context.ApplicationScoped;
import javax.inject.Inject;
@@ -33,16 +33,17 @@ import org.apache.isis.config.internal._Config;
import org.apache.isis.core.metamodel.BeansForTesting;
import org.apache.isis.core.metamodel.services.ServiceInjectorDefault;
import org.apache.isis.core.metamodel.services.registry.ServiceRegistryDefault;
+import org.apache.isis.jdo.services.eventbus.EventBusServiceBase;
import static org.hamcrest.Matchers.is;
import static org.hamcrest.Matchers.nullValue;
import static org.junit.Assert.assertThat;
import static org.junit.jupiter.api.Assertions.assertThrows;
-class EventBusServiceDefaultUsingGuavaTest {
+class EventBusServiceBaseUsingGuavaTest {
@ApplicationScoped @DomainService
- static class EventBusServiceForTest extends EventBusServiceDefault {
+ static class EventBusServiceForTest extends EventBusServiceBase {
}
@@ -64,13 +65,13 @@ class EventBusServiceDefaultUsingGuavaTest {
}
@EnableWeld
- static class Post extends EventBusServiceDefaultTest {
+ static class Post extends EventBusServiceBaseTest {
@WeldSetup
public WeldInitiator weld = weld();
@Inject protected ServiceInjector injector;
- @Inject protected EventBusServiceDefault eventBusService;
+ @Inject protected EventBusServiceBase eventBusService;
private final static String EVENTBUS_IMPL_NAME = "guava";
@@ -121,8 +122,8 @@ class EventBusServiceDefaultUsingGuavaTest {
@Test
public void allow_late_registration_means_can_register_after_post() throws Exception {
// given
- _Config.put(EventBusServiceDefault.KEY_ALLOW_LATE_REGISTRATION, true);
- _Config.put(EventBusServiceDefault.KEY_EVENT_BUS_IMPLEMENTATION, EVENTBUS_IMPL_NAME);
+ _Config.put(EventBusServiceBase.KEY_ALLOW_LATE_REGISTRATION, true);
+ _Config.put(EventBusServiceBase.KEY_EVENT_BUS_IMPLEMENTATION, EVENTBUS_IMPL_NAME);
eventBusService.init();
assertThat(eventBusService.isAllowLateRegistration(), is(true));
@@ -140,8 +141,8 @@ class EventBusServiceDefaultUsingGuavaTest {
@Test
public void disallow_late_registration_means_cannot_register_after_post() throws Exception {
// given
- _Config.put(EventBusServiceDefault.KEY_ALLOW_LATE_REGISTRATION, false);
- _Config.put(EventBusServiceDefault.KEY_EVENT_BUS_IMPLEMENTATION, EVENTBUS_IMPL_NAME);
+ _Config.put(EventBusServiceBase.KEY_ALLOW_LATE_REGISTRATION, false);
+ _Config.put(EventBusServiceBase.KEY_EVENT_BUS_IMPLEMENTATION, EVENTBUS_IMPL_NAME);
eventBusService.init();
assertThat(eventBusService.isAllowLateRegistration(), is(false));
@@ -157,8 +158,8 @@ class EventBusServiceDefaultUsingGuavaTest {
@Test
public void disallow_late_registration_means_can_register_before_post() throws Exception {
// given
- _Config.put(EventBusServiceDefault.KEY_ALLOW_LATE_REGISTRATION, false);
- _Config.put(EventBusServiceDefault.KEY_EVENT_BUS_IMPLEMENTATION, EVENTBUS_IMPL_NAME);
+ _Config.put(EventBusServiceBase.KEY_ALLOW_LATE_REGISTRATION, false);
+ _Config.put(EventBusServiceBase.KEY_EVENT_BUS_IMPLEMENTATION, EVENTBUS_IMPL_NAME);
eventBusService.init();
assertThat(eventBusService.isAllowLateRegistration(), is(false));
@@ -177,8 +178,8 @@ class EventBusServiceDefaultUsingGuavaTest {
@Test
public void multiple_subscribers_receive_same_event_if_same_type() throws Exception {
// given
- _Config.put(EventBusServiceDefault.KEY_ALLOW_LATE_REGISTRATION, false);
- _Config.put(EventBusServiceDefault.KEY_EVENT_BUS_IMPLEMENTATION, EVENTBUS_IMPL_NAME);
+ _Config.put(EventBusServiceBase.KEY_ALLOW_LATE_REGISTRATION, false);
+ _Config.put(EventBusServiceBase.KEY_EVENT_BUS_IMPLEMENTATION, EVENTBUS_IMPL_NAME);
eventBusService.init();
assertThat(eventBusService.isAllowLateRegistration(), is(false));
@@ -210,8 +211,8 @@ class EventBusServiceDefaultUsingGuavaTest {
@Test
public void multiple_subscribers_eventlistener() throws Exception {
// given
- _Config.put(EventBusServiceDefault.KEY_ALLOW_LATE_REGISTRATION, false);
- _Config.put(EventBusServiceDefault.KEY_EVENT_BUS_IMPLEMENTATION, EVENTBUS_IMPL_NAME);
+ _Config.put(EventBusServiceBase.KEY_ALLOW_LATE_REGISTRATION, false);
+ _Config.put(EventBusServiceBase.KEY_EVENT_BUS_IMPLEMENTATION, EVENTBUS_IMPL_NAME);
eventBusService.init();
assertThat(eventBusService.isAllowLateRegistration(), is(false));
diff --git a/core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/persistence/PersistenceSessionBase.java b/core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/persistence/PersistenceSessionBase.java
index 9ce809f..6ed1974 100644
--- a/core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/persistence/PersistenceSessionBase.java
+++ b/core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/persistence/PersistenceSessionBase.java
@@ -44,9 +44,9 @@ import org.apache.isis.core.metamodel.adapter.oid.Oid;
import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
import org.apache.isis.core.plugins.ioc.RequestContextService;
import org.apache.isis.core.runtime.persistence.FixturesInstalledStateHolder;
-import org.apache.isis.core.runtime.services.changes.ChangedObjectsServiceInternal;
import org.apache.isis.core.runtime.system.context.IsisContext;
import org.apache.isis.core.runtime.system.persistence.PersistenceSession;
+import org.apache.isis.core.runtime.system.transaction.ChangedObjectsServiceInternal;
import org.apache.isis.core.runtime.system.transaction.IsisTransactionManager;
import org.apache.isis.core.security.authentication.AuthenticationSession;
import org.apache.isis.jdo.datanucleus.persistence.queries.PersistenceQueryProcessor;
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/eventbus/EventBusImplementationAbstract.java b/core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/services/eventbus/EventBusImplementationAbstract.java
similarity index 98%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/eventbus/EventBusImplementationAbstract.java
rename to core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/services/eventbus/EventBusImplementationAbstract.java
index 43a70e7..9adb15d 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/eventbus/EventBusImplementationAbstract.java
+++ b/core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/services/eventbus/EventBusImplementationAbstract.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.isis.core.runtime.services.eventbus;
+package org.apache.isis.jdo.services.eventbus;
import java.util.Optional;
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/eventbus/EventBusServiceDefault.java b/core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/services/eventbus/EventBusServiceBase.java
similarity index 96%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/eventbus/EventBusServiceDefault.java
rename to core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/services/eventbus/EventBusServiceBase.java
index beca2d8..3f88234 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/eventbus/EventBusServiceDefault.java
+++ b/core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/services/eventbus/EventBusServiceBase.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.isis.core.runtime.services.eventbus;
+package org.apache.isis.jdo.services.eventbus;
import static org.apache.isis.config.internal._Config.getConfiguration;
@@ -31,12 +31,11 @@ import org.apache.isis.config.IsisConfiguration;
import org.apache.isis.core.commons.lang.ClassUtil;
import org.apache.isis.core.metamodel.facets.Annotations;
import org.apache.isis.core.plugins.eventbus.EventBusPlugin;
-import org.apache.isis.core.runtime.services.RequestScopedService;
/**
* Holds common runtime logic for EventBusService implementations.
*/
-public abstract class EventBusServiceDefault extends EventBusService {
+public abstract class EventBusServiceBase extends EventBusService {
public static final String KEY_ALLOW_LATE_REGISTRATION = "isis.services.eventbus.allowLateRegistration";
public static final String KEY_EVENT_BUS_IMPLEMENTATION = "isis.services.eventbus.implementation";
@@ -154,6 +153,7 @@ public abstract class EventBusServiceDefault extends EventBusService {
}
- @Inject ServiceInjector servicesInjector;
+ @Inject
+ protected ServiceInjector servicesInjector;
}
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/metrics/MetricsServiceDefault.java b/core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/services/metrics/MetricsServiceDefault.java
similarity index 94%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/metrics/MetricsServiceDefault.java
rename to core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/services/metrics/MetricsServiceDefault.java
index 75bd3a4..ab7480b 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/metrics/MetricsServiceDefault.java
+++ b/core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/services/metrics/MetricsServiceDefault.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.isis.core.runtime.services.metrics;
+package org.apache.isis.jdo.services.metrics;
import java.util.concurrent.atomic.LongAdder;
@@ -28,7 +28,7 @@ import javax.jdo.listener.LoadLifecycleListener;
import org.apache.isis.applib.services.WithTransactionScope;
import org.apache.isis.applib.services.metrics.MetricsService;
-import org.apache.isis.core.runtime.services.changes.ChangedObjectsServiceInternal;
+import org.apache.isis.core.runtime.system.transaction.ChangedObjectsServiceInternal;
@RequestScoped
public class MetricsServiceDefault implements MetricsService,
diff --git a/core/runtime/src/test/java/org/apache/isis/core/runtime/services/eventbus/EventBusServiceDefaultTest.java b/core/plugins/jdo-common/src/test/java/org/apache/isis/jdo/services/eventbus/EventBusServiceBaseTest.java
similarity index 77%
rename from core/runtime/src/test/java/org/apache/isis/core/runtime/services/eventbus/EventBusServiceDefaultTest.java
rename to core/plugins/jdo-common/src/test/java/org/apache/isis/jdo/services/eventbus/EventBusServiceBaseTest.java
index 2ecdfc1..d06ef5a 100644
--- a/core/runtime/src/test/java/org/apache/isis/core/runtime/services/eventbus/EventBusServiceDefaultTest.java
+++ b/core/plugins/jdo-common/src/test/java/org/apache/isis/jdo/services/eventbus/EventBusServiceBaseTest.java
@@ -14,23 +14,23 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.isis.core.runtime.services.eventbus;
+package org.apache.isis.jdo.services.eventbus;
-import org.junit.jupiter.api.BeforeEach;
-import org.junit.jupiter.api.Disabled;
-import org.junit.jupiter.api.Test;
+import static org.hamcrest.Matchers.is;
+import static org.hamcrest.Matchers.isIn;
+import static org.junit.Assert.assertThat;
import org.apache.isis.config.internal._Config;
import org.apache.isis.core.metamodel.services.ServiceInjectorDefault;
import org.apache.isis.core.plugins.environment.IsisSystemEnvironment;
+import org.apache.isis.jdo.services.eventbus.EventBusServiceBase;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Disabled;
+import org.junit.jupiter.api.Test;
-import static org.hamcrest.Matchers.is;
-import static org.hamcrest.Matchers.isIn;
-import static org.junit.Assert.assertThat;
-
-public class EventBusServiceDefaultTest {
+public class EventBusServiceBaseTest {
- protected EventBusServiceDefault eventBusService;
+ protected EventBusServiceBase eventBusService;
@BeforeEach
public void setUp() throws Exception {
@@ -38,14 +38,14 @@ public class EventBusServiceDefaultTest {
_Config.clear();
IsisSystemEnvironment.setUnitTesting(true);
- eventBusService = new EventBusServiceDefault() {
+ eventBusService = new EventBusServiceBase() {
{
servicesInjector = new ServiceInjectorDefault();
}
};
}
- public static class Init extends EventBusServiceDefaultTest {
+ public static class Init extends EventBusServiceBaseTest {
@Test
public void emptyMap() throws Exception {
@@ -56,77 +56,77 @@ public class EventBusServiceDefaultTest {
@Test
public void allowLateRegistration_setToFalse() throws Exception {
- _Config.put(EventBusServiceDefault.KEY_ALLOW_LATE_REGISTRATION, false);
+ _Config.put(EventBusServiceBase.KEY_ALLOW_LATE_REGISTRATION, false);
eventBusService.init();
assertThat(eventBusService.isAllowLateRegistration(), is(false));
}
@Test
public void allowLateRegistration_setToTrue() throws Exception {
- _Config.put(EventBusServiceDefault.KEY_ALLOW_LATE_REGISTRATION, true);
+ _Config.put(EventBusServiceBase.KEY_ALLOW_LATE_REGISTRATION, true);
eventBusService.init();
assertThat(eventBusService.isAllowLateRegistration(), is(true));
}
@Test
public void allowLateRegistration_setToTrueMixedCase() throws Exception {
- _Config.put(EventBusServiceDefault.KEY_ALLOW_LATE_REGISTRATION, "TrUe");
+ _Config.put(EventBusServiceBase.KEY_ALLOW_LATE_REGISTRATION, "TrUe");
eventBusService.init();
assertThat(eventBusService.isAllowLateRegistration(), is(true));
}
@Test
public void allowLateRegistration_setToEmptyString() throws Exception {
- _Config.put(EventBusServiceDefault.KEY_ALLOW_LATE_REGISTRATION, "");
+ _Config.put(EventBusServiceBase.KEY_ALLOW_LATE_REGISTRATION, "");
eventBusService.init();
assertThat(eventBusService.isAllowLateRegistration(), is(false));
}
@Test @Disabled("why would we allow this?")
public void allowLateRegistration_setToGarbage() throws Exception {
- _Config.put(EventBusServiceDefault.KEY_ALLOW_LATE_REGISTRATION, "SDF$%FDVDFG");
+ _Config.put(EventBusServiceBase.KEY_ALLOW_LATE_REGISTRATION, "SDF$%FDVDFG");
eventBusService.init();
assertThat(eventBusService.isAllowLateRegistration(), is(false));
}
@Test
public void implementation_setToGuava() throws Exception {
- _Config.put(EventBusServiceDefault.KEY_EVENT_BUS_IMPLEMENTATION, "guava");
+ _Config.put(EventBusServiceBase.KEY_EVENT_BUS_IMPLEMENTATION, "guava");
eventBusService.init();
assertThat(eventBusService.getImplementation(), is("guava"));
}
@Test
public void implementation_setToGuavaMixedCaseRequiringTrimming() throws Exception {
- _Config.put(EventBusServiceDefault.KEY_EVENT_BUS_IMPLEMENTATION, " GuAvA ");
+ _Config.put(EventBusServiceBase.KEY_EVENT_BUS_IMPLEMENTATION, " GuAvA ");
eventBusService.init();
assertThat(eventBusService.getImplementation(), is("guava"));
}
@Test
public void implementation_setToAxon() throws Exception {
- _Config.put(EventBusServiceDefault.KEY_EVENT_BUS_IMPLEMENTATION, "axon");
+ _Config.put(EventBusServiceBase.KEY_EVENT_BUS_IMPLEMENTATION, "axon");
eventBusService.init();
assertThat(eventBusService.getImplementation(), is("axon"));
}
@Test
public void implementation_setToAxonMixedCaseRequiringTrimming() throws Exception {
- _Config.put(EventBusServiceDefault.KEY_EVENT_BUS_IMPLEMENTATION, " AxOn ");
+ _Config.put(EventBusServiceBase.KEY_EVENT_BUS_IMPLEMENTATION, " AxOn ");
eventBusService.init();
assertThat(eventBusService.getImplementation(), is("axon"));
}
@Test
public void implementation_setToEmptyString() throws Exception {
- _Config.put(EventBusServiceDefault.KEY_EVENT_BUS_IMPLEMENTATION, "");
+ _Config.put(EventBusServiceBase.KEY_EVENT_BUS_IMPLEMENTATION, "");
eventBusService.init();
assertThat(eventBusService.getImplementation(), isIn(new String[] {"auto", "plugin"}));
}
@Test
public void implementation_setToAnythingElse() throws Exception {
- _Config.put(EventBusServiceDefault.KEY_EVENT_BUS_IMPLEMENTATION,
+ _Config.put(EventBusServiceBase.KEY_EVENT_BUS_IMPLEMENTATION,
"com.mycompany.my.event.bus.Implementation");
eventBusService.init();
assertThat(eventBusService.getImplementation(), is("com.mycompany.my.event.bus.Implementation"));
diff --git a/core/plugins/jdo-datanucleus-4/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/service/eventbus/EventBusServiceJdo.java b/core/plugins/jdo-datanucleus-4/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/service/eventbus/EventBusServiceJdo.java
index c2fce71..16192ec 100644
--- a/core/plugins/jdo-datanucleus-4/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/service/eventbus/EventBusServiceJdo.java
+++ b/core/plugins/jdo-datanucleus-4/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/service/eventbus/EventBusServiceJdo.java
@@ -20,7 +20,7 @@ import javax.inject.Singleton;
import javax.enterprise.context.ApplicationScoped;
import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.core.runtime.services.eventbus.EventBusServiceDefault;
+import org.apache.isis.jdo.services.eventbus.EventBusServiceBase;
import org.apache.isis.objectstore.jdo.datanucleus.JDOStateManagerForIsis;
import org.apache.isis.objectstore.jdo.datanucleus.JDOStateManagerForIsis.Hint;
@@ -41,7 +41,7 @@ import org.apache.isis.objectstore.jdo.datanucleus.JDOStateManagerForIsis.Hint;
* that it is automatically registered and available for use; no further configuration is required.
*/
@Singleton
-public class EventBusServiceJdo extends EventBusServiceDefault {
+public class EventBusServiceJdo extends EventBusServiceBase {
/**
* skip if called in any way by way of the {@link JDOStateManagerForIsis5}.
diff --git a/core/plugins/jdo-datanucleus-4/src/test/java/org/apache/isis/core/wrapper/WrapperFactoryDefaultTest_wrappedObject.java b/core/plugins/jdo-datanucleus-4/src/test/java/org/apache/isis/core/wrapper/WrapperFactoryDefaultTest_wrappedObject.java
index bdf272b..31b94b0 100644
--- a/core/plugins/jdo-datanucleus-4/src/test/java/org/apache/isis/core/wrapper/WrapperFactoryDefaultTest_wrappedObject.java
+++ b/core/plugins/jdo-datanucleus-4/src/test/java/org/apache/isis/core/wrapper/WrapperFactoryDefaultTest_wrappedObject.java
@@ -19,18 +19,15 @@
package org.apache.isis.core.wrapper;
+import static org.hamcrest.CoreMatchers.is;
+import static org.hamcrest.CoreMatchers.notNullValue;
+import static org.junit.Assert.assertThat;
+
import java.lang.reflect.Method;
import java.util.Collections;
import java.util.List;
import java.util.Optional;
-import org.jmock.Expectations;
-import org.jmock.auto.Mock;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.ExpectedException;
-
import org.apache.isis.applib.services.command.Command;
import org.apache.isis.applib.services.command.CommandContext;
import org.apache.isis.applib.services.inject.ServiceInjector;
@@ -63,7 +60,6 @@ import org.apache.isis.core.metamodel.spec.feature.OneToOneAssociation;
import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
import org.apache.isis.core.metamodel.specloader.specimpl.OneToOneAssociationDefault;
import org.apache.isis.core.metamodel.specloader.specimpl.dflt.ObjectSpecificationDefault;
-import org.apache.isis.core.runtime.services.command.CommandDtoServiceInternalDefault;
import org.apache.isis.core.runtime.system.session.IsisSessionFactory;
import org.apache.isis.core.security.authentication.AuthenticationSessionProvider;
import org.apache.isis.core.security.authentication.standard.SimpleSession;
@@ -73,10 +69,12 @@ import org.apache.isis.progmodel.wrapper.dom.employees.Employee;
import org.apache.isis.progmodel.wrapper.dom.employees.EmployeeRepository;
import org.apache.isis.progmodel.wrapper.dom.employees.EmployeeRepositoryImpl;
import org.apache.isis.schema.cmd.v1.CommandDto;
-
-import static org.hamcrest.CoreMatchers.is;
-import static org.hamcrest.CoreMatchers.notNullValue;
-import static org.junit.Assert.assertThat;
+import org.jmock.Expectations;
+import org.jmock.auto.Mock;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
public class WrapperFactoryDefaultTest_wrappedObject {
@@ -189,7 +187,7 @@ public class WrapperFactoryDefaultTest_wrappedObject {
will(returnValue(mockCommand));
allowing(mockServicesInjector).lookupServiceElseFail(CommandDtoServiceInternal.class);
- will(returnValue(new CommandDtoServiceInternalDefault()));
+ will(returnValue(mockCommandDtoServiceInternal));
allowing(mockServicesInjector).lookupServiceElseFail(AuthenticationSessionProvider.class);
will(returnValue(mockAuthenticationSessionProvider));
diff --git a/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/service/eventbus/EventBusServiceJdo.java b/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/service/eventbus/EventBusServiceJdo.java
index a9d9d9d..cb980bd 100644
--- a/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/service/eventbus/EventBusServiceJdo.java
+++ b/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/service/eventbus/EventBusServiceJdo.java
@@ -20,7 +20,7 @@ import javax.inject.Singleton;
import javax.enterprise.context.ApplicationScoped;
import org.apache.isis.applib.annotation.Programmatic;
-import org.apache.isis.core.runtime.services.eventbus.EventBusServiceDefault;
+import org.apache.isis.jdo.services.eventbus.EventBusServiceBase;
import org.apache.isis.objectstore.jdo.datanucleus.JDOStateManagerForIsis;
import org.apache.isis.objectstore.jdo.datanucleus.JDOStateManagerForIsis.Hint;
@@ -41,7 +41,7 @@ import org.apache.isis.objectstore.jdo.datanucleus.JDOStateManagerForIsis.Hint;
* that it is automatically registered and available for use; no further configuration is required.
*/
@Singleton
-public class EventBusServiceJdo extends EventBusServiceDefault {
+public class EventBusServiceJdo extends EventBusServiceBase {
/**
* skip if called in any way by way of the {@link JDOStateManagerForIsis}.
diff --git a/core/plugins/jdo-datanucleus-5/src/test/java/org/apache/isis/core/wrapper/WrapperFactoryDefaultTest_wrappedObject.java b/core/plugins/jdo-datanucleus-5/src/test/java/org/apache/isis/core/wrapper/WrapperFactoryDefaultTest_wrappedObject.java
index ea34892..dd47afc 100644
--- a/core/plugins/jdo-datanucleus-5/src/test/java/org/apache/isis/core/wrapper/WrapperFactoryDefaultTest_wrappedObject.java
+++ b/core/plugins/jdo-datanucleus-5/src/test/java/org/apache/isis/core/wrapper/WrapperFactoryDefaultTest_wrappedObject.java
@@ -19,18 +19,15 @@
package org.apache.isis.core.wrapper;
+import static org.hamcrest.CoreMatchers.is;
+import static org.hamcrest.CoreMatchers.notNullValue;
+import static org.junit.Assert.assertThat;
+
import java.lang.reflect.Method;
import java.util.Collections;
import java.util.List;
import java.util.Optional;
-import org.jmock.Expectations;
-import org.jmock.auto.Mock;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.ExpectedException;
-
import org.apache.isis.applib.services.command.Command;
import org.apache.isis.applib.services.command.CommandContext;
import org.apache.isis.applib.services.inject.ServiceInjector;
@@ -63,7 +60,6 @@ import org.apache.isis.core.metamodel.spec.feature.OneToOneAssociation;
import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
import org.apache.isis.core.metamodel.specloader.specimpl.OneToOneAssociationDefault;
import org.apache.isis.core.metamodel.specloader.specimpl.dflt.ObjectSpecificationDefault;
-import org.apache.isis.core.runtime.services.command.CommandDtoServiceInternalDefault;
import org.apache.isis.core.runtime.system.session.IsisSessionFactory;
import org.apache.isis.core.security.authentication.AuthenticationSessionProvider;
import org.apache.isis.core.security.authentication.standard.SimpleSession;
@@ -73,10 +69,12 @@ import org.apache.isis.progmodel.wrapper.dom.employees.Employee;
import org.apache.isis.progmodel.wrapper.dom.employees.EmployeeRepository;
import org.apache.isis.progmodel.wrapper.dom.employees.EmployeeRepositoryImpl;
import org.apache.isis.schema.cmd.v1.CommandDto;
-
-import static org.hamcrest.CoreMatchers.is;
-import static org.hamcrest.CoreMatchers.notNullValue;
-import static org.junit.Assert.assertThat;
+import org.jmock.Expectations;
+import org.jmock.auto.Mock;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
public class WrapperFactoryDefaultTest_wrappedObject {
@@ -189,7 +187,7 @@ public class WrapperFactoryDefaultTest_wrappedObject {
will(returnValue(mockCommand));
allowing(mockServicesInjector).lookupServiceElseFail(CommandDtoServiceInternal.class);
- will(returnValue(new CommandDtoServiceInternalDefault()));
+ will(returnValue(mockCommandDtoServiceInternal));
allowing(mockServicesInjector).lookupServiceElseFail(AuthenticationSessionProvider.class);
will(returnValue(mockAuthenticationSessionProvider));
diff --git a/core/pom.xml b/core/pom.xml
index 50acd2c..f9df9eb 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -2575,6 +2575,7 @@ ${license.additional-notes}
<module>runtime</module>
<module>runtime-mod-1</module>
<module>runtime-extensions</module>
+ <module>runtime-services</module>
<module>webserver</module>
<module>security</module>
diff --git a/core/runtime-services/pom.xml b/core/runtime-services/pom.xml
new file mode 100644
index 0000000..471d8a9
--- /dev/null
+++ b/core/runtime-services/pom.xml
@@ -0,0 +1,131 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ 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.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis</artifactId>
+ <version>${revision}</version>
+ </parent>
+
+ <artifactId>isis-core-runtime-services</artifactId>
+ <name>Apache Isis Runtime Services</name>
+ <description>Introduced to keep the 'runtime' package concise. Viewers don't have dependencies on this module.</description>
+
+ <properties>
+ <jar-plugin.automaticModuleName>org.apache.isis.core.runtime-services</jar-plugin.automaticModuleName>
+ <git-plugin.propertiesDir>org/apache/isis/core/runtime-services</git-plugin.propertiesDir>
+ </properties>
+
+ <build>
+ <resources>
+ <resource>
+ <directory>src/main/java</directory>
+ <filtering>false</filtering>
+ <includes>
+ <include>**</include>
+ </includes>
+ <excludes>
+ <exclude>**/*.java</exclude>
+ </excludes>
+ </resource>
+ <resource>
+ <directory>src/main/resources</directory>
+ <includes>
+ <include>isis-version.properties</include>
+ </includes>
+ <filtering>true</filtering>
+ </resource>
+ <resource>
+ <directory>src/main/resources</directory>
+ <filtering>false</filtering>
+ </resource>
+ </resources>
+ </build>
+
+ <dependencies>
+
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-unittestsupport</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-runtime</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.isis.core</groupId>
+ <artifactId>isis-core-runtime</artifactId>
+ <type>test-jar</type>
+ <scope>test</scope>
+ </dependency>
+
+ </dependencies>
+
+ <profiles>
+ <profile>
+ <id>flatten</id>
+ <activation>
+ <property>
+ <name>!skip.flatten</name>
+ </property>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>flatten-maven-plugin</artifactId>
+ <version>1.0.0</version>
+ <executions>
+ <execution>
+ <id>flatten</id>
+ <phase>process-resources</phase>
+ <goals>
+ <goal>flatten</goal>
+ </goals>
+ <configuration>
+ <flattenMode>defaults</flattenMode>
+ <updatePomFile>true</updatePomFile>
+ <pomElements>
+ <name>resolve</name>
+ <description>resolve</description>
+ <dependencies>resolve</dependencies>
+ </pomElements>
+ </configuration>
+ </execution>
+ <execution>
+ <id>flatten.clean</id>
+ <phase>clean</phase>
+ <goals>
+ <goal>clean</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+
+</project>
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/InitialisationException.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/InitialisationException.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/InitialisationException.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/InitialisationException.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/RequestScopedService.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/RequestScopedService.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/RequestScopedService.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/RequestScopedService.java
diff --git a/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/RuntimeServicesModule.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/RuntimeServicesModule.java
new file mode 100644
index 0000000..267eed4
--- /dev/null
+++ b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/RuntimeServicesModule.java
@@ -0,0 +1,5 @@
+package org.apache.isis.core.runtime.services;
+
+public final class RuntimeServicesModule {
+
+}
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/ServiceException.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/ServiceException.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/ServiceException.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/ServiceException.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/ServiceInstantiator.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/ServiceInstantiator.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/ServiceInstantiator.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/ServiceInstantiator.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/authsess/AuthenticationSessionProviderDefault.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/authsess/AuthenticationSessionProviderDefault.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/authsess/AuthenticationSessionProviderDefault.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/authsess/AuthenticationSessionProviderDefault.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/background/BackgroundCommandExecution.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/background/BackgroundCommandExecution.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/background/BackgroundCommandExecution.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/background/BackgroundCommandExecution.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/background/BackgroundServiceDefault.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/background/BackgroundServiceDefault.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/background/BackgroundServiceDefault.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/background/BackgroundServiceDefault.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/background/CommandExecutionAbstract.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/background/CommandExecutionAbstract.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/background/CommandExecutionAbstract.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/background/CommandExecutionAbstract.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/background/CommandExecutorServiceDefault.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/background/CommandExecutorServiceDefault.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/background/CommandExecutorServiceDefault.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/background/CommandExecutorServiceDefault.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/background/CommandInvocationHandler.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/background/CommandInvocationHandler.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/background/CommandInvocationHandler.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/background/CommandInvocationHandler.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/background/ForkingInvocationHandler.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/background/ForkingInvocationHandler.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/background/ForkingInvocationHandler.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/background/ForkingInvocationHandler.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/bookmarks/BookmarkServiceInternalDefault.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/bookmarks/BookmarkServiceInternalDefault.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/bookmarks/BookmarkServiceInternalDefault.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/bookmarks/BookmarkServiceInternalDefault.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/command/CommandDtoServiceInternalDefault.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/command/CommandDtoServiceInternalDefault.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/command/CommandDtoServiceInternalDefault.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/command/CommandDtoServiceInternalDefault.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/command/CommandServiceDefault.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/command/CommandServiceDefault.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/command/CommandServiceDefault.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/command/CommandServiceDefault.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/email/EmailServiceDefault.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/email/EmailServiceDefault.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/email/EmailServiceDefault.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/email/EmailServiceDefault.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/error/EmailTicket.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/error/EmailTicket.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/error/EmailTicket.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/error/EmailTicket.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/error/SimpleTicket.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/error/SimpleTicket.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/error/SimpleTicket.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/error/SimpleTicket.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/factory/FactoryServiceInternalDefault.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/factory/FactoryServiceInternalDefault.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/factory/FactoryServiceInternalDefault.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/factory/FactoryServiceInternalDefault.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/homepage/HomePageProviderServiceDefault.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/homepage/HomePageProviderServiceDefault.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/homepage/HomePageProviderServiceDefault.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/homepage/HomePageProviderServiceDefault.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/Block.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/i18n/po/Block.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/Block.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/i18n/po/Block.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/ContextAndMsgId.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/i18n/po/ContextAndMsgId.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/ContextAndMsgId.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/i18n/po/ContextAndMsgId.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/PoAbstract.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/i18n/po/PoAbstract.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/PoAbstract.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/i18n/po/PoAbstract.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/PoDisabled.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/i18n/po/PoDisabled.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/PoDisabled.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/i18n/po/PoDisabled.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/PoReader.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/i18n/po/PoReader.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/PoReader.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/i18n/po/PoReader.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/PoWriter.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/i18n/po/PoWriter.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/PoWriter.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/i18n/po/PoWriter.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/TranslationServicePo.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/i18n/po/TranslationServicePo.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/TranslationServicePo.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/i18n/po/TranslationServicePo.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/TranslationServicePoMenu.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/i18n/po/TranslationServicePoMenu.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/TranslationServicePoMenu.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/i18n/po/TranslationServicePoMenu.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/Util.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/i18n/po/Util.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/i18n/po/Util.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/i18n/po/Util.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/ixn/InteractionDtoServiceInternalDefault.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/ixn/InteractionDtoServiceInternalDefault.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/ixn/InteractionDtoServiceInternalDefault.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/ixn/InteractionDtoServiceInternalDefault.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/menubars/MenuBarsLoaderServiceDefault.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/menubars/MenuBarsLoaderServiceDefault.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/menubars/MenuBarsLoaderServiceDefault.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/menubars/MenuBarsLoaderServiceDefault.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/menubars/bootstrap3/MenuBarsServiceBS3.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/menubars/bootstrap3/MenuBarsServiceBS3.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/menubars/bootstrap3/MenuBarsServiceBS3.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/menubars/bootstrap3/MenuBarsServiceBS3.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/menubars/bootstrap3/ServiceAndAction.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/menubars/bootstrap3/ServiceAndAction.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/menubars/bootstrap3/ServiceAndAction.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/menubars/bootstrap3/ServiceAndAction.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/message/MessageServiceDefault.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/message/MessageServiceDefault.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/message/MessageServiceDefault.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/message/MessageServiceDefault.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/persistsession/ObjectAdapterServiceDefault.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/persistsession/ObjectAdapterServiceDefault.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/persistsession/ObjectAdapterServiceDefault.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/persistsession/ObjectAdapterServiceDefault.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/publish/PublishedObjectsDefault.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/publish/PublishedObjectsDefault.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/publish/PublishedObjectsDefault.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/publish/PublishedObjectsDefault.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/publish/PublishingServiceInternalDefault.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/publish/PublishingServiceInternalDefault.java
similarity index 98%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/publish/PublishingServiceInternalDefault.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/publish/PublishingServiceInternalDefault.java
index 17db18e..91aabd1 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/publish/PublishingServiceInternalDefault.java
+++ b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/publish/PublishingServiceInternalDefault.java
@@ -45,7 +45,7 @@ import org.apache.isis.commons.internal.collections._Maps;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.facets.object.publishedobject.PublishedObjectFacet;
import org.apache.isis.core.metamodel.services.publishing.PublishingServiceInternal;
-import org.apache.isis.core.runtime.services.changes.ChangedObjectsServiceInternal;
+import org.apache.isis.core.runtime.system.transaction.ChangedObjectsServiceInternal;
/**
* Wrapper around {@link PublisherService}. Is a no-op if there is no injected service.
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/repository/RepositoryServiceInternalDefault.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/repository/RepositoryServiceInternalDefault.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/repository/RepositoryServiceInternalDefault.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/repository/RepositoryServiceInternalDefault.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/sessmgmt/SessionManagementServiceDefault.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/sessmgmt/SessionManagementServiceDefault.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/sessmgmt/SessionManagementServiceDefault.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/sessmgmt/SessionManagementServiceDefault.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/sudo/SudoServiceDefault.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/sudo/SudoServiceDefault.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/sudo/SudoServiceDefault.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/sudo/SudoServiceDefault.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/userprof/UserProfileServiceDefault.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/userprof/UserProfileServiceDefault.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/userprof/UserProfileServiceDefault.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/userprof/UserProfileServiceDefault.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/userreg/EmailNotificationServiceDefault.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/userreg/EmailNotificationServiceDefault.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/userreg/EmailNotificationServiceDefault.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/userreg/EmailNotificationServiceDefault.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/userreg/EmailVerificationTemplate.html b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/userreg/EmailVerificationTemplate.html
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/userreg/EmailVerificationTemplate.html
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/userreg/EmailVerificationTemplate.html
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/userreg/PasswordResetTemplate.html b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/userreg/PasswordResetTemplate.html
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/userreg/PasswordResetTemplate.html
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/userreg/PasswordResetTemplate.html
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/xactn/TransactionServiceDefault.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/xactn/TransactionServiceDefault.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/xactn/TransactionServiceDefault.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/xactn/TransactionServiceDefault.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/xmlsnapshot/XmlSnapshotBuilder.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/xmlsnapshot/XmlSnapshotBuilder.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/xmlsnapshot/XmlSnapshotBuilder.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/xmlsnapshot/XmlSnapshotBuilder.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/xmlsnapshot/XmlSnapshotServiceDefault.java b/core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/xmlsnapshot/XmlSnapshotServiceDefault.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/xmlsnapshot/XmlSnapshotServiceDefault.java
rename to core/runtime-services/src/main/java/org/apache/isis/core/runtime/services/xmlsnapshot/XmlSnapshotServiceDefault.java
diff --git a/core/runtime/src/test/java/org/apache/isis/core/runtime/services/changes/PreAndPostValues_shouldAudit_Test.java b/core/runtime-services/src/test/java/org/apache/isis/core/runtime/services/changes/PreAndPostValues_shouldAudit_Test.java
similarity index 96%
rename from core/runtime/src/test/java/org/apache/isis/core/runtime/services/changes/PreAndPostValues_shouldAudit_Test.java
rename to core/runtime-services/src/test/java/org/apache/isis/core/runtime/services/changes/PreAndPostValues_shouldAudit_Test.java
index 767e418..8e1f414 100644
--- a/core/runtime/src/test/java/org/apache/isis/core/runtime/services/changes/PreAndPostValues_shouldAudit_Test.java
+++ b/core/runtime-services/src/test/java/org/apache/isis/core/runtime/services/changes/PreAndPostValues_shouldAudit_Test.java
@@ -21,6 +21,7 @@ package org.apache.isis.core.runtime.services.changes;
import org.junit.Test;
import org.apache.isis.core.runtime.system.transaction.IsisTransaction;
+import org.apache.isis.core.runtime.system.transaction.PreAndPostValues;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
diff --git a/core/runtime/src/test/java/org/apache/isis/core/runtime/services/email/EmailServiceDefaultTest_actually.java b/core/runtime-services/src/test/java/org/apache/isis/core/runtime/services/email/EmailServiceDefaultTest_actually.java
similarity index 100%
rename from core/runtime/src/test/java/org/apache/isis/core/runtime/services/email/EmailServiceDefaultTest_actually.java
rename to core/runtime-services/src/test/java/org/apache/isis/core/runtime/services/email/EmailServiceDefaultTest_actually.java
diff --git a/core/runtime/src/test/java/org/apache/isis/core/runtime/services/email/EmailServiceDefaultTest_notEmpty.java b/core/runtime-services/src/test/java/org/apache/isis/core/runtime/services/email/EmailServiceDefaultTest_notEmpty.java
similarity index 100%
rename from core/runtime/src/test/java/org/apache/isis/core/runtime/services/email/EmailServiceDefaultTest_notEmpty.java
rename to core/runtime-services/src/test/java/org/apache/isis/core/runtime/services/email/EmailServiceDefaultTest_notEmpty.java
diff --git a/core/runtime/src/test/java/org/apache/isis/core/runtime/services/i18n/po/PoReaderTest.java b/core/runtime-services/src/test/java/org/apache/isis/core/runtime/services/i18n/po/PoReaderTest.java
similarity index 100%
rename from core/runtime/src/test/java/org/apache/isis/core/runtime/services/i18n/po/PoReaderTest.java
rename to core/runtime-services/src/test/java/org/apache/isis/core/runtime/services/i18n/po/PoReaderTest.java
diff --git a/core/runtime/src/test/java/org/apache/isis/core/runtime/services/i18n/po/PoWriterTest_escape.java b/core/runtime-services/src/test/java/org/apache/isis/core/runtime/services/i18n/po/PoWriterTest_escape.java
similarity index 100%
rename from core/runtime/src/test/java/org/apache/isis/core/runtime/services/i18n/po/PoWriterTest_escape.java
rename to core/runtime-services/src/test/java/org/apache/isis/core/runtime/services/i18n/po/PoWriterTest_escape.java
diff --git a/core/runtime/src/test/java/org/apache/isis/core/runtime/services/repository/RepositoryServiceDefaultTest_allMatches.java b/core/runtime-services/src/test/java/org/apache/isis/core/runtime/services/repository/RepositoryServiceDefaultTest_allMatches.java
similarity index 100%
rename from core/runtime/src/test/java/org/apache/isis/core/runtime/services/repository/RepositoryServiceDefaultTest_allMatches.java
rename to core/runtime-services/src/test/java/org/apache/isis/core/runtime/services/repository/RepositoryServiceDefaultTest_allMatches.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/changes/AdapterAndProperty.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/AdapterAndProperty.java
similarity index 98%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/changes/AdapterAndProperty.java
rename to core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/AdapterAndProperty.java
index 44d4608..41e7415 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/changes/AdapterAndProperty.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/AdapterAndProperty.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.isis.core.runtime.services.changes;
+package org.apache.isis.core.runtime.system.transaction;
import org.apache.isis.applib.services.bookmark.Bookmark;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/auditing/AuditingServiceInternal.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/AuditingServiceInternal.java
similarity index 94%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/auditing/AuditingServiceInternal.java
rename to core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/AuditingServiceInternal.java
index 2dea5d1..a208ab3 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/auditing/AuditingServiceInternal.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/AuditingServiceInternal.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.isis.core.runtime.services.auditing;
+package org.apache.isis.core.runtime.system.transaction;
import java.util.Map;
import java.util.Set;
@@ -38,9 +38,6 @@ import org.apache.isis.applib.services.xactn.TransactionService;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.facets.actions.action.invocation.CommandUtil;
import org.apache.isis.core.metamodel.facets.object.audit.AuditableFacet;
-import org.apache.isis.core.runtime.services.changes.AdapterAndProperty;
-import org.apache.isis.core.runtime.services.changes.ChangedObjectsServiceInternal;
-import org.apache.isis.core.runtime.services.changes.PreAndPostValues;
/**
* Wrapper around {@link org.apache.isis.applib.services.audit.AuditerService}.
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/changes/ChangedObjectsServiceInternal.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/ChangedObjectsServiceInternal.java
similarity index 99%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/changes/ChangedObjectsServiceInternal.java
rename to core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/ChangedObjectsServiceInternal.java
index 80a3b10..8aa19ee 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/changes/ChangedObjectsServiceInternal.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/ChangedObjectsServiceInternal.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.isis.core.runtime.services.changes;
+package org.apache.isis.core.runtime.system.transaction;
import java.util.Collections;
import java.util.Map;
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/IsisTransaction.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/IsisTransaction.java
index 1031396..b635eaa 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/IsisTransaction.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/IsisTransaction.java
@@ -25,9 +25,6 @@ import java.util.concurrent.CountDownLatch;
import javax.enterprise.inject.Instance;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
import org.apache.isis.applib.annotation.Programmatic;
import org.apache.isis.applib.services.WithTransactionScope;
import org.apache.isis.applib.services.registry.ServiceRegistry;
@@ -42,7 +39,8 @@ import org.apache.isis.core.metamodel.services.publishing.PublishingServiceInter
import org.apache.isis.core.runtime.persistence.transaction.CreateObjectCommand;
import org.apache.isis.core.runtime.persistence.transaction.DestroyObjectCommand;
import org.apache.isis.core.runtime.persistence.transaction.PersistenceCommand;
-import org.apache.isis.core.runtime.services.auditing.AuditingServiceInternal;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import lombok.val;
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/changes/PreAndPostValues.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/PreAndPostValues.java
similarity index 98%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/changes/PreAndPostValues.java
rename to core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/PreAndPostValues.java
index 2583de8..b4b98a5 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/changes/PreAndPostValues.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/PreAndPostValues.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.isis.core.runtime.services.changes;
+package org.apache.isis.core.runtime.system.transaction;
import java.util.Map;
import java.util.Objects;
diff --git a/core/runtime/src/test/java/org/apache/isis/core/runtime/services/ServiceInstantiatorTest.java b/core/runtime/src/test/java/org/apache/isis/core/runtime/services/ServiceInstantiatorTest.java
deleted file mode 100644
index 4d5819d..0000000
--- a/core/runtime/src/test/java/org/apache/isis/core/runtime/services/ServiceInstantiatorTest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.isis.core.runtime.services;
-
-import org.junit.Ignore;
-import org.junit.Test;
-
-public class ServiceInstantiatorTest {
-
- @Test @Ignore("all tests moved to core/detached-tests")
- public void info() {
-
- }
-}
diff --git a/example/application/simpleapp/application/pom.xml b/example/application/simpleapp/application/pom.xml
index 0ee27b6..9343d31 100644
--- a/example/application/simpleapp/application/pom.xml
+++ b/example/application/simpleapp/application/pom.xml
@@ -107,8 +107,7 @@
<groupId>${project.groupId}</groupId>
<artifactId>simpleapp-module-spring</artifactId>
</dependency>
-
-
+
<!-- TESTS -->
<dependency>
<groupId>${project.groupId}</groupId>
diff --git a/example/application/simpleapp/module-simple/pom.xml b/example/application/simpleapp/module-simple/pom.xml
index 018248c..55f1b4f 100644
--- a/example/application/simpleapp/module-simple/pom.xml
+++ b/example/application/simpleapp/module-simple/pom.xml
@@ -145,12 +145,11 @@
<artifactId>isis-core-plugins-jdo-datanucleus-5</artifactId>
</dependency>
-
<dependency>
<groupId>org.apache.isis.core</groupId>
<artifactId>isis-core-plugins-jaxrs-resteasy-4</artifactId>
</dependency>
-
+
<!-- TESTS -->
<dependency>