Author: slaws
Date: Thu Nov 19 12:11:48 2009
New Revision: 882125
URL: http://svn.apache.org/viewvc?rev=882125&view=rev
Log:
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.
Modified:
tuscany/sandbox/slaws/runtimecompat/1xlauncher/src/main/java/launcher/OneXLauncher.java
tuscany/sandbox/slaws/runtimecompat/combinedlauncher/src/main/java/launcher/CombinedLauncher.java
Modified:
tuscany/sandbox/slaws/runtimecompat/1xlauncher/src/main/java/launcher/OneXLauncher.java
URL:
http://svn.apache.org/viewvc/tuscany/sandbox/slaws/runtimecompat/1xlauncher/src/main/java/launcher/OneXLauncher.java?rev=882125&r1=882124&r2=882125&view=diff
==============================================================================
---
tuscany/sandbox/slaws/runtimecompat/1xlauncher/src/main/java/launcher/OneXLauncher.java
(original)
+++
tuscany/sandbox/slaws/runtimecompat/1xlauncher/src/main/java/launcher/OneXLauncher.java
Thu Nov 19 12:11:48 2009
@@ -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 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();
}
}
Modified:
tuscany/sandbox/slaws/runtimecompat/combinedlauncher/src/main/java/launcher/CombinedLauncher.java
URL:
http://svn.apache.org/viewvc/tuscany/sandbox/slaws/runtimecompat/combinedlauncher/src/main/java/launcher/CombinedLauncher.java?rev=882125&r1=882124&r2=882125&view=diff
==============================================================================
---
tuscany/sandbox/slaws/runtimecompat/combinedlauncher/src/main/java/launcher/CombinedLauncher.java
(original)
+++
tuscany/sandbox/slaws/runtimecompat/combinedlauncher/src/main/java/launcher/CombinedLauncher.java
Thu Nov 19 12:11:48 2009
@@ -63,10 +63,11 @@
Bundle oneXLauncherbundle = equinoxHost.installBundle(new
URL("file:///C:/simon/tuscany/sandbox/runtimecompat/1xlauncher/target/1x-launcher.jar"),
"1xlauncherbundle");
System.out.println("Bundles loaded");
-/*
+
// load 2xcalculator
// find the the 2.x node launcher util
// Get the node runtime bundle.
+/*
Bundle twoXbundle = null;
for (Bundle b : bundleContext.getBundles()) {
if
(TWO_X_NODE_LAUNCHER_EQUINOX_BUNDLE.equals(b.getSymbolicName())) {
@@ -118,13 +119,8 @@
startMethod.invoke(node);
System.out.println("2.x Running");
-*/
-// try {
-// System.out.println("Waiting");
-// Thread.sleep(20000);
-// } catch (Exception ex) {
-//
-// }
+*/
+
// load 1xcalculator
// find the the 1.x node launcher
@@ -134,12 +130,11 @@
System.out.println("1.x Running");
-// try {
-// System.out.println("Press a key");
-// System.in.read();
-// } catch (Exception ex) {
-//
-// }
+ try {
+ System.out.println("Press a key");
+ System.in.read();
+ } catch (Exception ex) {
+ }
equinoxHost.stop();
}