You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by an...@apache.org on 2010/07/05 21:02:07 UTC
svn commit: r960660 - in
/tuscany/sca-java-2.x/trunk/modules/shell/src/main/java/org/apache/tuscany/sca/shell:
JLine.java Shell.java
Author: antelder
Date: Mon Jul 5 19:02:07 2010
New Revision: 960660
URL: http://svn.apache.org/viewvc?rev=960660&view=rev
Log:
Update stop command to support stopping individual contributions and composites
Modified:
tuscany/sca-java-2.x/trunk/modules/shell/src/main/java/org/apache/tuscany/sca/shell/JLine.java
tuscany/sca-java-2.x/trunk/modules/shell/src/main/java/org/apache/tuscany/sca/shell/Shell.java
Modified: tuscany/sca-java-2.x/trunk/modules/shell/src/main/java/org/apache/tuscany/sca/shell/JLine.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/shell/src/main/java/org/apache/tuscany/sca/shell/JLine.java?rev=960660&r1=960659&r2=960660&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/shell/src/main/java/org/apache/tuscany/sca/shell/JLine.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/shell/src/main/java/org/apache/tuscany/sca/shell/JLine.java Mon Jul 5 19:02:07 2010
@@ -32,6 +32,8 @@ import jline.ConsoleReader;
import jline.FileNameCompletor;
import jline.SimpleCompletor;
+import org.apache.tuscany.sca.runtime.ActivationException;
+
/**
* Keep all the JLine specific code out of the Shell class so that it runs ok
* when jline isn't on the classpath.
@@ -48,7 +50,11 @@ public class JLine {
// Add a Ctrl-c listener
reader.addTriggeredAction((char)3, new ActionListener() {
public void actionPerformed(ActionEvent e) {
- shell.stop();
+ try {
+ shell.stop(null);
+ } catch (ActivationException e1) {
+ e1.printStackTrace();
+ }
System.exit(0);
}
});
Modified: tuscany/sca-java-2.x/trunk/modules/shell/src/main/java/org/apache/tuscany/sca/shell/Shell.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/shell/src/main/java/org/apache/tuscany/sca/shell/Shell.java?rev=960660&r1=960659&r2=960660&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/shell/src/main/java/org/apache/tuscany/sca/shell/Shell.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/shell/src/main/java/org/apache/tuscany/sca/shell/Shell.java Mon Jul 5 19:02:07 2010
@@ -180,14 +180,26 @@ public class Shell {
out.println(" listInstalledContributions");
out.println(" printDomainLevelComposite");
out.println(" status [<curi> <compositeUri>]");
- out.println(" stop");
+ out.println(" stop [<curi> <compositeUri>]");
out.println();
return true;
}
- boolean stop() {
- node.stop();
- return false;
+ boolean stop(List<String> toks) throws ActivationException {
+ if (toks == null || toks.size() < 2) {
+ node.stop();
+ return false;
+ }
+ String curi = toks.get(1);
+ if (toks.size() > 2) {
+ node.removeFromDomainLevelComposite(curi + "/" + toks.get(2));
+ } else {
+ for (String compositeURI : node.getDeployedCompostes(curi)) {
+ node.removeFromDomainLevelComposite(curi + "/" + compositeURI);
+ }
+ }
+
+ return true;
}
boolean status(final List<String> toks) {
@@ -211,7 +223,7 @@ public class Shell {
}
for (String compositeUri : dcs) {
for (Artifact a : c.getArtifacts()) {
- if (compositeUri.equals(curi + "/" + a.getURI())) {
+ if (compositeUri.equals(a.getURI())) {
out.println(" " + curi + " " + c.getLocation() + " " + compositeUri + " " + ((Composite)a.getModel()).getName());
}
}
@@ -272,8 +284,8 @@ public class Shell {
if (op.equals("help")) return new Callable<Boolean>() { public Boolean call() {
return help();
}};
- if (op.equals("stop")) return new Callable<Boolean>() { public Boolean call() {
- return stop();
+ if (op.equals("stop")) return new Callable<Boolean>() { public Boolean call() throws Exception {
+ return stop(toks);
}};
if (op.equals("status")) return new Callable<Boolean>() { public Boolean call() {
return status(toks);