You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2018/08/23 09:48:52 UTC
[isis] 02/07: ISIS-1974: overloads
createDataNucleusApplicationComponents in PersistenceSessionFactory
This is an automated email from the ASF dual-hosted git repository.
danhaywood pushed a commit to branch maint-1.16.2
in repository https://gitbox.apache.org/repos/asf/isis.git
commit bd20faa6c64d3e7cb6aff71e7748a7fb132d9edf
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Wed Aug 22 13:23:40 2018 +0100
ISIS-1974: overloads createDataNucleusApplicationComponents in PersistenceSessionFactory
working towards removing SpecificationLoader, need to tease out use of RegisterEntities.
---
.../system/persistence/PersistenceSessionFactory.java | 17 +++++++++++------
1 file changed, 11 insertions(+), 6 deletions(-)
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSessionFactory.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSessionFactory.java
index 8a32edb..fc2849a 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSessionFactory.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSessionFactory.java
@@ -84,18 +84,23 @@ public class PersistenceSessionFactory implements ApplicationScopedComponent, Fi
private DataNucleusApplicationComponents createDataNucleusApplicationComponents(
final IsisConfiguration configuration, final SpecificationLoader specificationLoader) {
- if (applicationComponents == null || applicationComponents.isStale()) {
+ final RegisterEntities registerEntities = new RegisterEntities(configuration.asMap());
+
+ return createDataNucleusApplicationComponents(configuration, specificationLoader, registerEntities);
+ }
- final IsisConfiguration jdoObjectstoreConfig = configuration.createSubset(
- JDO_OBJECTSTORE_CONFIG_PREFIX);
+ private DataNucleusApplicationComponents createDataNucleusApplicationComponents(
+ final IsisConfiguration configuration,
+ final SpecificationLoader specificationLoader, final RegisterEntities registerEntities) {
+ final Set<String> classesToBePersisted = registerEntities.getEntityTypes();
+ if (applicationComponents == null || applicationComponents.isStale()) {
+
+ final IsisConfiguration jdoObjectstoreConfig = configuration.createSubset(JDO_OBJECTSTORE_CONFIG_PREFIX);
final IsisConfiguration dataNucleusConfig = configuration.createSubset(DATANUCLEUS_CONFIG_PREFIX);
final Map<String, String> datanucleusProps = dataNucleusConfig.asMap();
addDataNucleusPropertiesIfRequired(datanucleusProps);
- final RegisterEntities registerEntities = new RegisterEntities(configuration.asMap(), specificationLoader);
- final Set<String> classesToBePersisted = registerEntities.getEntityTypes();
-
applicationComponents = new DataNucleusApplicationComponents(jdoObjectstoreConfig, specificationLoader,
datanucleusProps, classesToBePersisted);
}