Author: rmannibucau
Date: Sat Jul 21 22:04:32 2012
New Revision: 1364180
URL: http://svn.apache.org/viewvc?rev=1364180&view=rev
Log:
some cache on property placeholder
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/util/PropertyPlaceHolderHelper.java
Modified:
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/util/PropertyPlaceHolderHelper.java
URL:
http://svn.apache.org/viewvc/openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/util/PropertyPlaceHolderHelper.java?rev=1364180&r1=1364179&r2=1364180&view=diff
==============================================================================
---
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/util/PropertyPlaceHolderHelper.java
(original)
+++
openejb/trunk/openejb/container/openejb-core/src/main/java/org/apache/openejb/util/PropertyPlaceHolderHelper.java
Sat Jul 21 22:04:32 2012
@@ -23,6 +23,7 @@ import org.apache.openejb.loader.SystemI
public final class PropertyPlaceHolderHelper {
private static final String PREFIX = "${";
private static final String SUFFIX = "}";
+ private static final Properties CACHE = new Properties();
private PropertyPlaceHolderHelper() {
// no-op
@@ -33,10 +34,16 @@ public final class PropertyPlaceHolderHe
return key;
}
- final String value =
SystemInstance.get().getOptions().get(key.substring(2, key.length() - 1), key);
+ String value = CACHE.getProperty(key);
+ if (value != null) {
+ return value;
+ }
+
+ value = SystemInstance.get().getOptions().get(key.substring(2,
key.length() - 1), key);
if (!value.equals(key) && value.startsWith("java:")) {
- return value.substring(5);
+ value = value.substring(5);
}
+ CACHE.setProperty(key, value);
return value;
}