You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openjpa.apache.org by pc...@apache.org on 2006/07/25 21:49:48 UTC
svn commit: r425499 - in
/incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/conf:
AutoDetachValue.java OpenJPAConfigurationImpl.java
Author: pcl
Date: Tue Jul 25 12:49:48 2006
New Revision: 425499
URL: http://svn.apache.org/viewvc?rev=425499&view=rev
Log:
changed AutoDetachValue to extend StringListValue, more closely modeling its behavior in the Kodo configuration system; changed visibility of XML name conversion method
Modified:
incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/conf/AutoDetachValue.java
incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/conf/OpenJPAConfigurationImpl.java
Modified: incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/conf/AutoDetachValue.java
URL: http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/conf/AutoDetachValue.java?rev=425499&r1=425498&r2=425499&view=diff
==============================================================================
--- incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/conf/AutoDetachValue.java (original)
+++ incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/conf/AutoDetachValue.java Tue Jul 25 12:49:48 2006
@@ -16,8 +16,7 @@
package org.apache.openjpa.conf;
import org.apache.openjpa.kernel.AutoDetach;
-import org.apache.openjpa.lib.conf.Value;
-import serp.util.Strings;
+import org.apache.openjpa.lib.conf.StringListValue;
/**
* Value type used to represent auto detach flags. Separate to
@@ -27,7 +26,7 @@
* @nojavadoc
*/
class AutoDetachValue
- extends Value {
+ extends StringListValue {
public static final String DETACH_CLOSE = "close";
public static final String DETACH_COMMIT = "commit";
@@ -43,49 +42,30 @@
};
private int _flags;
+ private boolean _flagsSet;
public AutoDetachValue() {
super("AutoDetach");
setAliases(ALIASES);
+ setAliasListComprehensive(true);
}
public Class getValueType() {
return String[].class;
}
- public void set(int flags) {
+ public void setConstant(int flags) {
_flags = flags;
}
- public int get() {
- return _flags;
- }
-
- protected String getInternalString() {
- StringBuffer buf = new StringBuffer();
- String[] aliases = getAliases();
- boolean start = false;
- for (int i = 0; i < aliases.length; i += 2) {
- if ((_flags & Integer.parseInt(aliases[i + 1])) != 0) {
- buf.append(aliases[i]);
- if (start)
- buf.append(", ");
- else
- start = true;
- }
+ public int getConstant() {
+ if (!_flagsSet) {
+ String[] vals = get();
+ for (int i = 0; i < vals.length; i++)
+ _flags |= Integer.parseInt(unalias(vals[i]));
+ _flagsSet = true;
}
- return buf.toString();
- }
-
- public void setInternalString(String val) {
- String[] vals = Strings.split(val, ",", 0);
- for (int i = 0; i < vals.length; i++)
- _flags |= Integer.parseInt(unalias(vals[i]));
- }
-
- public void setInternalObject(Object val) {
- String[] vals = (String[]) val;
- for (int i = 0; i < vals.length; i++)
- _flags |= Integer.parseInt(unalias(vals[i]));
+
+ return _flags;
}
}
Modified: incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/conf/OpenJPAConfigurationImpl.java
URL: http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/conf/OpenJPAConfigurationImpl.java?rev=425499&r1=425498&r2=425499&view=diff
==============================================================================
--- incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/conf/OpenJPAConfigurationImpl.java (original)
+++ incubator/openjpa/trunk/openjpa-kernel/src/main/java/org/apache/openjpa/conf/OpenJPAConfigurationImpl.java Tue Jul 25 12:49:48 2006
@@ -1105,11 +1105,11 @@
}
public void setAutoDetach(int autoDetachFlags) {
- autoDetach.set(autoDetachFlags);
+ autoDetach.setConstant(autoDetachFlags);
}
public int getAutoDetachConstant() {
- return autoDetach.get();
+ return autoDetach.getConstant();
}
public void setDetachState(String detachState) {