Author: rajikak
Date: Thu Aug  8 20:15:02 2013
New Revision: 1512015

URL: http://svn.apache.org/r1512015
Log:
fixed SYNAPSE-917. Added the patch by Isuru Udana Loku Narangoda.

Modified:
    
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/XMLConfigConstants.java
    
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/mediators/GetPropertyFunction.java

Modified: 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/XMLConfigConstants.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/XMLConfigConstants.java?rev=1512015&r1=1512014&r2=1512015&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/XMLConfigConstants.java
 (original)
+++ 
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/config/xml/XMLConfigConstants.java
 Thu Aug  8 20:15:02 2013
@@ -47,6 +47,10 @@ public class XMLConfigConstants {
     public static final String SCOPE_TRANSPORT = "transport";
     /** The scope name for registry properties */
     public static final String SCOPE_REGISTRY = "registry";
+
+    /** The scope name for the system properties  */
+    public static final String SCOPE_SYSTEM = "system";
+
     public static final String KEY = "key";
     public static final String RECEIVE = "receive";
 

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=1512015&r1=1512014&r2=1512015&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
 Thu Aug  8 20:15:02 2013
@@ -112,7 +112,8 @@ public class GetPropertyFunction impleme
                         !XMLConfigConstants.SCOPE_DEFAULT.equals(argOne) &&
                         !XMLConfigConstants.SCOPE_TRANSPORT.equals(argOne) &&
                             !XMLConfigConstants.SCOPE_REGISTRY.equals(argOne) 
&&
-                            !XMLConfigConstants.SCOPE_FUNC.equals(argOne)) {
+                            !XMLConfigConstants.SCOPE_FUNC.equals(argOne) &&
+                            !XMLConfigConstants.SCOPE_SYSTEM.equals(argOne)) {
                         return evaluate(XMLConfigConstants.SCOPE_DEFAULT, 
args.get(0),
                             args.get(1), context.getNavigator());
                     } else {
@@ -354,6 +355,17 @@ public class GetPropertyFunction impleme
                     return propEntry.getValue().toString();
                 }
             }
+        } else if (XMLConfigConstants.SCOPE_SYSTEM.equals(scope)) {
+            String val = System.getProperty(key);
+            if (val != null) {
+                return val;
+            } else {
+                if (traceOrDebugOn) {
+                    traceOrDebug(traceOn, "No system property is found for key 
'" + key + "'");
+                }
+                return NULL_STRING;
+            }
+
         } else {
             if (traceOrDebugOn) {
                 traceOrDebug(traceOn, "Invalid scope : '" + scope + "' has 
been set for the " +


Reply via email to