You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by an...@apache.org on 2010/04/13 12:12:18 UTC
svn commit: r933537 -
/tuscany/sca-java-2.x/trunk/modules/node-api/src/main/java/org/apache/tuscany/sca/node/NodeFactory.java
Author: antelder
Date: Tue Apr 13 10:12:18 2010
New Revision: 933537
URL: http://svn.apache.org/viewvc?rev=933537&view=rev
Log:
Add a NodeFactory newInstance method that takes a Properties object instead of a map or maps to configure the runtime, which makes it easier to use
Modified:
tuscany/sca-java-2.x/trunk/modules/node-api/src/main/java/org/apache/tuscany/sca/node/NodeFactory.java
Modified: tuscany/sca-java-2.x/trunk/modules/node-api/src/main/java/org/apache/tuscany/sca/node/NodeFactory.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/node-api/src/main/java/org/apache/tuscany/sca/node/NodeFactory.java?rev=933537&r1=933536&r2=933537&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/node-api/src/main/java/org/apache/tuscany/sca/node/NodeFactory.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/node-api/src/main/java/org/apache/tuscany/sca/node/NodeFactory.java Tue Apr 13 10:12:18 2010
@@ -31,8 +31,10 @@ import java.net.URL;
import java.net.URLConnection;
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.Properties;
import org.apache.tuscany.sca.node.configuration.DefaultNodeConfigurationFactory;
import org.apache.tuscany.sca.node.configuration.NodeConfiguration;
@@ -192,6 +194,28 @@ public abstract class NodeFactory extend
return nodeFactory;
}
+ public static NodeFactory newInstance(Properties properties) {
+ Map<String, Map<String, String>> attributes = new HashMap<String, Map<String,String>>();
+ for (String key : properties.stringPropertyNames()) {
+ int i = key.lastIndexOf('.');
+ String mk, m2k;
+ if (i > -1) {
+ mk = key.substring(0, i);
+ m2k = key.substring(i+1);
+ } else {
+ mk = "system";
+ m2k = key;
+ }
+ Map<String,String> m2 = attributes.get(mk);
+ if (m2 == null) {
+ m2 = new HashMap<String, String>();
+ attributes.put(mk, m2);
+ }
+ m2.put(m2k, properties.getProperty(key));
+ }
+ return newInstance(attributes);
+ }
+
/**
* Configure the NodeFactory instance
* @param attributes