You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openjpa.apache.org by ht...@apache.org on 2012/06/14 04:24:46 UTC
svn commit: r1350076 - in /openjpa/branches/2.2.x:
openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/
openjpa-kernel/src/main/java/org/apache/openjpa/kernel/
openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/
Author: hthomann
Date: Thu Jun 14 02:24:45 2012
New Revision: 1350076
URL: http://svn.apache.org/viewvc?rev=1350076&view=rev
Log:
OPENJPA-2139: Reverting previous changes to 2.2.x as we've found further considerartion/design is needed.
Modified:
openjpa/branches/2.2.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/MappingDefaultsImpl.java
openjpa/branches/2.2.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/MappingRepository.java
openjpa/branches/2.2.x/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/AbstractBrokerFactory.java
openjpa/branches/2.2.x/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/PersistenceMappingDefaults.java
Modified: openjpa/branches/2.2.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/MappingDefaultsImpl.java
URL: http://svn.apache.org/viewvc/openjpa/branches/2.2.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/MappingDefaultsImpl.java?rev=1350076&r1=1350075&r2=1350076&view=diff
==============================================================================
--- openjpa/branches/2.2.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/MappingDefaultsImpl.java (original)
+++ openjpa/branches/2.2.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/MappingDefaultsImpl.java Thu Jun 14 02:24:45 2012
@@ -51,7 +51,7 @@ import serp.util.Strings;
public class MappingDefaultsImpl
implements MappingDefaults, Configurable {
- private transient DBDictionary dict = null;
+ protected transient DBDictionary dict = null;
private String _baseClassStrategy = null;
private String _subclassStrategy = null;
private String _versionStrategy = null;
@@ -75,17 +75,6 @@ public class MappingDefaultsImpl
private DBIdentifier _orderName = DBIdentifier.NULL;
private DBIdentifier _nullIndName = DBIdentifier.NULL;
private boolean _removeHungarianNotation = false;
- private Configuration conf = null;
-
- /**
- * Convenient access to dictionary for mappings.
- */
- public DBDictionary getDBDictionary() {
- if (dict == null) {
- dict = ((JDBCConfiguration) conf).getDBDictionaryInstance();
- }
- return dict;
- }
public boolean isRemoveHungarianNotation() {
return _removeHungarianNotation;
@@ -576,10 +565,8 @@ public class MappingDefaultsImpl
public String getTableName(ClassMapping cls, Schema schema) {
String name = Strings.getClassName(cls.getDescribedType()).
replace(IdentifierUtil.DOLLAR_CHAR, IdentifierUtil.UNDERSCORE_CHAR);
- if (!_defMissing && getDBDictionary() != null) {
- name = getDBDictionary().getValidTableName(name, schema);
- }
-
+ if (!_defMissing)
+ name = dict.getValidTableName(name, schema);
return name;
}
@@ -598,9 +585,8 @@ public class MappingDefaultsImpl
DBIdentifier tableName = DBIdentifier.truncate(table.getIdentifier(),5);
sName = DBIdentifier.append(tableName, fm.getName());
}
- if (!_defMissing && getDBDictionary() != null){
- sName = getDBDictionary().getValidTableName(sName, schema);
- }
+ if (!_defMissing)
+ sName = dict.getValidTableName(sName, schema);
return sName;
}
@@ -622,14 +608,9 @@ public class MappingDefaultsImpl
if (!_defMissing || _removeHungarianNotation)
{
DBIdentifier name = col.getIdentifier();
- if (_removeHungarianNotation){
+ if (_removeHungarianNotation)
name = DBIdentifier.removeHungarianNotation(name);
- }
-
- DBIdentifier correctedName = name;
- if (getDBDictionary() != null) {
- correctedName = getDBDictionary().getValidColumnName(name, table);
- }
+ DBIdentifier correctedName = dict.getValidColumnName(name, table);
col.setIdentifier(correctedName);
table.addCorrectedColumnName(correctedName, true);
}
@@ -809,24 +790,16 @@ public class MappingDefaultsImpl
}
protected DBIdentifier getIndexName(DBIdentifier name, Table table, Column[] cols) {
- DBIdentifier toReturn = null;
-
// always use dict for index names because no spec mandates them
// based on defaults
DBIdentifier sName = name;
- if (DBIdentifier.isNull(sName)){
+ if (DBIdentifier.isNull(sName))
sName = cols[0].getIdentifier();
- }
- if (_removeHungarianNotation){
+ if (_removeHungarianNotation)
sName = DBIdentifier.removeHungarianNotation(sName);
- }
- if (getDBDictionary() != null) {
- toReturn = getDBDictionary().getValidIndexName(sName, table);
- }
-
- return toReturn;
+ return dict.getValidIndexName(sName, table);
}
/**
@@ -902,7 +875,7 @@ public class MappingDefaultsImpl
///////////////////////////////
public void setConfiguration(Configuration conf) {
- this.conf=conf;
+ dict = ((JDBCConfiguration) conf).getDBDictionaryInstance();
}
public void startConfiguration() {
Modified: openjpa/branches/2.2.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/MappingRepository.java
URL: http://svn.apache.org/viewvc/openjpa/branches/2.2.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/MappingRepository.java?rev=1350076&r1=1350075&r2=1350076&view=diff
==============================================================================
--- openjpa/branches/2.2.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/MappingRepository.java (original)
+++ openjpa/branches/2.2.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/meta/MappingRepository.java Thu Jun 14 02:24:45 2012
@@ -130,9 +130,6 @@ public class MappingRepository extends M
* Convenient access to dictionary for mappings.
*/
public DBDictionary getDBDictionary() {
- if (_dict == null) {
- _dict = ((JDBCConfiguration) getConfiguration()).getDBDictionaryInstance();
- }
return _dict;
}
@@ -828,8 +825,6 @@ public class MappingRepository extends M
*/
protected FieldStrategy defaultStrategy(FieldMapping field,
boolean installHandlers, boolean adapting) {
- DBDictionary dict = getDBDictionary();
-
// not persistent?
if (field.getManagement() != FieldMetaData.MANAGE_PERSISTENT
|| field.isVersion())
@@ -847,7 +842,7 @@ public class MappingRepository extends M
}
if (field.isSerialized()) {
- if (dict != null && dict.maxEmbeddedBlobSize != -1) {
+ if (_dict.maxEmbeddedBlobSize != -1) {
handler = defaultHandler(field, adapting);
if (handler != null) {
if (installHandlers)
@@ -870,7 +865,7 @@ public class MappingRepository extends M
// check for known field strategies
if (!field.isSerialized() && (field.getType() == byte[].class
|| field.getType() == Byte[].class)) {
- if (dict != null && dict.maxEmbeddedBlobSize != -1) {
+ if (_dict.maxEmbeddedBlobSize != -1) {
handler = defaultHandler(field, adapting);
if (handler != null) {
if (installHandlers)
@@ -881,7 +876,7 @@ public class MappingRepository extends M
} else if (!field.isSerialized()
&& (field.getType() == char[].class
|| field.getType() == Character[].class)) {
- if (dict != null && dict.maxEmbeddedClobSize != -1 && isClob(field, false)) {
+ if (_dict.maxEmbeddedClobSize != -1 && isClob(field, false)) {
handler = defaultHandler(field, adapting);
if (handler != null) {
if (installHandlers)
@@ -916,7 +911,7 @@ public class MappingRepository extends M
getLog().warn(_loc.get("no-field-strategy", field));
field.setSerialized(true);
}
- if (dict != null && dict.maxEmbeddedBlobSize == -1) {
+ if (_dict.maxEmbeddedBlobSize == -1) {
if (installHandlers)
field.setHandler(BlobValueHandler.getInstance());
return new HandlerFieldStrategy();
@@ -942,8 +937,7 @@ public class MappingRepository extends M
case JavaTypes.STRING:
if (!isClob(field, false))
return new StringFieldStrategy();
- DBDictionary dict = getDBDictionary();
- if (dict != null && dict.maxEmbeddedClobSize != -1)
+ if (_dict.maxEmbeddedClobSize != -1)
return new MaxEmbeddedClobFieldStrategy();
break;
case JavaTypes.PC:
@@ -1291,12 +1285,9 @@ public class MappingRepository extends M
* not take into account the named handler, if any.
*/
protected ValueHandler defaultHandler(ValueMapping val, boolean adapting) {
-
- DBDictionary dict = getDBDictionary();
-
if (val.isSerialized()) {
- if (dict != null && dict.maxEmbeddedBlobSize != -1)
- warnMaxEmbedded(val, dict.maxEmbeddedBlobSize);
+ if (_dict.maxEmbeddedBlobSize != -1)
+ warnMaxEmbedded(val, _dict.maxEmbeddedBlobSize);
return BlobValueHandler.getInstance();
}
@@ -1306,8 +1297,8 @@ public class MappingRepository extends M
if (val.getType() == byte[].class
|| val.getType() == Byte[].class) {
- if (dict != null && dict.maxEmbeddedBlobSize != -1)
- warnMaxEmbedded(val, dict.maxEmbeddedBlobSize);
+ if (_dict.maxEmbeddedBlobSize != -1)
+ warnMaxEmbedded(val, _dict.maxEmbeddedBlobSize);
return ByteArrayValueHandler.getInstance();
}
if (val.getType() == char[].class
@@ -1386,13 +1377,12 @@ public class MappingRepository extends M
Column col = (Column) cols.get(0);
if (col.getSize() != -1 && col.getType() != Types.CLOB)
return false;
-
- DBDictionary dict = getDBDictionary();
- if (dict != null && dict.getPreferredType(Types.CLOB) != Types.CLOB)
+
+ if (_dict.getPreferredType(Types.CLOB) != Types.CLOB)
return false;
- if (warn && dict != null && dict.maxEmbeddedClobSize != -1)
- warnMaxEmbedded(val, dict.maxEmbeddedClobSize);
+ if (warn && _dict.maxEmbeddedClobSize != -1)
+ warnMaxEmbedded(val, _dict.maxEmbeddedClobSize);
return true;
}
@@ -1517,6 +1507,7 @@ public class MappingRepository extends M
super.endConfiguration();
JDBCConfiguration conf = (JDBCConfiguration) getConfiguration();
+ _dict = conf.getDBDictionaryInstance();
if (_defaults == null)
_defaults = conf.getMappingDefaultsInstance();
if (_schema != null && _schema instanceof Configurable) {
Modified: openjpa/branches/2.2.x/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/AbstractBrokerFactory.java
URL: http://svn.apache.org/viewvc/openjpa/branches/2.2.x/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/AbstractBrokerFactory.java?rev=1350076&r1=1350075&r2=1350076&view=diff
==============================================================================
--- openjpa/branches/2.2.x/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/AbstractBrokerFactory.java (original)
+++ openjpa/branches/2.2.x/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/AbstractBrokerFactory.java Thu Jun 14 02:24:45 2012
@@ -612,9 +612,8 @@ public abstract class AbstractBrokerFact
_readOnly = true;
Log log = _conf.getLog(OpenJPAConfiguration.LOG_RUNTIME);
- if (log.isInfoEnabled()){
+ if (log.isInfoEnabled())
log.info(getFactoryInitializationBanner());
- }
if (log.isTraceEnabled()) {
Map<String,Object> props = _conf.toProperties(true);
String lineSep = J2DoPrivHelper.getLineSeparator();
@@ -652,10 +651,6 @@ public abstract class AbstractBrokerFact
_conf.getBrokerFactoryEventManager().fireEvent(
new BrokerFactoryEvent(this,
BrokerFactoryEvent.BROKER_FACTORY_CREATED));
- } catch (RuntimeException e) {
- // if the db connection is not available we need to reset the state
- _readOnly = false;
- throw e;
} finally {
unlock();
}
Modified: openjpa/branches/2.2.x/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/PersistenceMappingDefaults.java
URL: http://svn.apache.org/viewvc/openjpa/branches/2.2.x/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/PersistenceMappingDefaults.java?rev=1350076&r1=1350075&r2=1350076&view=diff
==============================================================================
--- openjpa/branches/2.2.x/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/PersistenceMappingDefaults.java (original)
+++ openjpa/branches/2.2.x/openjpa-persistence-jdbc/src/main/java/org/apache/openjpa/persistence/jdbc/PersistenceMappingDefaults.java Thu Jun 14 02:24:45 2012
@@ -38,7 +38,6 @@ import org.apache.openjpa.jdbc.meta.stra
import org.apache.openjpa.jdbc.schema.Column;
import org.apache.openjpa.jdbc.schema.Schema;
import org.apache.openjpa.jdbc.schema.Table;
-import org.apache.openjpa.jdbc.sql.DBDictionary;
import org.apache.openjpa.jdbc.sql.JoinSyntaxes;
import org.apache.openjpa.meta.FieldMetaData;
import org.apache.openjpa.meta.JavaTypes;
@@ -120,7 +119,7 @@ public class PersistenceMappingDefaults
if (FlatClassStrategy.ALIAS.equals(strat))
return new ValueMapDiscriminatorStrategy();
if (VerticalClassStrategy.ALIAS.equals(strat)
- && getDBDictionary() != null && getDBDictionary().joinSyntax != JoinSyntaxes.SYNTAX_TRADITIONAL)
+ && dict.joinSyntax != JoinSyntaxes.SYNTAX_TRADITIONAL)
return new SubclassJoinDiscriminatorStrategy();
return NoneDiscriminatorStrategy.getInstance();
}
@@ -199,18 +198,14 @@ public class PersistenceMappingDefaults
sName = DBIdentifier.newColumn(fm.getDefiningMapping().getTypeAlias());
DBIdentifier targetName = ((Column) target).getIdentifier();
DBIdentifier tempName = DBIdentifier.NULL;
- DBDictionary dict = getDBDictionary();
- if (dict != null && (sName.length() + targetName.length()) >= dict.maxColumnNameLength){
+ if ((sName.length() + targetName.length()) >= dict.maxColumnNameLength)
tempName = DBIdentifier.truncate(sName, dict.maxColumnNameLength
- targetName.length() - 1);
- }
// suffix with '_' + target column
if (DBIdentifier.isNull(tempName))
tempName = sName;
sName = DBIdentifier.combine(tempName, targetName.getName());
- if (dict != null) {
- sName = dict.getValidColumnName(sName, foreign);
- }
+ sName = dict.getValidColumnName(sName, foreign);
col.setIdentifier(sName);
}
@@ -247,9 +242,7 @@ public class PersistenceMappingDefaults
sName = sName.combine(sName, ((Column)target).getIdentifier().getName());
// No need to check for uniqueness.
- if(getDBDictionary() != null){
- sName = getDBDictionary().getValidColumnName(sName, local, false);
- }
+ sName = dict.getValidColumnName(sName, local, false);
}
col.setIdentifier(sName);
}