Author: isudana
Date: Sun Dec 25 17:12:21 2016
New Revision: 1776017
URL: http://svn.apache.org/viewvc?rev=1776017&view=rev
Log:
Avoid get-property() function in default scope look for entries from remote
registry
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/MessageContext.java
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/SynapseConfiguration.java
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/GetPropertyFunction.java
synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/TestMessageContext.java
synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/bsf/ScriptMessageContext.java
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/MessageContext.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/MessageContext.java?rev=1776017&r1=1776016&r2=1776017&view=diff
==============================================================================
---
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/MessageContext.java
(original)
+++
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/MessageContext.java
Sun Dec 25 17:12:21 2016
@@ -156,6 +156,14 @@ public interface MessageContext {
public Object getEntry(String key);
/**
+ * Get the value of a property set on the message instance or from the
local registry
+ *
+ * @param key key to look up property
+ * @return value for the given key
+ */
+ public Object getLocalEntry(String key);
+
+ /**
* Set a custom (local) property with the given name on the message
instance
* @param key key to be used
* @param value value to be saved
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/SynapseConfiguration.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/SynapseConfiguration.java?rev=1776017&r1=1776016&r2=1776017&view=diff
==============================================================================
---
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/SynapseConfiguration.java
(original)
+++
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/SynapseConfiguration.java
Sun Dec 25 17:12:21 2016
@@ -676,6 +676,23 @@ public class SynapseConfiguration implem
}
/**
+ * Get the resource from local registry
+ *
+ * @param key the key of the resource required
+ * @return value for the key
+ */
+ public Object getLocalRegistryEntry(String key) {
+ Object o = localRegistry.get(key);
+ if (o != null && o instanceof Entry) {
+ Entry entry = (Entry) o;
+ if (!entry.isDynamic()) { // Skip dynamic entries
+ return entry.getValue();
+ }
+ }
+ return null;
+ }
+
+ /**
* Get the resource with the given key
*
* @param key
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java?rev=1776017&r1=1776016&r2=1776017&view=diff
==============================================================================
---
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java
(original)
+++
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2MessageContext.java
Sun Dec 25 17:12:21 2016
@@ -199,6 +199,20 @@ public class Axis2MessageContext impleme
}
}
+ public Object getLocalEntry(String key) {
+ Object o = localEntries.get(key);
+ if (o != null && o instanceof Entry) {
+ return ((Entry) o).getValue();
+ } else {
+ Object e = getConfiguration().getLocalRegistryEntry(key);
+ if (e != null) {
+ localEntries.put(key, e);
+ return e;
+ }
+ }
+ return null;
+ }
+
/**
* Get a read-only view of all the properties currently set on this
* message context
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/GetPropertyFunction.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/GetPropertyFunction.java?rev=1776017&r1=1776016&r2=1776017&view=diff
==============================================================================
---
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/GetPropertyFunction.java
(original)
+++
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/GetPropertyFunction.java
Sun Dec 25 17:12:21 2016
@@ -267,7 +267,7 @@ public class GetPropertyFunction impleme
if (result != null) {
return result;
} else {
- return synCtx.getEntry(key);
+ return synCtx.getLocalEntry(key);
}
}
} else if (XMLConfigConstants.SCOPE_AXIS2.equals(scope)
Modified:
synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/TestMessageContext.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/TestMessageContext.java?rev=1776017&r1=1776016&r2=1776017&view=diff
==============================================================================
---
synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/TestMessageContext.java
(original)
+++
synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/TestMessageContext.java
Sun Dec 25 17:12:21 2016
@@ -95,6 +95,17 @@ public class TestMessageContext implemen
}
}
+ public Object getLocalEntry(String key) {
+ Object ret = properties.get(key);
+ if (ret != null) {
+ return ret;
+ } else if (getConfiguration() != null) {
+ return getConfiguration().getLocalRegistryEntry(key);
+ } else {
+ return null;
+ }
+ }
+
public void setProperty(String key, Object value) {
properties.put(key, value);
}
Modified:
synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/bsf/ScriptMessageContext.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/bsf/ScriptMessageContext.java?rev=1776017&r1=1776016&r2=1776017&view=diff
==============================================================================
---
synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/bsf/ScriptMessageContext.java
(original)
+++
synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/bsf/ScriptMessageContext.java
Sun Dec 25 17:12:21 2016
@@ -187,6 +187,10 @@ public class ScriptMessageContext implem
return mc.getEntry(key);
}
+ public Object getLocalEntry(String key) {
+ return mc.getLocalEntry(key);
+ }
+
public void setProperty(String key, Object value) {
if (value instanceof XMLObject) {
OMElement omElement = null;