You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2020/12/22 14:07:58 UTC

[isis] branch master updated: ISIS-2033: 'jdo-integration': move DnSettings to 'jdo-datanuclues'

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

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


The following commit(s) were added to refs/heads/master by this push:
     new 8429c55  ISIS-2033: 'jdo-integration': move DnSettings to 'jdo-datanuclues'
8429c55 is described below

commit 8429c5523243dbc88272791f57ba00daeaa2224b
Author: Andi Huber <ah...@apache.org>
AuthorDate: Tue Dec 22 15:06:48 2020 +0100

    ISIS-2033: 'jdo-integration': move DnSettings to 'jdo-datanuclues'
---
 .../jdo/datanucleus/IsisModuleJdoProviderDatanucleus.java      |  3 +++
 .../isis/persistence/jdo/datanucleus/config/DnSettings.java}   |  6 +++---
 .../persistence/jdo/integration/IsisModuleJdoIntegration.java  |  9 ---------
 .../integration/persistence/PersistenceSessionFactory5.java    |  6 +++---
 .../persistence/jdo/lightweight/IsisModuleJdoLightweight.java  | 10 +++++-----
 5 files changed, 14 insertions(+), 20 deletions(-)

diff --git a/persistence/jdo/datanucleus/src/main/java/org/apache/isis/persistence/jdo/datanucleus/IsisModuleJdoProviderDatanucleus.java b/persistence/jdo/datanucleus/src/main/java/org/apache/isis/persistence/jdo/datanucleus/IsisModuleJdoProviderDatanucleus.java
index ee2779b..8bbd142 100644
--- a/persistence/jdo/datanucleus/src/main/java/org/apache/isis/persistence/jdo/datanucleus/IsisModuleJdoProviderDatanucleus.java
+++ b/persistence/jdo/datanucleus/src/main/java/org/apache/isis/persistence/jdo/datanucleus/IsisModuleJdoProviderDatanucleus.java
@@ -26,6 +26,7 @@ import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.context.annotation.Import;
 
+import org.apache.isis.persistence.jdo.datanucleus.config.DnSettings;
 import org.apache.isis.persistence.jdo.datanucleus.config.DnEntityDiscoveryListener;
 import org.apache.isis.persistence.jdo.datanucleus.entities.DnEntityStateProvider;
 import org.apache.isis.persistence.jdo.datanucleus.mixins.Persistable_datanucleusIdLong;
@@ -49,6 +50,8 @@ import org.apache.isis.persistence.jdo.integration.exceprecog.ExceptionRecognize
     Persistable_downloadJdoMetadata.class,
     
     // @Service's
+    DnSettings.class,
+    
     ExceptionRecognizerForSQLIntegrityConstraintViolationUniqueOrIndexException.class,
     ExceptionRecognizerForJDODataStoreExceptionIntegrityConstraintViolationForeignKeyNoActionException.class,
     ExceptionRecognizerForJDOObjectNotFoundException.class,
diff --git a/persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/config/DataNucleusSettings.java b/persistence/jdo/datanucleus/src/main/java/org/apache/isis/persistence/jdo/datanucleus/config/DnSettings.java
similarity index 91%
rename from persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/config/DataNucleusSettings.java
rename to persistence/jdo/datanucleus/src/main/java/org/apache/isis/persistence/jdo/datanucleus/config/DnSettings.java
index a276c2b..5b2a004 100644
--- a/persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/config/DataNucleusSettings.java
+++ b/persistence/jdo/datanucleus/src/main/java/org/apache/isis/persistence/jdo/datanucleus/config/DnSettings.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.persistence.jdo.integration.config;
+package org.apache.isis.persistence.jdo.datanucleus.config;
 
 import java.util.Map;
 
@@ -34,11 +34,11 @@ import org.apache.isis.applib.annotation.OrderPrecedence;
  * @since 2.0
  */
 @Service
-@Named("isisJdoDn5.DataNucleusSettings")
+@Named("isisJdoDn.DnSettings")
 @Order(OrderPrecedence.EARLY)
 @Primary
 @Qualifier("Default")
-public class DataNucleusSettings {
+public class DnSettings {
 
     @Inject @Named("dn-settings") 
     private Map<String, String> dnSettings;
diff --git a/persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/IsisModuleJdoIntegration.java b/persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/IsisModuleJdoIntegration.java
index 67b9f03..2d17690 100644
--- a/persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/IsisModuleJdoIntegration.java
+++ b/persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/IsisModuleJdoIntegration.java
@@ -24,11 +24,6 @@ import org.springframework.context.annotation.Import;
 import org.apache.isis.core.runtime.IsisModuleCoreRuntime;
 import org.apache.isis.persistence.jdo.applib.IsisModulePersistenceJdoApplib;
 import org.apache.isis.persistence.jdo.datanucleus.IsisModuleJdoProviderDatanucleus;
-import org.apache.isis.persistence.jdo.integration.config.DataNucleusSettings;
-import org.apache.isis.persistence.jdo.integration.exceprecog.ExceptionRecognizerForJDODataStoreException;
-import org.apache.isis.persistence.jdo.integration.exceprecog.ExceptionRecognizerForJDODataStoreExceptionIntegrityConstraintViolationForeignKeyNoActionException;
-import org.apache.isis.persistence.jdo.integration.exceprecog.ExceptionRecognizerForJDOObjectNotFoundException;
-import org.apache.isis.persistence.jdo.integration.exceprecog.ExceptionRecognizerForSQLIntegrityConstraintViolationUniqueOrIndexException;
 import org.apache.isis.persistence.jdo.integration.jdosupport.IsisJdoSupportDN5;
 import org.apache.isis.persistence.jdo.integration.lifecycles.JdoPersistenceLifecycleService;
 import org.apache.isis.persistence.jdo.integration.metamodel.JdoIntegrationProgrammingModel;
@@ -47,10 +42,6 @@ import org.apache.isis.persistence.jdo.metamodel.IsisModuleJdoMetamodel;
         // @Component's
         JdoIntegrationProgrammingModel.class,
         
-        // @Service's
-        DataNucleusSettings.class,
-        
-        
         IsisJdoSupportDN5.class,
         IsisPlatformTransactionManagerForJdo.class,
         JdoPersistenceLifecycleService.class,
diff --git a/persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/persistence/PersistenceSessionFactory5.java b/persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/persistence/PersistenceSessionFactory5.java
index 5dfd3fd..664d080 100644
--- a/persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/persistence/PersistenceSessionFactory5.java
+++ b/persistence/jdo/integration/src/main/java/org/apache/isis/persistence/jdo/integration/persistence/PersistenceSessionFactory5.java
@@ -43,7 +43,7 @@ import org.apache.isis.core.config.beans.IsisBeanTypeRegistry;
 import org.apache.isis.core.metamodel.context.MetaModelContext;
 import org.apache.isis.persistence.jdo.applib.fixturestate.FixturesInstalledState;
 import org.apache.isis.persistence.jdo.applib.fixturestate.FixturesInstalledStateHolder;
-import org.apache.isis.persistence.jdo.integration.config.DataNucleusSettings;
+import org.apache.isis.persistence.jdo.datanucleus.config.DnSettings;
 import org.apache.isis.persistence.jdo.integration.config.JdoEntityTypeRegistry;
 
 import lombok.Getter;
@@ -97,7 +97,7 @@ implements PersistenceSessionFactory, FixturesInstalledStateHolder {
 
     private DataNucleusApplicationComponents5 createDataNucleusApplicationComponents() {
 
-        val dnSettings = metaModelContext.getServiceRegistry().lookupServiceElseFail(DataNucleusSettings.class);
+        val dnSettings = metaModelContext.getServiceRegistry().lookupServiceElseFail(DnSettings.class);
         val datanucleusProps = addDataNucleusPropertiesAsRequired(dnSettings);
         val classesToBePersisted = jdoEntityTypeRegistry.getEntityTypes(isisBeanTypeRegistry);
 
@@ -123,7 +123,7 @@ implements PersistenceSessionFactory, FixturesInstalledStateHolder {
                 metaModelContext.getSpecificationLoader());
     }
 
-    private Map<String, Object> addDataNucleusPropertiesAsRequired(DataNucleusSettings dnSettings) {
+    private Map<String, Object> addDataNucleusPropertiesAsRequired(DnSettings dnSettings) {
         
         val props = _Maps.<String, Object>newHashMap();
         props.putAll(dnSettings.getAsMap());
diff --git a/persistence/jdo/lightweight/src/main/java/org/apache/isis/persistence/jdo/lightweight/IsisModuleJdoLightweight.java b/persistence/jdo/lightweight/src/main/java/org/apache/isis/persistence/jdo/lightweight/IsisModuleJdoLightweight.java
index ec8eb16..232979f 100644
--- a/persistence/jdo/lightweight/src/main/java/org/apache/isis/persistence/jdo/lightweight/IsisModuleJdoLightweight.java
+++ b/persistence/jdo/lightweight/src/main/java/org/apache/isis/persistence/jdo/lightweight/IsisModuleJdoLightweight.java
@@ -20,7 +20,6 @@ package org.apache.isis.persistence.jdo.lightweight;
 
 import java.util.HashMap;
 import java.util.List;
-import java.util.Map;
 
 import javax.inject.Named;
 
@@ -34,6 +33,7 @@ import org.apache.isis.core.config.beans.IsisBeanTypeRegistry;
 import org.apache.isis.core.runtime.IsisModuleCoreRuntime;
 import org.apache.isis.persistence.jdo.applib.IsisModulePersistenceJdoApplib;
 import org.apache.isis.persistence.jdo.datanucleus.IsisModuleJdoProviderDatanucleus;
+import org.apache.isis.persistence.jdo.datanucleus.config.DnSettings;
 import org.apache.isis.persistence.jdo.lightweight.metamodel.JdoLightweightProgrammingModel;
 import org.apache.isis.persistence.jdo.lightweight.services.LightweightJdoSupport;
 import org.apache.isis.persistence.jdo.metamodel.IsisModuleJdoMetamodel;
@@ -73,14 +73,14 @@ public class IsisModuleJdoLightweight {
     public TransactionAwarePersistenceManagerFactoryProxy getTransactionAwarePersistenceManagerFactoryProxy(
             final LocalPersistenceManagerFactoryBean lpmfBean,
             final IsisBeanTypeRegistry beanTypeRegistry,
-            final @Named("dn-settings") Map<String, String> dnSettings,
+            final DnSettings dnSettings,
             final List<JdoEntityDiscoveryListener> jdoEntityDiscoveryListeners) {
         
         val pmf = lpmfBean.getObject();
         
         _NullSafe.stream(jdoEntityDiscoveryListeners)
         .forEach(listener->{
-            listener.onEntitiesDiscovered(pmf, beanTypeRegistry.getEntityTypesJdo(), dnSettings);    
+            listener.onEntitiesDiscovered(pmf, beanTypeRegistry.getEntityTypesJdo(), dnSettings.getAsMap());    
         });
         
         val tapmfProxy = new TransactionAwarePersistenceManagerFactoryProxy();
@@ -91,10 +91,10 @@ public class IsisModuleJdoLightweight {
     
     @Bean 
     public LocalPersistenceManagerFactoryBean getLocalPersistenceManagerFactoryBean(
-            final @Named("dn-settings") Map<String, String> dnSettings) {
+            final DnSettings dnSettings) {
         
         val jdoPropertyMap = new HashMap<String, Object>();
-        dnSettings.forEach(jdoPropertyMap::put);
+        dnSettings.getAsMap().forEach(jdoPropertyMap::put);
         
         val lpmfBean = new LocalPersistenceManagerFactoryBean();
         lpmfBean.setJdoPropertyMap(jdoPropertyMap);