Make ant script work for JSE launcher. compiles with base jar but doesn't run with it at the moment.

git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@944207 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
slaws 2010-05-14 11:13:42 +00:00
parent ccf04e9c15
commit d075bb720a
3 changed files with 134 additions and 7 deletions

View file

@ -0,0 +1,71 @@
<!--
* 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.
-->
<project name="binding-ws-calculator" default="run">
<property name="tuscany.home" value="../.."/>
<property name="jar.name" value="sample-launcher-embedded-jse.jar" />
<property name="main.class" value="launcher.SampleJSELauncher" />
<echo>${tuscany.home}</echo>
<target name="init">
<delete quiet="true" includeemptydirs="true">
<fileset dir="target"/>
</delete>
<mkdir dir="target/classes"/>
</target>
<target name="compile" depends="init">
<javac srcdir="src/main/java"
destdir="target/classes"
debug="on"
source="1.5"
target="1.5"
failonerror="true">
<classpath>
<fileset dir="${tuscany.home}/lib">
<include name="tuscany-base-*.jar" />
</fileset>
</classpath>
</javac>
<jar destfile="target/${jar.name}" basedir="target/classes">
<manifest>
<attribute name="Main-Class" value="${main.class}" />
</manifest>
</jar>
</target>
<target name="run" depends="compile">
<echo>Please use 'ant run-name-of-sample-contribution-to-run' </echo>
</target>
<target name="run-binding-ws-calculator" depends="compile">
<java classname="${main.class}"
fork="true"
failonerror="true">
<classpath>
<pathelement location="target/${jar.name}"/>
<fileset dir="${tuscany.home}/features">
<include name="tuscany-sca-manifest.jar" />
</fileset>
</classpath>
<arg value="binding-ws-calculator"/>
</java>
</target>
</project>

View file

@ -19,11 +19,10 @@
package launcher;
import static org.junit.Assert.assertEquals;
import org.apache.tuscany.sca.node.Contribution;
import org.apache.tuscany.sca.node.Node;
import org.apache.tuscany.sca.node.NodeFactory;
import org.oasisopen.sca.ServiceRuntimeException;
import calculator.CalculatorService;
@ -37,7 +36,22 @@ public class SampleJSELauncher {
public static void main(String[] args) throws Exception {
SampleJSELauncher launcher = new SampleJSELauncher();
launcher.launchBindingWSCalculator();
String contribution = null;
if (args == null || args.length != 1){
System.out.println("Please provide the name of the sample contribution to run as a parameter");
System.out.println("Running binding-ws-calculator by default");
contribution = "binding-ws-calculator";
} else {
contribution = args[0];
}
if (contribution.equals("binding-ws-calculator")){
launcher.launchBindingWSCalculator();
} else {
System.out.println("Sample contribution " + contribution + "not found");
}
}
public Node startNode(Contribution... contributions){
@ -54,10 +68,10 @@ public class SampleJSELauncher {
Node node = startNode(new Contribution("c1", "../binding-ws-calculator/target/classes"));
CalculatorService calculator = node.getService(CalculatorService.class, "CalculatorServiceComponent");
assertEquals(calculator.add(3, 2), 5.0, 0);
assertEquals(calculator.subtract(3, 2), 1.0, 0);
assertEquals(calculator.multiply(3, 2), 6.0, 0);
assertEquals(calculator.divide(3, 2), 1.5, 0);
// TODO - could use JUnit assertions but don't want to have to handle JUnit dependency from Ant script
if (calculator.add(3, 2) != 5.0){
throw new SampleLauncherException();
}
stopNode(node);
}

View file

@ -0,0 +1,42 @@
/*
* 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 launcher;
/**
* This exception signals problems in the management of SCA component execution.
*/
public class SampleLauncherException extends RuntimeException {
/**
* Constructs a SampleLauncherException with no detail message.
*/
public SampleLauncherException() {
super();
}
/**
* Constructs a SampleLauncherException with the specified detail
* message.
*
* @param message the detail message
*/
public SampleLauncherException(String message) {
super(message);
}
}