You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openjpa.apache.org by cu...@apache.org on 2012/06/06 15:10:52 UTC
svn commit: r1346874 - in /openjpa/trunk:
openjpa-kernel/src/main/java/org/apache/openjpa/kernel/
openjpa-kernel/src/main/java/org/apache/openjpa/meta/
openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/meta/
Author: curtisr7
Date: Wed Jun 6 13:10:51 2012
New Revision: 1346874
URL: http://svn.apache.org/viewvc?rev=1346874&view=rev
Log:
OPENJPA-2209: Allow configuration of MetaDataRepository preloading with a lowercase property.
Modified:
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/AbstractBrokerFactory.java
openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/meta/MetaDataRepository.java
openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/meta/TestMetaDataRepository.java
Modified: openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/AbstractBrokerFactory.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/AbstractBrokerFactory.java?rev=1346874&r1=1346873&r2=1346874&view=diff
==============================================================================
--- openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/AbstractBrokerFactory.java (original)
+++ openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/AbstractBrokerFactory.java Wed Jun 6 13:10:51 2012
@@ -867,8 +867,7 @@ public abstract class AbstractBrokerFact
_conf.isConnectionFactoryModeManaged(), _conf.getConnectionRetainModeConstant(), false).close();
}
// Don't catch any exceptions here because we want to fail-fast if something bad happens when we're preloading.
- Options o = Configurations.parseProperties(Configurations.getProperties(_conf.getMetaDataRepository()));
- if (MetaDataRepository.needsPreload(o) == true) {
+ if (MetaDataRepository.needsPreload(_conf) == true) {
MetaDataRepository mdr = _conf.getMetaDataRepositoryInstance();
mdr.setValidate(MetaDataRepository.VALIDATE_RUNTIME, true);
mdr.setResolve(MetaDataRepository.MODE_MAPPING_INIT, true);
Modified: openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/meta/MetaDataRepository.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/meta/MetaDataRepository.java?rev=1346874&r1=1346873&r2=1346874&view=diff
==============================================================================
--- openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/meta/MetaDataRepository.java (original)
+++ openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/meta/MetaDataRepository.java Wed Jun 6 13:10:51 2012
@@ -44,6 +44,7 @@ import org.apache.openjpa.enhance.PCRegi
import org.apache.openjpa.event.LifecycleEventManager;
import org.apache.openjpa.lib.conf.Configurable;
import org.apache.openjpa.lib.conf.Configuration;
+import org.apache.openjpa.lib.conf.Configurations;
import org.apache.openjpa.lib.log.Log;
import org.apache.openjpa.lib.util.Closeable;
import org.apache.openjpa.lib.util.J2DoPrivHelper;
@@ -2460,8 +2461,11 @@ public class MetaDataRepository implemen
return new XMLFieldMetaData(type, name);
}
- public static boolean needsPreload(Options o) {
- if (o.getBooleanProperty(PRELOAD_STR) == true) {
+ public static boolean needsPreload(OpenJPAConfiguration conf) {
+ if (conf == null)
+ return false;
+ Options o = Configurations.parseProperties(Configurations.getProperties(conf.getMetaDataRepository()));
+ if (o.getBooleanProperty(PRELOAD_STR) == true || o.getBooleanProperty(PRELOAD_STR.toLowerCase()) == true) {
return true;
}
return false;
Modified: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/meta/TestMetaDataRepository.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/meta/TestMetaDataRepository.java?rev=1346874&r1=1346873&r2=1346874&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/meta/TestMetaDataRepository.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/meta/TestMetaDataRepository.java Wed Jun 6 13:10:51 2012
@@ -21,6 +21,8 @@ package org.apache.openjpa.persistence.m
import java.util.Collection;
import org.apache.openjpa.enhance.PCRegistry;
+import org.apache.openjpa.lib.conf.Configurations;
+import org.apache.openjpa.lib.util.Options;
import org.apache.openjpa.meta.ClassMetaData;
import org.apache.openjpa.meta.MetaDataRepository;
import org.apache.openjpa.meta.QueryMetaData;
@@ -98,4 +100,14 @@ public class TestMetaDataRepository exte
closeEMF(emf);
}
}
+
+ public void testPreloadConfiguration() {
+ OpenJPAEntityManagerFactorySPI emf = createNamedEMF(PU_NAME, "openjpa.MetaDataRepository", "preload=true");
+ assertTrue(MetaDataRepository.needsPreload(emf.getConfiguration()));
+ emf.close();
+
+ emf = createNamedEMF(PU_NAME, "openjpa.MetaDataRepository", "Preload=true");
+ assertTrue(MetaDataRepository.needsPreload(emf.getConfiguration()));
+ emf.close();
+ }
}