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/02/15 17:14:27 UTC
[isis] branch 2033-IoC updated: ISIS-2033:
PersistenceServiceInternal* removed
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 0303c76 ISIS-2033: PersistenceServiceInternal* removed
0303c76 is described below
commit 0303c76271d76429b00fe48018ada2b34ae20f1b
Author: Andi Huber <ah...@apache.org>
AuthorDate: Fri Feb 15 18:14:22 2019 +0100
ISIS-2033: PersistenceServiceInternal* removed
Task-Url: https://issues.apache.org/jira/browse/ISIS-2033
---
.../applib/services/xactn/TransactionService.java | 7 ++++++
.../org/apache/isis/config/AppConfigLocator.java | 3 ++-
.../isis/core/metamodel/MetaModelContext.java | 16 ++++++--------
.../isis/core/metamodel/MetaModelContexts.java | 6 +++---
.../metamodel/adapter/ObjectAdapterProvider.java | 9 ++++++++
...ctionInvocationFacetForDomainEventAbstract.java | 7 +-----
...tySetterOrClearFacetForDomainEventAbstract.java | 3 ++-
...rnal.java => ObjectAdapterProviderService.java} | 9 +-------
.../services/title/TitleServiceDefault.java | 6 ++----
.../specimpl/ObjectActionParameterAbstract.java | 7 +-----
.../ObjectActionParameterContributeeAbstract.java | 4 +++-
.../OneToManyActionParameterContributee.java | 3 ++-
.../OneToOneActionParameterContributee.java | 3 ++-
.../facets/AbstractFacetFactoryJUnit4TestCase.java | 4 ++--
.../metamodel/facets/AbstractFacetFactoryTest.java | 6 +++---
.../parseable/ParseableFacetUsingParserTest.java | 4 ++--
.../ValueSemanticsProviderAbstractTestCase.java | 4 ++--
.../SpecificationLoaderTestAbstract.java | 8 +++----
.../specimpl/ObjectAssociationAbstractTest.java | 4 ++--
...ObjectAssociationAbstractTest_alwaysHidden.java | 4 ++--
...ObjectAdapterContext_ObjectAdapterProvider.java | 14 ++++++++++--
.../runtime/system/ObjectMemberAbstractTest.java | 4 ++--
.../WrapperFactoryDefaultTest_wrappedObject.java | 6 +++---
...FactoryDefaultTest_wrappedObject_transient.java | 6 +++---
.../runtime/system/ObjectMemberAbstractTest.java | 4 ++--
.../WrapperFactoryDefaultTest_wrappedObject.java | 6 +++---
...FactoryDefaultTest_wrappedObject_transient.java | 6 +++---
.../isis/core/wrapper/WrapperFactoryDefault.java | 16 +++-----------
.../handlers/DomainObjectInvocationHandler.java | 6 +-----
.../bookmarks/BookmarkServiceInternalDefault.java | 3 ---
.../factory/FactoryServiceInternalDefault.java | 10 +--------
...va => ObjectAdapterProviderServiceDefault.java} | 25 +++-------------------
.../services/xactn/TransactionServiceDefault.java | 11 ++++++++++
.../system/transaction/IsisTransaction.java | 9 ++++----
.../system/transaction/IsisTransactionManager.java | 8 +++----
.../system/ObjectActionLayoutXmlDefaultTest.java | 4 ++--
.../system/OneToManyAssociationDefaultTest.java | 4 ++--
37 files changed, 118 insertions(+), 141 deletions(-)
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/xactn/TransactionService.java b/core/applib/src/main/java/org/apache/isis/applib/services/xactn/TransactionService.java
index 2d78feb..ad57590 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/xactn/TransactionService.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/xactn/TransactionService.java
@@ -20,6 +20,7 @@
package org.apache.isis.applib.services.xactn;
import java.util.concurrent.CountDownLatch;
+import java.util.function.Supplier;
import org.apache.isis.applib.services.command.Command;
import org.apache.isis.applib.services.command.CommandContext;
@@ -110,10 +111,16 @@ public interface TransactionService {
*/
void nextTransaction(Policy policy, Command command);
+ void executeWithinTransaction(Runnable task);
+ <T> T executeWithinTransaction(Supplier<T> task);
public enum Policy {
UNLESS_MARKED_FOR_ABORT,
ALWAYS
}
+
+
+
+
}
diff --git a/core/config/src/main/java/org/apache/isis/config/AppConfigLocator.java b/core/config/src/main/java/org/apache/isis/config/AppConfigLocator.java
index 1d15646..c5e6274 100644
--- a/core/config/src/main/java/org/apache/isis/config/AppConfigLocator.java
+++ b/core/config/src/main/java/org/apache/isis/config/AppConfigLocator.java
@@ -80,7 +80,8 @@ public final class AppConfigLocator {
"org.apache.isis.applib.services.user.UserService",
"org.apache.isis.applib.services.xactn.TransactionService",
- "org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal",
+ "org.apache.isis.core.metamodel.services.persistsession.ObjectAdapterProviderService",
+
"org.apache.isis.applib.services.wrapper.WrapperFactory",
"org.apache.isis.core.runtime.services.bookmarks.BookmarkServiceInternalDefault",
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/MetaModelContext.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/MetaModelContext.java
index e66c1e8..1e29b91 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/MetaModelContext.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/MetaModelContext.java
@@ -23,11 +23,11 @@ import org.apache.isis.applib.services.inject.ServiceInjector;
import org.apache.isis.applib.services.registry.ServiceRegistry;
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.context._Context;
import org.apache.isis.config.IsisConfiguration;
import org.apache.isis.core.metamodel.adapter.ObjectAdapterProvider;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
import org.apache.isis.core.security.authentication.AuthenticationSession;
@@ -68,11 +68,10 @@ public interface MetaModelContext {
ObjectSpecification getSpecification(Class<?> type);
- @Deprecated //TODO[2033] replace with getRepositoryService()
- PersistenceSessionServiceInternal getPersistenceSessionServiceInternal();
-
RepositoryService getRepositoryService();
+ TransactionService getTransactionService();
+
TransactionState getTransactionState();
// -- PRESET INSTANCES
@@ -140,11 +139,6 @@ public interface MetaModelContext {
return getMetaModelContext().getSpecification(type);
}
- @Deprecated
- public default PersistenceSessionServiceInternal getPersistenceSessionServiceInternal() {
- return getMetaModelContext().getPersistenceSessionServiceInternal();
- }
-
public default RepositoryService getRepositoryService() {
return getMetaModelContext().getRepositoryService();
}
@@ -153,6 +147,10 @@ public interface MetaModelContext {
return getMetaModelContext().getTransactionState();
}
+ public default TransactionService getTransactionService() {
+ return getMetaModelContext().getTransactionService();
+ }
+
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/MetaModelContexts.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/MetaModelContexts.java
index f65e2a0..bc11729 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/MetaModelContexts.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/MetaModelContexts.java
@@ -29,7 +29,7 @@ import org.apache.isis.commons.internal.cdi._CDI;
import org.apache.isis.config.IsisConfiguration;
import org.apache.isis.config.internal._Config;
import org.apache.isis.core.metamodel.adapter.ObjectAdapterProvider;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
+import org.apache.isis.core.metamodel.services.persistsession.ObjectAdapterProviderService;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
import org.apache.isis.core.security.authentication.AuthenticationSession;
@@ -89,8 +89,8 @@ public final class MetaModelContexts {
_CDI.getSingleton(TitleService.class);
@Getter(lazy=true)
- private final PersistenceSessionServiceInternal persistenceSessionServiceInternal =
- _CDI.getSingleton(PersistenceSessionServiceInternal.class);
+ private final ObjectAdapterProviderService objectAdapterProviderService =
+ _CDI.getSingleton(ObjectAdapterProviderService.class);
@Getter(lazy=true)
private final RepositoryService repositoryService =
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/ObjectAdapterProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/ObjectAdapterProvider.java
index ca927a2..fec2471 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/ObjectAdapterProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/ObjectAdapterProvider.java
@@ -40,6 +40,8 @@ public interface ObjectAdapterProvider {
* @return standalone (value) or root adapter
*/
@Nullable ObjectAdapter adapterFor(@Nullable Object domainObject);
+
+ @Nullable ObjectAdapter adapterForServicePojo(Object servicePojo);
/**
* @return collection adapter.
@@ -101,6 +103,10 @@ public interface ObjectAdapterProvider {
default ObjectAdapter adapterFor(Object domainObject) {
return getObjectAdapterProvider().adapterFor(domainObject);
}
+
+ default ObjectAdapter adapterForServicePojo(Object servicePojo) {
+ return getObjectAdapterProvider().adapterFor(servicePojo);
+ }
default ObjectAdapter adapterForCollection(
final Object pojo,
@@ -138,6 +144,9 @@ public interface ObjectAdapterProvider {
}
}
+
+
+
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/ActionInvocationFacetForDomainEventAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/ActionInvocationFacetForDomainEventAbstract.java
index f5f09ec..99769cf 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/ActionInvocationFacetForDomainEventAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/ActionInvocationFacetForDomainEventAbstract.java
@@ -50,7 +50,6 @@ import org.apache.isis.applib.services.metamodel.MetaModelService;
import org.apache.isis.applib.services.metamodel.MetaModelService.Mode;
import org.apache.isis.applib.services.queryresultscache.QueryResultsCache;
import org.apache.isis.applib.services.registry.ServiceRegistry;
-import org.apache.isis.applib.services.xactn.TransactionService;
import org.apache.isis.commons.internal.base._Casts;
import org.apache.isis.commons.internal.base._Strings;
import org.apache.isis.core.commons.exceptions.IsisException;
@@ -135,7 +134,7 @@ implements ImperativeFacet {
final InteractionInitiatedBy interactionInitiatedBy) {
final ObjectAdapter executionResult =
- getPersistenceSessionServiceInternal().executeWithinTransaction(()->
+ getTransactionService().executeWithinTransaction(()->
doInvoke(owningAction, targetAdapter, mixedInAdapter, argumentAdapters, interactionInitiatedBy));
PersistableTypeGuard.instate(executionResult);
@@ -423,10 +422,6 @@ implements ImperativeFacet {
return serviceRegistry.lookupServiceElseFail(MetaModelService.class);
}
- private TransactionService getTransactionService() {
- return serviceRegistry.lookupServiceElseFail(TransactionService.class);
- }
-
private BookmarkService getBookmarkService() {
return serviceRegistry.lookupServiceElseFail(BookmarkService.class);
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/modify/PropertySetterOrClearFacetForDomainEventAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/modify/PropertySetterOrClearFacetForDomainEventAbstract.java
index d2fe800..bbe3028 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/modify/PropertySetterOrClearFacetForDomainEventAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/modify/PropertySetterOrClearFacetForDomainEventAbstract.java
@@ -153,7 +153,8 @@ extends SingleValueFacetAbstract<Class<? extends PropertyDomainEvent<?,?>>> {
final InteractionInitiatedBy interactionInitiatedBy) {
final ObjectAdapter mixedInAdapter = null;
- getPersistenceSessionServiceInternal().executeWithinTransaction(()->{
+
+ getTransactionService().executeWithinTransaction(()->{
doSetOrClearProperty(style, owningProperty, targetAdapter, mixedInAdapter, newValueAdapter, interactionInitiatedBy);
});
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/persistsession/PersistenceSessionServiceInternal.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/persistsession/ObjectAdapterProviderService.java
similarity index 78%
rename from core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/persistsession/PersistenceSessionServiceInternal.java
rename to core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/persistsession/ObjectAdapterProviderService.java
index 6ef32fe..eec3365 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/persistsession/PersistenceSessionServiceInternal.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/persistsession/ObjectAdapterProviderService.java
@@ -16,16 +16,9 @@
*/
package org.apache.isis.core.metamodel.services.persistsession;
-import java.util.function.Supplier;
-
import org.apache.isis.core.metamodel.adapter.ObjectAdapterProvider;
-public interface PersistenceSessionServiceInternal extends ObjectAdapterProvider.Delegating {
-
- // -- TRANSACTIONS
-
- void executeWithinTransaction(Runnable task);
+public interface ObjectAdapterProviderService extends ObjectAdapterProvider.Delegating {
- <T> T executeWithinTransaction(Supplier<T> task);
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/title/TitleServiceDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/title/TitleServiceDefault.java
index a5736ec..c51bff9 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/title/TitleServiceDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/title/TitleServiceDefault.java
@@ -27,12 +27,11 @@ import org.apache.isis.applib.services.title.TitleService;
import org.apache.isis.applib.services.wrapper.WrapperFactory;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.adapter.ObjectAdapterProvider;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
+import org.apache.isis.core.metamodel.services.persistsession.ObjectAdapterProviderService;
@Singleton
public class TitleServiceDefault implements TitleService {
- @Programmatic
@Override
public String titleOf(final Object domainObject) {
final ObjectAdapter objectAdapter = getObjectAdapterProvider().adapterFor(unwrapped(domainObject));
@@ -44,7 +43,6 @@ public class TitleServiceDefault implements TitleService {
}
}
- @Programmatic
@Override
public String iconNameOf(final Object domainObject) {
final ObjectAdapter objectAdapter = getObjectAdapterProvider().adapterFor(unwrapped(domainObject));
@@ -63,7 +61,7 @@ public class TitleServiceDefault implements TitleService {
return sessionServiceInternal;
}
- @Inject PersistenceSessionServiceInternal sessionServiceInternal;
+ @Inject ObjectAdapterProviderService sessionServiceInternal;
@Inject WrapperFactory wrapperFactory;
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionParameterAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionParameterAbstract.java
index bd4f2a3..931a94e 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionParameterAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionParameterAbstract.java
@@ -50,7 +50,7 @@ import org.apache.isis.core.metamodel.facets.param.defaults.ActionParameterDefau
import org.apache.isis.core.metamodel.interactions.ActionArgValidityContext;
import org.apache.isis.core.metamodel.interactions.InteractionUtils;
import org.apache.isis.core.metamodel.interactions.ValidityContext;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
+import org.apache.isis.core.metamodel.services.persistsession.ObjectAdapterProviderService;
import org.apache.isis.core.metamodel.spec.DomainModelException;
import org.apache.isis.core.metamodel.spec.ManagedObject;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
@@ -512,10 +512,5 @@ public abstract class ObjectActionParameterAbstract implements ObjectActionParam
return parentAction.getObjectAdapterProvider();
}
- protected PersistenceSessionServiceInternal getObjectPersistor() {
- return parentAction.getPersistenceSessionServiceInternal();
- }
-
-
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionParameterContributeeAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionParameterContributeeAbstract.java
index 9865105e..36f67e3 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionParameterContributeeAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectActionParameterContributeeAbstract.java
@@ -19,6 +19,7 @@ package org.apache.isis.core.metamodel.specloader.specimpl;
import java.util.List;
import org.apache.isis.core.commons.lang.ListExtensions;
+import org.apache.isis.core.metamodel.MetaModelContext;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.consent.InteractionInitiatedBy;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
@@ -54,7 +55,8 @@ implements ObjectActionParameterContributee {
}
protected ObjectAdapter getServiceAdapter() {
- return getObjectPersistor().adapterFor(servicePojo);
+ return MetaModelContext.current().getObjectAdapterProvider()
+ .adapterForServicePojo(servicePojo);
}
@Override
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToManyActionParameterContributee.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToManyActionParameterContributee.java
index 5d3ca65..0c94636 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToManyActionParameterContributee.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToManyActionParameterContributee.java
@@ -30,7 +30,8 @@ implements OneToManyActionParameter {
final ObjectActionParameterAbstract serviceActionParameter,
final int contributeeParamNumber,
final ObjectActionContributee contributeeAction) {
- super(FeatureType.ACTION_PARAMETER_COLLECTION, servicePojo, serviceActionParameter, contributeeParamNumber, contributeeAction);
+ super(FeatureType.ACTION_PARAMETER_COLLECTION, servicePojo,
+ serviceActionParameter, contributeeParamNumber, contributeeAction);
}
@Override
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToOneActionParameterContributee.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToOneActionParameterContributee.java
index f6fc3ef..ef95b8d 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToOneActionParameterContributee.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToOneActionParameterContributee.java
@@ -28,7 +28,8 @@ implements OneToOneActionParameter {
final ObjectActionParameterAbstract serviceActionParameter,
final int contributeeParamNumber,
final ObjectActionContributee contributeeAction) {
- super(FeatureType.ACTION_PARAMETER_SCALAR, servicePojo, serviceActionParameter, contributeeParamNumber, contributeeAction);
+ super(FeatureType.ACTION_PARAMETER_SCALAR, servicePojo,
+ serviceActionParameter, contributeeParamNumber, contributeeAction);
}
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/AbstractFacetFactoryJUnit4TestCase.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/AbstractFacetFactoryJUnit4TestCase.java
index 6d2697f..d36a424 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/AbstractFacetFactoryJUnit4TestCase.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/AbstractFacetFactoryJUnit4TestCase.java
@@ -40,7 +40,7 @@ import org.apache.isis.core.metamodel.facetapi.FeatureType;
import org.apache.isis.core.metamodel.facetapi.IdentifiedHolder;
import org.apache.isis.core.metamodel.facetapi.MethodRemover;
import org.apache.isis.core.metamodel.facets.object.domainobject.autocomplete.AutoCompleteFacetForDomainObjectAnnotation;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
+import org.apache.isis.core.metamodel.services.persistsession.ObjectAdapterProviderService;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
import org.apache.isis.core.metamodel.spec.feature.OneToManyAssociation;
import org.apache.isis.core.metamodel.spec.feature.OneToOneActionParameter;
@@ -58,7 +58,7 @@ public abstract class AbstractFacetFactoryJUnit4TestCase {
@Mock
protected SpecificationLoader mockSpecificationLoader;
@Mock
- protected PersistenceSessionServiceInternal mockPersistenceSessionServiceInternal;
+ protected ObjectAdapterProviderService mockPersistenceSessionServiceInternal;
@Mock
protected MethodRemover mockMethodRemover;
@Mock
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/AbstractFacetFactoryTest.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/AbstractFacetFactoryTest.java
index abeb75e..27aea20 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/AbstractFacetFactoryTest.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/AbstractFacetFactoryTest.java
@@ -34,7 +34,7 @@ import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facetapi.FacetHolderImpl;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
import org.apache.isis.core.metamodel.facetapi.IdentifiedHolder;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
+import org.apache.isis.core.metamodel.services.persistsession.ObjectAdapterProviderService;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
import org.apache.isis.core.security.authentication.AuthenticationSession;
@@ -67,7 +67,7 @@ public abstract class AbstractFacetFactoryTest extends TestCase {
protected AuthenticationSessionProvider mockAuthenticationSessionProvider;
protected AuthenticationSession mockAuthenticationSession;
- protected PersistenceSessionServiceInternal mockPersistenceSessionServiceInternal;
+ protected ObjectAdapterProviderService mockPersistenceSessionServiceInternal;
protected SpecificationLoader mockSpecificationLoader;
protected ProgrammableMethodRemover methodRemover;
@@ -112,7 +112,7 @@ public abstract class AbstractFacetFactoryTest extends TestCase {
mockTranslationService = context.mock(TranslationService.class);
mockAuthenticationSession = context.mock(AuthenticationSession.class);
- mockPersistenceSessionServiceInternal = context.mock(PersistenceSessionServiceInternal.class);
+ mockPersistenceSessionServiceInternal = context.mock(ObjectAdapterProviderService.class);
mockSpecificationLoader = context.mock(SpecificationLoader.class);
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/object/parseable/ParseableFacetUsingParserTest.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/object/parseable/ParseableFacetUsingParserTest.java
index 1d8b860..d76cdf6 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/object/parseable/ParseableFacetUsingParserTest.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/object/parseable/ParseableFacetUsingParserTest.java
@@ -20,7 +20,7 @@ package org.apache.isis.core.metamodel.facets.object.parseable;
import java.util.IllegalFormatWidthException;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
+import org.apache.isis.core.metamodel.services.persistsession.ObjectAdapterProviderService;
import org.apache.isis.core.security.authentication.AuthenticationSessionProvider;
import org.jmock.Expectations;
@@ -52,7 +52,7 @@ public class ParseableFacetUsingParserTest {
@Mock
private ServiceInjector mockServicesInjector;
@Mock
- private PersistenceSessionServiceInternal mockAdapterManager;
+ private ObjectAdapterProviderService mockAdapterManager;
private ParseableFacetUsingParser parseableFacetUsingParser;
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/value/ValueSemanticsProviderAbstractTestCase.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/value/ValueSemanticsProviderAbstractTestCase.java
index ecdd9b1..3818bad 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/value/ValueSemanticsProviderAbstractTestCase.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/value/ValueSemanticsProviderAbstractTestCase.java
@@ -38,7 +38,7 @@ import org.apache.isis.core.metamodel.facets.object.encodeable.encoder.Encodable
import org.apache.isis.core.metamodel.facets.object.parseable.ParseableFacet;
import org.apache.isis.core.metamodel.facets.object.parseable.parser.ParseableFacetUsingParser;
import org.apache.isis.core.metamodel.facets.object.value.vsp.ValueSemanticsProviderAndFacetAbstract;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
+import org.apache.isis.core.metamodel.services.persistsession.ObjectAdapterProviderService;
import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
import org.apache.isis.core.security.authentication.AuthenticationSessionProvider;
import org.apache.isis.core.unittestsupport.jmocking.JUnitRuleMockery2;
@@ -65,7 +65,7 @@ public abstract class ValueSemanticsProviderAbstractTestCase {
@Mock
protected ServiceInjector mockServicesInjector;
@Mock
- protected PersistenceSessionServiceInternal mockSessionServiceInternal;
+ protected ObjectAdapterProviderService mockSessionServiceInternal;
@Mock
protected SpecificationLoader mockSpecificationLoader;
@Mock
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/SpecificationLoaderTestAbstract.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/SpecificationLoaderTestAbstract.java
index 452f099..6d6c10a 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/SpecificationLoaderTestAbstract.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/SpecificationLoaderTestAbstract.java
@@ -46,7 +46,7 @@ import org.apache.isis.core.metamodel.facets.collections.modify.CollectionFacet;
import org.apache.isis.core.metamodel.facets.object.plural.PluralFacet;
import org.apache.isis.core.metamodel.metamodelvalidator.dflt.MetaModelValidatorDefault;
import org.apache.isis.core.metamodel.progmodel.ProgrammingModelAbstract.DeprecatedPolicy;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
+import org.apache.isis.core.metamodel.services.persistsession.ObjectAdapterProviderService;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
import org.apache.isis.core.security.authentication.AuthenticationSessionProvider;
import org.apache.isis.progmodels.dflt.ProgrammingModelFacetsJava5;
@@ -73,8 +73,8 @@ abstract class SpecificationLoaderTestAbstract {
}
@Produces
- PersistenceSessionServiceInternal mockPersistenceSessionServiceInternal() {
- return Mockito.mock(PersistenceSessionServiceInternal.class);
+ ObjectAdapterProviderService mockPersistenceSessionServiceInternal() {
+ return Mockito.mock(ObjectAdapterProviderService.class);
}
@Produces
@@ -114,7 +114,7 @@ abstract class SpecificationLoaderTestAbstract {
@Inject protected AuthenticationSessionProvider mockAuthenticationSessionProvider;
@Inject protected GridService2 mockGridService;
- @Inject protected PersistenceSessionServiceInternal mockPersistenceSessionServiceInternal;
+ @Inject protected ObjectAdapterProviderService mockPersistenceSessionServiceInternal;
@Inject protected MessageService mockMessageService;
@Inject protected SpecificationLoader specificationLoader;
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstractTest.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstractTest.java
index df673ae..1915617 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstractTest.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstractTest.java
@@ -40,7 +40,7 @@ import org.apache.isis.core.metamodel.facets.propcoll.notpersisted.NotPersistedF
import org.apache.isis.core.metamodel.facets.properties.choices.PropertyChoicesFacet;
import org.apache.isis.core.metamodel.interactions.UsabilityContext;
import org.apache.isis.core.metamodel.interactions.VisibilityContext;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
+import org.apache.isis.core.metamodel.services.persistsession.ObjectAdapterProviderService;
import org.apache.isis.core.metamodel.spec.ManagedObject;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
@@ -64,7 +64,7 @@ public class ObjectAssociationAbstractTest {
@Mock
private SpecificationLoader mockSpecificationLoader;
@Mock
- private PersistenceSessionServiceInternal mockPersistenceSessionServiceInternal;
+ private ObjectAdapterProviderService mockPersistenceSessionServiceInternal;
public static class Customer {
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstractTest_alwaysHidden.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstractTest_alwaysHidden.java
index d238861..82b81cb 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstractTest_alwaysHidden.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectAssociationAbstractTest_alwaysHidden.java
@@ -42,7 +42,7 @@ import org.apache.isis.core.metamodel.facets.all.hide.HiddenFacet;
import org.apache.isis.core.metamodel.facets.members.hidden.HiddenFacetAbstract;
import org.apache.isis.core.metamodel.interactions.UsabilityContext;
import org.apache.isis.core.metamodel.interactions.VisibilityContext;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
+import org.apache.isis.core.metamodel.services.persistsession.ObjectAdapterProviderService;
import org.apache.isis.core.metamodel.spec.ManagedObject;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
@@ -67,7 +67,7 @@ public class ObjectAssociationAbstractTest_alwaysHidden {
@Mock
private SpecificationLoader mockSpecificationLoader;
@Mock
- private PersistenceSessionServiceInternal mockPersistenceSessionServiceInternal;
+ private ObjectAdapterProviderService mockPersistenceSessionServiceInternal;
public static class Customer {
public String getFirstName() {
diff --git a/core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/persistence/adaptermanager/ObjectAdapterContext_ObjectAdapterProvider.java b/core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/persistence/adaptermanager/ObjectAdapterContext_ObjectAdapterProvider.java
index 94e96be..d9fd057 100644
--- a/core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/persistence/adaptermanager/ObjectAdapterContext_ObjectAdapterProvider.java
+++ b/core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/persistence/adaptermanager/ObjectAdapterContext_ObjectAdapterProvider.java
@@ -27,6 +27,7 @@ import java.util.stream.Stream;
import org.apache.isis.applib.services.inject.ServiceInjector;
import org.apache.isis.commons.internal.base._Lazy;
+import org.apache.isis.commons.internal.debug._Probe;
import org.apache.isis.core.commons.ensure.Assert;
import org.apache.isis.core.metamodel.MetaModelContext;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
@@ -55,8 +56,8 @@ import lombok.val;
*/
class ObjectAdapterContext_ObjectAdapterProvider implements ObjectAdapterProvider {
- @SuppressWarnings("unused")
- private static final Logger LOG = LoggerFactory.getLogger(ObjectAdapterContext_ObjectAdapterProvider.class);
+ private final static _Probe probe = _Probe.unlimited().label("ObjectAdapterContext_ObjectAdapterProvider");
+
private final ObjectAdapterContext objectAdapterContext;
// private final PersistenceSession persistenceSession;
private final ServiceInjector serviceInjector;
@@ -100,11 +101,18 @@ class ObjectAdapterContext_ObjectAdapterProvider implements ObjectAdapterProvide
return oidProviderForManagedContexts.adapterFor(managedObject, resolver);
}
+ probe.println("[2033] we should not need to fall through here any longer");
+
final RootOid rootOid = oidFactory.oidFor(pojo);
final ObjectAdapter newAdapter = objectAdapterContext.getFactories().createRootAdapter(pojo, rootOid);
return objectAdapterContext.injectServices(newAdapter);
}
+ @Override
+ public ObjectAdapter adapterForServicePojo(Object servicePojo) {
+ return adapterFor(servicePojo);
+ }
+
@Override
public ObjectAdapter adapterForCollection(Object pojo, RootOid parentOid, OneToManyAssociation collection) {
@@ -174,6 +182,8 @@ class ObjectAdapterContext_ObjectAdapterProvider implements ObjectAdapterProvide
})
.collect(Collectors.toMap(ServiceUtil::idOfAdapter, v->v, (o,n)->n, LinkedHashMap::new));
}
+
+
}
\ No newline at end of file
diff --git a/core/plugins/jdo-datanucleus-4/src/test/java/org/apache/isis/core/runtime/system/ObjectMemberAbstractTest.java b/core/plugins/jdo-datanucleus-4/src/test/java/org/apache/isis/core/runtime/system/ObjectMemberAbstractTest.java
index e2434a4..b9cd033 100644
--- a/core/plugins/jdo-datanucleus-4/src/test/java/org/apache/isis/core/runtime/system/ObjectMemberAbstractTest.java
+++ b/core/plugins/jdo-datanucleus-4/src/test/java/org/apache/isis/core/runtime/system/ObjectMemberAbstractTest.java
@@ -48,7 +48,7 @@ import org.apache.isis.core.metamodel.interactions.PropertyVisibilityContext;
import org.apache.isis.core.metamodel.interactions.UsabilityContext;
import org.apache.isis.core.metamodel.interactions.VisibilityContext;
import org.apache.isis.core.metamodel.services.ServiceInjectorBuilder_forTesting;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
+import org.apache.isis.core.metamodel.services.persistsession.ObjectAdapterProviderService;
import org.apache.isis.core.metamodel.services.registry.ServiceRegistryBuilder_forTesting;
import org.apache.isis.core.metamodel.spec.ManagedObject;
import org.apache.isis.core.metamodel.spec.ObjectSpecId;
@@ -85,7 +85,7 @@ public class ObjectMemberAbstractTest {
@Mock
private AuthenticationSessionProvider mockAuthenticationSessionProvider;
@Mock
- private PersistenceSessionServiceInternal mockPersistenceSessionServiceInternal;
+ private ObjectAdapterProviderService mockPersistenceSessionServiceInternal;
@Mock
private AuthenticationSession mockAuthenticationSession;
@Mock
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 4729ff1..c0699c8 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
@@ -55,7 +55,7 @@ import org.apache.isis.core.metamodel.facets.properties.update.init.PropertyInit
import org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacetViaModifyMethod;
import org.apache.isis.core.metamodel.facets.properties.validating.method.PropertyValidateFacetViaMethod;
import org.apache.isis.core.metamodel.services.command.CommandDtoServiceInternal;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
+import org.apache.isis.core.metamodel.services.persistsession.ObjectAdapterProviderService;
import org.apache.isis.core.metamodel.spec.ObjectSpecId;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
import org.apache.isis.core.metamodel.spec.feature.ObjectMember;
@@ -91,7 +91,7 @@ public class WrapperFactoryDefaultTest_wrappedObject {
@Mock
private AuthenticationSessionProvider mockAuthenticationSessionProvider;
@Mock
- private PersistenceSessionServiceInternal mockPersistenceSessionServiceInternal;
+ private ObjectAdapterProviderService mockPersistenceSessionServiceInternal;
@Mock
private MessageService mockMessageService;
@Mock
@@ -235,7 +235,7 @@ public class WrapperFactoryDefaultTest_wrappedObject {
wrapperFactory = createWrapperFactory();
- wrapperFactory.persistenceSessionServiceInternal = mockPersistenceSessionServiceInternal;
+// wrapperFactory.persistenceSessionServiceInternal = mockPersistenceSessionServiceInternal;
wrapperFactory.isisSessionFactory = mockIsisSessionFactory;
wrapperFactory.authenticationSessionProvider = mockAuthenticationSessionProvider;
diff --git a/core/plugins/jdo-datanucleus-4/src/test/java/org/apache/isis/core/wrapper/WrapperFactoryDefaultTest_wrappedObject_transient.java b/core/plugins/jdo-datanucleus-4/src/test/java/org/apache/isis/core/wrapper/WrapperFactoryDefaultTest_wrappedObject_transient.java
index b63e71d..74637f1 100644
--- a/core/plugins/jdo-datanucleus-4/src/test/java/org/apache/isis/core/wrapper/WrapperFactoryDefaultTest_wrappedObject_transient.java
+++ b/core/plugins/jdo-datanucleus-4/src/test/java/org/apache/isis/core/wrapper/WrapperFactoryDefaultTest_wrappedObject_transient.java
@@ -51,7 +51,7 @@ import org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacet;
import org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacetAbstractAlwaysEverywhere;
import org.apache.isis.core.metamodel.facets.properties.accessor.PropertyAccessorFacetViaAccessor;
import org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacetViaSetterMethod;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
+import org.apache.isis.core.metamodel.services.persistsession.ObjectAdapterProviderService;
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.dflt.ObjectSpecificationDefault;
@@ -79,7 +79,7 @@ public class WrapperFactoryDefaultTest_wrappedObject_transient {
private AuthenticationSessionProvider mockAuthenticationSessionProvider;
@Mock
- private PersistenceSessionServiceInternal mockPersistenceSessionServiceInternal;
+ private ObjectAdapterProviderService mockPersistenceSessionServiceInternal;
@Mock
private SpecificationLoader mockSpecificationLoader;
@Mock
@@ -127,7 +127,7 @@ public class WrapperFactoryDefaultTest_wrappedObject_transient {
wrapperFactory = createWrapperFactory();
wrapperFactory.authenticationSessionProvider = mockAuthenticationSessionProvider;
- wrapperFactory.persistenceSessionServiceInternal = mockPersistenceSessionServiceInternal;
+// wrapperFactory.persistenceSessionServiceInternal = mockPersistenceSessionServiceInternal;
wrapperFactory.isisSessionFactory = mockIsisSessionFactory;
context.checking(new Expectations() {
diff --git a/core/plugins/jdo-datanucleus-5/src/test/java/org/apache/isis/core/runtime/system/ObjectMemberAbstractTest.java b/core/plugins/jdo-datanucleus-5/src/test/java/org/apache/isis/core/runtime/system/ObjectMemberAbstractTest.java
index 6ee7de6..926b1ce 100644
--- a/core/plugins/jdo-datanucleus-5/src/test/java/org/apache/isis/core/runtime/system/ObjectMemberAbstractTest.java
+++ b/core/plugins/jdo-datanucleus-5/src/test/java/org/apache/isis/core/runtime/system/ObjectMemberAbstractTest.java
@@ -48,7 +48,7 @@ import org.apache.isis.core.metamodel.interactions.PropertyVisibilityContext;
import org.apache.isis.core.metamodel.interactions.UsabilityContext;
import org.apache.isis.core.metamodel.interactions.VisibilityContext;
import org.apache.isis.core.metamodel.services.ServiceInjectorBuilder_forTesting;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
+import org.apache.isis.core.metamodel.services.persistsession.ObjectAdapterProviderService;
import org.apache.isis.core.metamodel.services.registry.ServiceRegistryBuilder_forTesting;
import org.apache.isis.core.metamodel.spec.ManagedObject;
import org.apache.isis.core.metamodel.spec.ObjectSpecId;
@@ -85,7 +85,7 @@ public class ObjectMemberAbstractTest {
@Mock
private AuthenticationSessionProvider mockAuthenticationSessionProvider;
@Mock
- private PersistenceSessionServiceInternal mockPersistenceSessionServiceInternal;
+ private ObjectAdapterProviderService mockPersistenceSessionServiceInternal;
@Mock
private AuthenticationSession mockAuthenticationSession;
@Mock
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 0a1978d..38df08d 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
@@ -55,7 +55,7 @@ import org.apache.isis.core.metamodel.facets.properties.update.init.PropertyInit
import org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacetViaModifyMethod;
import org.apache.isis.core.metamodel.facets.properties.validating.method.PropertyValidateFacetViaMethod;
import org.apache.isis.core.metamodel.services.command.CommandDtoServiceInternal;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
+import org.apache.isis.core.metamodel.services.persistsession.ObjectAdapterProviderService;
import org.apache.isis.core.metamodel.spec.ObjectSpecId;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
import org.apache.isis.core.metamodel.spec.feature.ObjectMember;
@@ -91,7 +91,7 @@ public class WrapperFactoryDefaultTest_wrappedObject {
@Mock
private AuthenticationSessionProvider mockAuthenticationSessionProvider;
@Mock
- private PersistenceSessionServiceInternal mockPersistenceSessionServiceInternal;
+ private ObjectAdapterProviderService mockPersistenceSessionServiceInternal;
@Mock
private MessageService mockMessageService;
@Mock
@@ -235,7 +235,7 @@ public class WrapperFactoryDefaultTest_wrappedObject {
wrapperFactory = createWrapperFactory();
- wrapperFactory.persistenceSessionServiceInternal = mockPersistenceSessionServiceInternal;
+// wrapperFactory.persistenceSessionServiceInternal = mockPersistenceSessionServiceInternal;
wrapperFactory.isisSessionFactory = mockIsisSessionFactory;
wrapperFactory.authenticationSessionProvider = mockAuthenticationSessionProvider;
diff --git a/core/plugins/jdo-datanucleus-5/src/test/java/org/apache/isis/core/wrapper/WrapperFactoryDefaultTest_wrappedObject_transient.java b/core/plugins/jdo-datanucleus-5/src/test/java/org/apache/isis/core/wrapper/WrapperFactoryDefaultTest_wrappedObject_transient.java
index db10eac..10322ac 100644
--- a/core/plugins/jdo-datanucleus-5/src/test/java/org/apache/isis/core/wrapper/WrapperFactoryDefaultTest_wrappedObject_transient.java
+++ b/core/plugins/jdo-datanucleus-5/src/test/java/org/apache/isis/core/wrapper/WrapperFactoryDefaultTest_wrappedObject_transient.java
@@ -51,7 +51,7 @@ import org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacet;
import org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacetAbstractAlwaysEverywhere;
import org.apache.isis.core.metamodel.facets.properties.accessor.PropertyAccessorFacetViaAccessor;
import org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacetViaSetterMethod;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
+import org.apache.isis.core.metamodel.services.persistsession.ObjectAdapterProviderService;
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.dflt.ObjectSpecificationDefault;
@@ -79,7 +79,7 @@ public class WrapperFactoryDefaultTest_wrappedObject_transient {
private AuthenticationSessionProvider mockAuthenticationSessionProvider;
@Mock
- private PersistenceSessionServiceInternal mockPersistenceSessionServiceInternal;
+ private ObjectAdapterProviderService mockPersistenceSessionServiceInternal;
@Mock
private SpecificationLoader mockSpecificationLoader;
@Mock
@@ -127,7 +127,7 @@ public class WrapperFactoryDefaultTest_wrappedObject_transient {
wrapperFactory = createWrapperFactory();
wrapperFactory.authenticationSessionProvider = mockAuthenticationSessionProvider;
- wrapperFactory.persistenceSessionServiceInternal = mockPersistenceSessionServiceInternal;
+// wrapperFactory.persistenceSessionServiceInternal = mockPersistenceSessionServiceInternal;
wrapperFactory.isisSessionFactory = mockIsisSessionFactory;
context.checking(new Expectations() {
diff --git a/core/runtime-extensions/src/main/java/org/apache/isis/core/wrapper/WrapperFactoryDefault.java b/core/runtime-extensions/src/main/java/org/apache/isis/core/wrapper/WrapperFactoryDefault.java
index f9cb302..0ef6523 100644
--- a/core/runtime-extensions/src/main/java/org/apache/isis/core/wrapper/WrapperFactoryDefault.java
+++ b/core/runtime-extensions/src/main/java/org/apache/isis/core/wrapper/WrapperFactoryDefault.java
@@ -51,7 +51,6 @@ import org.apache.isis.applib.services.wrapper.events.PropertyUsabilityEvent;
import org.apache.isis.applib.services.wrapper.events.PropertyVisibilityEvent;
import org.apache.isis.applib.services.wrapper.listeners.InteractionListener;
import org.apache.isis.commons.internal.base._Casts;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
import org.apache.isis.core.runtime.system.session.IsisSessionFactory;
import org.apache.isis.core.security.authentication.AuthenticationSessionProvider;
import org.apache.isis.core.wrapper.dispatchers.InteractionEventDispatcher;
@@ -316,17 +315,8 @@ public class WrapperFactoryDefault implements WrapperFactory {
dispatcher.dispatch(interactionEvent);
}
-
- @Inject
- AuthenticationSessionProvider authenticationSessionProvider;
-
- @Inject
- PersistenceSessionServiceInternal persistenceSessionServiceInternal;
-
- @Inject
- IsisSessionFactory isisSessionFactory;
-
- @Inject
- FactoryService factoryService;
+ @Inject AuthenticationSessionProvider authenticationSessionProvider;
+ @Inject IsisSessionFactory isisSessionFactory;
+ @Inject FactoryService factoryService;
}
diff --git a/core/runtime-extensions/src/main/java/org/apache/isis/core/wrapper/handlers/DomainObjectInvocationHandler.java b/core/runtime-extensions/src/main/java/org/apache/isis/core/wrapper/handlers/DomainObjectInvocationHandler.java
index 4c9e84f..1a5700c 100644
--- a/core/runtime-extensions/src/main/java/org/apache/isis/core/wrapper/handlers/DomainObjectInvocationHandler.java
+++ b/core/runtime-extensions/src/main/java/org/apache/isis/core/wrapper/handlers/DomainObjectInvocationHandler.java
@@ -56,7 +56,7 @@ import org.apache.isis.core.metamodel.facets.ImperativeFacet;
import org.apache.isis.core.metamodel.facets.ImperativeFacet.Intent;
import org.apache.isis.core.metamodel.facets.object.mixin.MixinFacet;
import org.apache.isis.core.metamodel.interactions.ObjectTitleContext;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
+import org.apache.isis.core.metamodel.services.persistsession.ObjectAdapterProviderService;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
import org.apache.isis.core.metamodel.spec.feature.Contributed;
import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
@@ -959,9 +959,5 @@ public class DomainObjectInvocationHandler<T> extends DelegatingInvocationHandle
protected ObjectAdapterProvider getObjectAdapterProvider() {
return objectAdapterProvider;
}
-
- protected PersistenceSessionServiceInternal getPersistenceSessionService() {
- return (PersistenceSessionServiceInternal) objectAdapterProvider;
- }
}
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/bookmarks/BookmarkServiceInternalDefault.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/bookmarks/BookmarkServiceInternalDefault.java
index 16c6768..e770ff4 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/bookmarks/BookmarkServiceInternalDefault.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/bookmarks/BookmarkServiceInternalDefault.java
@@ -40,7 +40,6 @@ import org.apache.isis.applib.services.registry.ServiceRegistry;
import org.apache.isis.applib.services.wrapper.WrapperFactory;
import org.apache.isis.applib.tree.TreeState;
import org.apache.isis.commons.internal.base._Casts;
-import org.apache.isis.commons.internal.base._With;
import org.apache.isis.commons.internal.collections._Lists;
import org.apache.isis.commons.internal.collections._Maps;
import org.apache.isis.commons.internal.collections._Sets;
@@ -51,7 +50,6 @@ import org.apache.isis.core.metamodel.adapter.oid.Oid;
import org.apache.isis.core.metamodel.adapter.oid.Oid.Factory;
import org.apache.isis.core.metamodel.adapter.oid.RootOid;
import org.apache.isis.core.metamodel.exceptions.persistence.ObjectNotFoundException;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
import org.apache.isis.core.runtime.system.context.IsisContext;
@@ -273,7 +271,6 @@ public class BookmarkServiceInternalDefault implements BookmarkService, Serializ
// -- INJECTION
- @Inject PersistenceSessionServiceInternal persistenceSessionServiceInternal;
@Inject SpecificationLoader specificationLoader;
@Inject WrapperFactory wrapperFactory;
@Inject ServiceRegistry serviceRegistry;
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/factory/FactoryServiceInternalDefault.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/factory/FactoryServiceInternalDefault.java
index 619ebbc..e951d3d 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/factory/FactoryServiceInternalDefault.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/factory/FactoryServiceInternalDefault.java
@@ -26,13 +26,11 @@ import javax.inject.Inject;
import javax.inject.Singleton;
import org.apache.isis.applib.NonRecoverableException;
-import org.apache.isis.applib.annotation.Programmatic;
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.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.facets.object.mixin.MixinFacet;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
import org.apache.isis.core.runtime.system.context.IsisContext;
@@ -43,13 +41,11 @@ import lombok.val;
public class FactoryServiceInternalDefault implements FactoryService {
- @Programmatic
@Override
- @SuppressWarnings("unchecked")
public <T> T instantiate(final Class<T> domainClass) {
final ObjectSpecification spec = specificationLoader.loadSpecification(domainClass);
final ObjectAdapter adapter = doCreateTransientInstance(spec);
- return (T) adapter.getPojo();
+ return _Casts.uncheckedCast(adapter.getPojo());
}
/**
@@ -61,14 +57,11 @@ public class FactoryServiceInternalDefault implements FactoryService {
}
- @Programmatic
@Override
public <T> T m(final Class<T> mixinClass, final Object mixedIn) {
return mixin(mixinClass, mixedIn);
}
-
- @Programmatic
@Override
public <T> T mixin(final Class<T> mixinClass, final Object mixedIn) {
final ObjectSpecification objectSpec = specificationLoader.loadSpecification(mixinClass);
@@ -99,6 +92,5 @@ public class FactoryServiceInternalDefault implements FactoryService {
@Inject SpecificationLoader specificationLoader;
@Inject ServiceInjector serviceInjector;
- @Inject PersistenceSessionServiceInternal persistenceSessionServiceInternal;
}
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/persistsession/PersistenceSessionServiceInternalDefault.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/persistsession/ObjectAdapterProviderServiceDefault.java
similarity index 69%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/persistsession/PersistenceSessionServiceInternalDefault.java
rename to core/runtime/src/main/java/org/apache/isis/core/runtime/services/persistsession/ObjectAdapterProviderServiceDefault.java
index 2177342..2b3760d 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/persistsession/PersistenceSessionServiceInternalDefault.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/persistsession/ObjectAdapterProviderServiceDefault.java
@@ -21,38 +21,24 @@ package org.apache.isis.core.runtime.services.persistsession;
import static java.util.Objects.requireNonNull;
import static java.util.Optional.ofNullable;
-import java.util.function.Supplier;
-
import javax.inject.Inject;
import javax.inject.Singleton;
import org.apache.isis.applib.NonRecoverableException;
import org.apache.isis.core.metamodel.adapter.ObjectAdapterProvider;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
-import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
+import org.apache.isis.core.metamodel.services.persistsession.ObjectAdapterProviderService;
import org.apache.isis.core.runtime.system.persistence.PersistenceSession;
import org.apache.isis.core.runtime.system.session.IsisSession;
import org.apache.isis.core.runtime.system.session.IsisSessionFactory;
-import org.apache.isis.core.runtime.system.transaction.IsisTransactionManager;
-@Singleton
-public class PersistenceSessionServiceInternalDefault implements PersistenceSessionServiceInternal {
+@Singleton //FIXME [2033] this should replace the ObjectAdapterContext_ObjectAdapterProvider
+public class ObjectAdapterProviderServiceDefault implements ObjectAdapterProviderService {
@Override
public ObjectAdapterProvider getObjectAdapterProvider() {
return getPersistenceSession();
}
- @Override
- public void executeWithinTransaction(Runnable task) {
- getTransactionManager().executeWithinTransaction(task);
- }
-
- @Override
- public <T> T executeWithinTransaction(Supplier<T> task) {
- return getTransactionManager().executeWithinTransaction(task);
- }
-
protected PersistenceSession getPersistenceSession() {
return ofNullable(getIsisSessionFactory().getCurrentSession())
.map(IsisSession::getPersistenceSession)
@@ -63,11 +49,6 @@ public class PersistenceSessionServiceInternalDefault implements PersistenceSess
return requireNonNull(isisSessionFactory, "IsisSessionFactory was not injected.");
}
- public IsisTransactionManager getTransactionManager() {
- return getPersistenceSession().getTransactionManager();
- }
-
- @Inject SpecificationLoader specificationLoader;
@Inject IsisSessionFactory isisSessionFactory;
}
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/xactn/TransactionServiceDefault.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/xactn/TransactionServiceDefault.java
index 38af9bb..a939fdf 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/xactn/TransactionServiceDefault.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/xactn/TransactionServiceDefault.java
@@ -20,6 +20,7 @@
package org.apache.isis.core.runtime.services.xactn;
import java.util.concurrent.CountDownLatch;
+import java.util.function.Supplier;
import javax.inject.Inject;
import javax.inject.Singleton;
@@ -108,6 +109,16 @@ public class TransactionServiceDefault implements TransactionService {
IsisTransaction.State state = transaction.getState();
return state.getTransactionState();
}
+
+ @Override
+ public void executeWithinTransaction(Runnable task) {
+ isisTransactionManager().executeWithinTransaction(task);
+ }
+
+ @Override
+ public <T> T executeWithinTransaction(Supplier<T> task) {
+ return isisTransactionManager().executeWithinTransaction(task);
+ }
@Inject IsisSessionFactory isisSessionFactory;
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 669d1af..45a2df4 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
@@ -39,7 +39,6 @@ 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.apache.isis.core.runtime.services.persistsession.PersistenceSessionServiceInternalDefault;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -177,15 +176,15 @@ public class IsisTransaction implements TransactionScopedComponent, Transaction
public IsisTransaction(
final UUID interactionId,
final int sequence,
- final ServiceRegistry serviceRegistry) {
+ final ServiceRegistry serviceRegistry,
+ IsisTransactionManager transactionManager) {
this.interactionId = interactionId;
this.sequence = sequence;
// this.authenticationSession = authenticationSession;
- final PersistenceSessionServiceInternalDefault persistenceSessionService = serviceRegistry
- .lookupServiceElseFail(PersistenceSessionServiceInternalDefault.class);
- this.transactionManager = persistenceSessionService.getTransactionManager();
+
+ this.transactionManager = transactionManager;
// this.messageBroker = authenticationSession.getMessageBroker();
this.publishingServiceInternal = serviceRegistry.lookupServiceElseFail(PublishingServiceInternal.class);
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/IsisTransactionManager.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/IsisTransactionManager.java
index 5f10341..b19b6bf 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/IsisTransactionManager.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/transaction/IsisTransactionManager.java
@@ -134,7 +134,7 @@ public class IsisTransactionManager {
public void executeWithinTransaction(
final Command existingCommandIfAny,
final Runnable task) {
- final boolean initiallyInTransaction = inTransaction();
+ final boolean initiallyInTransaction = isInTransaction();
if (!initiallyInTransaction) {
startTransaction(existingCommandIfAny);
}
@@ -181,7 +181,7 @@ public class IsisTransactionManager {
public <Q> Q executeWithinTransaction(
final Command existingCommandIfAny,
final Supplier<Q> task) {
- final boolean initiallyInTransaction = inTransaction();
+ final boolean initiallyInTransaction = isInTransaction();
if (!initiallyInTransaction) {
startTransaction(existingCommandIfAny);
}
@@ -202,7 +202,7 @@ public class IsisTransactionManager {
}
}
- public boolean inTransaction() {
+ public boolean isInTransaction() {
return getCurrentTransaction() != null && !getCurrentTransaction().getState().isComplete();
}
@@ -240,7 +240,7 @@ public class IsisTransactionManager {
final UUID transactionId = command.getUniqueId();
this.currentTransaction = new IsisTransaction(transactionId,
- interaction.next(Interaction.Sequence.TRANSACTION.id()), serviceRegistry);
+ interaction.next(Interaction.Sequence.TRANSACTION.id()), serviceRegistry, this);
transactionLevel = 0;
persistenceSession.startTransaction();
diff --git a/core/runtime/src/test/java/org/apache/isis/core/runtime/system/ObjectActionLayoutXmlDefaultTest.java b/core/runtime/src/test/java/org/apache/isis/core/runtime/system/ObjectActionLayoutXmlDefaultTest.java
index 4eca47c..1160560 100644
--- a/core/runtime/src/test/java/org/apache/isis/core/runtime/system/ObjectActionLayoutXmlDefaultTest.java
+++ b/core/runtime/src/test/java/org/apache/isis/core/runtime/system/ObjectActionLayoutXmlDefaultTest.java
@@ -31,7 +31,7 @@ import org.apache.isis.applib.services.message.MessageService;
import org.apache.isis.core.metamodel.facets.FacetedMethod;
import org.apache.isis.core.metamodel.facets.all.named.NamedFacet;
import org.apache.isis.core.metamodel.facets.all.named.NamedFacetAbstract;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
+import org.apache.isis.core.metamodel.services.persistsession.ObjectAdapterProviderService;
import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
import org.apache.isis.core.metamodel.specloader.specimpl.ObjectActionDefault;
import org.apache.isis.core.security.authentication.AuthenticationSessionProvider;
@@ -61,7 +61,7 @@ public class ObjectActionLayoutXmlDefaultTest {
@Mock
private MessageService mockMessageService;
@Mock
- private PersistenceSessionServiceInternal mockPersistenceSessionServiceInternal;
+ private ObjectAdapterProviderService mockPersistenceSessionServiceInternal;
private ServiceInjector stubServicesInjector;
diff --git a/core/runtime/src/test/java/org/apache/isis/core/runtime/system/OneToManyAssociationDefaultTest.java b/core/runtime/src/test/java/org/apache/isis/core/runtime/system/OneToManyAssociationDefaultTest.java
index 7b751be..ef90b33 100644
--- a/core/runtime/src/test/java/org/apache/isis/core/runtime/system/OneToManyAssociationDefaultTest.java
+++ b/core/runtime/src/test/java/org/apache/isis/core/runtime/system/OneToManyAssociationDefaultTest.java
@@ -34,7 +34,7 @@ import org.apache.isis.core.metamodel.facets.FacetedMethod;
import org.apache.isis.core.metamodel.facets.all.named.NamedFacet;
import org.apache.isis.core.metamodel.facets.collections.modify.CollectionAddToFacet;
import org.apache.isis.core.metamodel.facets.propcoll.notpersisted.NotPersistedFacet;
-import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
+import org.apache.isis.core.metamodel.services.persistsession.ObjectAdapterProviderService;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
import org.apache.isis.core.metamodel.spec.feature.OneToManyAssociation;
import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
@@ -73,7 +73,7 @@ public class OneToManyAssociationDefaultTest {
@Mock
private MessageService mockMessageService;
@Mock
- private PersistenceSessionServiceInternal mockPersistenceSessionServiceInternal;
+ private ObjectAdapterProviderService mockPersistenceSessionServiceInternal;
@Mock
private FacetedMethod mockPeer;
@Mock