Author: antelder
Date: Sun Jul 13 01:31:53 2008
New Revision: 676277

URL: http://svn.apache.org/viewvc?rev=676277&view=rev
Log:
Add another createSCANode method while TUSCANY-2409 is looked at further

Modified:
    
tuscany/java/sca/modules/node2-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeFactoryImpl.java

Modified: 
tuscany/java/sca/modules/node2-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeFactoryImpl.java
URL: 
http://svn.apache.org/viewvc/tuscany/java/sca/modules/node2-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeFactoryImpl.java?rev=676277&r1=676276&r2=676277&view=diff
==============================================================================
--- 
tuscany/java/sca/modules/node2-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeFactoryImpl.java
 (original)
+++ 
tuscany/java/sca/modules/node2-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeFactoryImpl.java
 Sun Jul 13 01:31:53 2008
@@ -19,9 +19,13 @@
 
 package org.apache.tuscany.sca.node.impl;
 
+import java.io.File;
+import java.net.MalformedURLException;
+
 import org.apache.tuscany.sca.node.SCAContribution;
 import org.apache.tuscany.sca.node.SCANode2;
 import org.apache.tuscany.sca.node.SCANode2Factory;
+import org.osoa.sca.ServiceRuntimeException;
 
 /**
  * Default implementation of an SCA node factory.
@@ -51,4 +55,27 @@
     public SCANode2 createSCANode(String compositeURI, String 
compositeContent, SCAContribution... contributions) {
         return new NodeImpl(compositeURI, compositeContent, contributions);
     }
+
+    @Override
+    public SCANode2 createSCANode(String compositeURI) {
+        try {
+
+            File compositeFile = new File(compositeURI);
+            if (!compositeFile.exists()) {
+                throw new IllegalArgumentException("composite not found: " + 
compositeURI);
+            }
+
+            File compositeFolder = compositeFile.getParentFile();
+            SCAContribution contribution = new 
SCAContribution(compositeFolder.getName(), compositeFolder.toURL().toString());
+
+            SCANode2 node = createSCANode(compositeFile.getName(), 
contribution);
+
+            node.start();
+
+            return node;
+
+        } catch (MalformedURLException e) {
+            throw new ServiceRuntimeException(e);
+        }
+    }
 }


Reply via email to