You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by jb...@apache.org on 2007/02/10 03:01:51 UTC

svn commit: r505613 - in /incubator/tuscany/java/sca: kernel/core/src/main/java/org/apache/tuscany/core/runtime/ runtime/standalone/launcher/src/main/java/org/apache/tuscany/launcher/ runtime/standalone/launcher/src/main/resources/org/apache/tuscany/la...

Author: jboynes
Date: Fri Feb  9 18:01:50 2007
New Revision: 505613

URL: http://svn.apache.org/viewvc?view=rev&rev=505613
Log:
produce meaningful error message if the component specified in the launcher command  is not found

Added:
    incubator/tuscany/java/sca/runtime/standalone/smoketest/src/test/resources/org/apache/tuscany/sca/runtime/standalone/smoketest/LauncherNoComponent.txt   (with props)
Modified:
    incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/runtime/AbstractRuntime.java
    incubator/tuscany/java/sca/runtime/standalone/launcher/src/main/java/org/apache/tuscany/launcher/Main.java
    incubator/tuscany/java/sca/runtime/standalone/launcher/src/main/resources/org/apache/tuscany/launcher/Main.properties
    incubator/tuscany/java/sca/runtime/standalone/smoketest/src/main/resources/META-INF/sca/default.scdl
    incubator/tuscany/java/sca/runtime/standalone/smoketest/src/test/java/org/apache/tuscany/sca/runtime/standalone/smoketest/SmokeTestLauncher.java

Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/runtime/AbstractRuntime.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/runtime/AbstractRuntime.java?view=diff&rev=505613&r1=505612&r2=505613
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/runtime/AbstractRuntime.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/runtime/AbstractRuntime.java Fri Feb  9 18:01:50 2007
@@ -190,6 +190,9 @@
 
     public ComponentContext getComponentContext(URI componentId) {
         Component component = componentManager.getComponent(componentId);
+        if (component == null) {
+            return null;
+        }
         return component.getComponentContext();
     }
 

Modified: incubator/tuscany/java/sca/runtime/standalone/launcher/src/main/java/org/apache/tuscany/launcher/Main.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/runtime/standalone/launcher/src/main/java/org/apache/tuscany/launcher/Main.java?view=diff&rev=505613&r1=505612&r2=505613
==============================================================================
--- incubator/tuscany/java/sca/runtime/standalone/launcher/src/main/java/org/apache/tuscany/launcher/Main.java (original)
+++ incubator/tuscany/java/sca/runtime/standalone/launcher/src/main/java/org/apache/tuscany/launcher/Main.java Fri Feb  9 18:01:50 2007
@@ -21,6 +21,7 @@
 import java.net.URI;
 import java.util.ResourceBundle;
 import java.util.concurrent.Callable;
+import java.text.MessageFormat;
 
 import org.osoa.sca.ComponentContext;
 import org.osoa.sca.ServiceReference;
@@ -48,6 +49,7 @@
     public static void main(String[] args) throws Throwable {
         if (args.length == 0) {
             usage();
+            throw new AssertionError();
         }
 
         StandaloneRuntimeInfo runtimeInfo = DirectoryHelper.createRuntimeInfo("launcher", Main.class);
@@ -57,6 +59,10 @@
             URI applicationURI = new URI(args[0]);
             String serviceName = applicationURI.getFragment();
             ComponentContext context = runtime.getComponentContext(applicationURI);
+            if (context == null) {
+                noComponent(applicationURI);
+                throw new AssertionError();
+            }
             ServiceReference<Callable> service;
             if (serviceName == null) {
                 service = context.createSelfReference(Callable.class);
@@ -72,8 +78,18 @@
     }
 
     private static void usage() {
-        ResourceBundle bundle = ResourceBundle.getBundle(Main.class.getName());
-        System.err.println(bundle.getString("org.apache.tuscany.launcher.Usage"));
+        System.err.println(getMessage("org.apache.tuscany.launcher.Usage"));
         System.exit(1);
+    }
+
+    private static void noComponent(URI applicationURI) {
+        System.err.println(getMessage("org.apache.tuscany.launcher.NoComponent", applicationURI));
+        System.exit(2);
+    }
+
+    private static String getMessage(String id, Object... params) {
+        ResourceBundle bundle = ResourceBundle.getBundle(Main.class.getName());
+        String message = bundle.getString(id);
+        return MessageFormat.format(message, params);
     }
 }

Modified: incubator/tuscany/java/sca/runtime/standalone/launcher/src/main/resources/org/apache/tuscany/launcher/Main.properties
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/runtime/standalone/launcher/src/main/resources/org/apache/tuscany/launcher/Main.properties?view=diff&rev=505613&r1=505612&r2=505613
==============================================================================
--- incubator/tuscany/java/sca/runtime/standalone/launcher/src/main/resources/org/apache/tuscany/launcher/Main.properties (original)
+++ incubator/tuscany/java/sca/runtime/standalone/launcher/src/main/resources/org/apache/tuscany/launcher/Main.properties Fri Feb  9 18:01:50 2007
@@ -18,3 +18,4 @@
 #  $Rev$ $Date$
 #
 org.apache.tuscany.launcher.Usage=usage: java [jvm-options] -jar launcher.jar <componentURI>
+org.apache.tuscany.launcher.NoComponent=No component found with id "{0}"

Modified: incubator/tuscany/java/sca/runtime/standalone/smoketest/src/main/resources/META-INF/sca/default.scdl
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/runtime/standalone/smoketest/src/main/resources/META-INF/sca/default.scdl?view=diff&rev=505613&r1=505612&r2=505613
==============================================================================
--- incubator/tuscany/java/sca/runtime/standalone/smoketest/src/main/resources/META-INF/sca/default.scdl (original)
+++ incubator/tuscany/java/sca/runtime/standalone/smoketest/src/main/resources/META-INF/sca/default.scdl Fri Feb  9 18:01:50 2007
@@ -22,7 +22,7 @@
            name="SmoketestComposite">
 
     <component name="Main">
-        <tuscany:launched class="org.apache.tuscany.sca.runtime.standalone.smoketest.Launched"/>
+        <implementation.java class="org.apache.tuscany.sca.runtime.standalone.smoketest.Launched"/>
         <reference name="hello" target="Hello"/>
     </component>
 

Modified: incubator/tuscany/java/sca/runtime/standalone/smoketest/src/test/java/org/apache/tuscany/sca/runtime/standalone/smoketest/SmokeTestLauncher.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/runtime/standalone/smoketest/src/test/java/org/apache/tuscany/sca/runtime/standalone/smoketest/SmokeTestLauncher.java?view=diff&rev=505613&r1=505612&r2=505613
==============================================================================
--- incubator/tuscany/java/sca/runtime/standalone/smoketest/src/test/java/org/apache/tuscany/sca/runtime/standalone/smoketest/SmokeTestLauncher.java (original)
+++ incubator/tuscany/java/sca/runtime/standalone/smoketest/src/test/java/org/apache/tuscany/sca/runtime/standalone/smoketest/SmokeTestLauncher.java Fri Feb  9 18:01:50 2007
@@ -45,6 +45,19 @@
         }
     }
 
+    public void testLauncherNoComponent() throws Exception {
+        ProcessBuilder pb = new ProcessBuilder("java", "-jar", launcher.getAbsolutePath(), "http://no.such.component");
+        pb.directory(installDir);
+        Process process = pb.start();
+        try {
+            compareOutput(loadResource("LauncherNoComponent.txt"), process.getErrorStream());
+            process.waitFor();
+            assertEquals(2, process.exitValue());
+        } finally {
+            process.destroy();
+        }
+    }
+
 /*
     public void testLauncherWithNoArgs() throws Exception {
         ProcessBuilder pb = new ProcessBuilder("java", "-jar", launcher.getAbsolutePath(), testJar.getAbsolutePath());

Added: incubator/tuscany/java/sca/runtime/standalone/smoketest/src/test/resources/org/apache/tuscany/sca/runtime/standalone/smoketest/LauncherNoComponent.txt
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/runtime/standalone/smoketest/src/test/resources/org/apache/tuscany/sca/runtime/standalone/smoketest/LauncherNoComponent.txt?view=auto&rev=505613
==============================================================================
--- incubator/tuscany/java/sca/runtime/standalone/smoketest/src/test/resources/org/apache/tuscany/sca/runtime/standalone/smoketest/LauncherNoComponent.txt (added)
+++ incubator/tuscany/java/sca/runtime/standalone/smoketest/src/test/resources/org/apache/tuscany/sca/runtime/standalone/smoketest/LauncherNoComponent.txt Fri Feb  9 18:01:50 2007
@@ -0,0 +1 @@
+No component found with id "http://no.such.component"

Propchange: incubator/tuscany/java/sca/runtime/standalone/smoketest/src/test/resources/org/apache/tuscany/sca/runtime/standalone/smoketest/LauncherNoComponent.txt
------------------------------------------------------------------------------
    svn:eol-style = native



---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org