summaryrefslogtreecommitdiffstats
path: root/sandbox/slaws/runtimecompat/1xlauncher/src/main/java/launcher/OneXLauncher.java
diff options
context:
space:
mode:
authorslaws <slaws@13f79535-47bb-0310-9956-ffa450edef68>2009-11-19 12:11:48 +0000
committerslaws <slaws@13f79535-47bb-0310-9956-ffa450edef68>2009-11-19 12:11:48 +0000
commit9f7063da37faea5c851a74ba1020ae21b17e7675 (patch)
tree2247c4b0179567771f4c071b763bc4926358a33f /sandbox/slaws/runtimecompat/1xlauncher/src/main/java/launcher/OneXLauncher.java
parent058091e1638ef785d79241b408a953676948afc0 (diff)
1.x is up and running in a bundle and able to run the calculator sample. Now to add back in the 2.x launch steps.
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@882125 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sandbox/slaws/runtimecompat/1xlauncher/src/main/java/launcher/OneXLauncher.java')
-rw-r--r--sandbox/slaws/runtimecompat/1xlauncher/src/main/java/launcher/OneXLauncher.java21
1 files changed, 21 insertions, 0 deletions
diff --git a/sandbox/slaws/runtimecompat/1xlauncher/src/main/java/launcher/OneXLauncher.java b/sandbox/slaws/runtimecompat/1xlauncher/src/main/java/launcher/OneXLauncher.java
index 215b211d13..89d3c99270 100644
--- a/sandbox/slaws/runtimecompat/1xlauncher/src/main/java/launcher/OneXLauncher.java
+++ b/sandbox/slaws/runtimecompat/1xlauncher/src/main/java/launcher/OneXLauncher.java
@@ -19,10 +19,13 @@
package launcher;
+import org.apache.tuscany.sca.node.SCAClient;
import org.apache.tuscany.sca.node.SCAContribution;
import org.apache.tuscany.sca.node.SCANode;
import org.apache.tuscany.sca.node.SCANodeFactory;
+import calculator.CalculatorService;
+
public class OneXLauncher {
public static void main(String[] args) throws Exception {
@@ -30,11 +33,29 @@ public class OneXLauncher {
}
public static void launchNode(){
+ // Set the TCCL to the classloader for the 1.x bundle. The node factory uses the
+ // TCCL to load the META-INF/services files and these are all in the 1.x bundle
+ // rather than the application classpath which is what TCCL is currently set to
+ Thread.currentThread().setContextClassLoader(SCANodeFactory.class.getClassLoader());
+
+ // Create node factory and then a node for out app.
SCANode node = SCANodeFactory.newInstance().createSCANode("Calculator.composite",
new SCAContribution("calculator", "../1xcalculator.jar"));
+
+ System.out.println("1.x Node created");
node.start();
+ System.out.println("1.x Node started");
+
+ CalculatorService calculatorService = ((SCAClient)node).getService(CalculatorService.class, "CalculatorServiceComponent");
+
+ // Calculate
+ System.out.println("3 + 2=" + calculatorService.add(3, 2));
+ System.out.println("3 - 2=" + calculatorService.subtract(3, 2));
+ System.out.println("3 * 2=" + calculatorService.multiply(3, 2));
+ System.out.println("3 / 2=" + calculatorService.divide(3, 2));
+
node.stop();
}
}