summaryrefslogtreecommitdiffstats
path: root/sandbox/slaws/runtimecompat/2xlauncher
diff options
context:
space:
mode:
Diffstat (limited to 'sandbox/slaws/runtimecompat/2xlauncher')
-rw-r--r--sandbox/slaws/runtimecompat/2xlauncher/pom.xml19
-rw-r--r--sandbox/slaws/runtimecompat/2xlauncher/src/main/java/calculator/CalculatorService.java35
-rw-r--r--sandbox/slaws/runtimecompat/2xlauncher/src/main/java/launcher/TwoXLauncher.java19
3 files changed, 71 insertions, 2 deletions
diff --git a/sandbox/slaws/runtimecompat/2xlauncher/pom.xml b/sandbox/slaws/runtimecompat/2xlauncher/pom.xml
index e233ea16d4..c79f623674 100644
--- a/sandbox/slaws/runtimecompat/2xlauncher/pom.xml
+++ b/sandbox/slaws/runtimecompat/2xlauncher/pom.xml
@@ -27,6 +27,7 @@
<version>1.0-SNAPSHOT</version>
<artifactId>2x-launcher</artifactId>
<name>Apache Tuscany SCA 2.x Launcher</name>
+ <packaging>bundle</packaging>
<dependencies>
<dependency>
@@ -58,6 +59,22 @@
</dependencies>
<build>
- <finalName>${artifactId}</finalName>
+ <!-- finalName>${artifactId}</finalName-->
+ <plugins>
+
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <extensions>true</extensions>
+ <configuration>
+ <instructions>
+ <Import-Package>org.apache.tuscany.sca.node;version="[2.0.0,2.0.0]"</Import-Package>
+ <Export-Package>launcher</Export-Package>
+ <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
+ </instructions>
+ </configuration>
+ </plugin>
+
+ </plugins>
</build>
</project>
diff --git a/sandbox/slaws/runtimecompat/2xlauncher/src/main/java/calculator/CalculatorService.java b/sandbox/slaws/runtimecompat/2xlauncher/src/main/java/calculator/CalculatorService.java
new file mode 100644
index 0000000000..031fa8b912
--- /dev/null
+++ b/sandbox/slaws/runtimecompat/2xlauncher/src/main/java/calculator/CalculatorService.java
@@ -0,0 +1,35 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package calculator;
+
+
+/**
+ * The Calculator service interface.
+ */
+public interface CalculatorService {
+
+ double add(double n1, double n2);
+
+ double subtract(double n1, double n2);
+
+ double multiply(double n1, double n2);
+
+ double divide(double n1, double n2);
+
+}
diff --git a/sandbox/slaws/runtimecompat/2xlauncher/src/main/java/launcher/TwoXLauncher.java b/sandbox/slaws/runtimecompat/2xlauncher/src/main/java/launcher/TwoXLauncher.java
index 128617cb32..aa086c3b83 100644
--- a/sandbox/slaws/runtimecompat/2xlauncher/src/main/java/launcher/TwoXLauncher.java
+++ b/sandbox/slaws/runtimecompat/2xlauncher/src/main/java/launcher/TwoXLauncher.java
@@ -23,15 +23,32 @@ import org.apache.tuscany.sca.node.Contribution;
import org.apache.tuscany.sca.node.Node;
import org.apache.tuscany.sca.node.NodeFactory;
+import calculator.CalculatorService;
+
public class TwoXLauncher {
public static void main(String[] args) throws Exception {
+ TwoXLauncher.launchNode();
+ }
+
+ public static void launchNode(){
Node node = NodeFactory.newInstance().createNode("Calculator.composite",
new Contribution("calculator", "../2xcalculator.jar"));
+ System.out.println("2.x Node created");
+
node.start();
-
+
+ System.out.println("2.x Node started");
+
+ CalculatorService calculatorService = 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();
}