summaryrefslogtreecommitdiffstats
path: root/sca-java-2.x/trunk/modules/domain-node/src/main/java/org/apache/tuscany/sca/node2/impl/NodeImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'sca-java-2.x/trunk/modules/domain-node/src/main/java/org/apache/tuscany/sca/node2/impl/NodeImpl.java')
-rw-r--r--sca-java-2.x/trunk/modules/domain-node/src/main/java/org/apache/tuscany/sca/node2/impl/NodeImpl.java13
1 files changed, 13 insertions, 0 deletions
diff --git a/sca-java-2.x/trunk/modules/domain-node/src/main/java/org/apache/tuscany/sca/node2/impl/NodeImpl.java b/sca-java-2.x/trunk/modules/domain-node/src/main/java/org/apache/tuscany/sca/node2/impl/NodeImpl.java
index 57d2f9d304..0a849784c5 100644
--- a/sca-java-2.x/trunk/modules/domain-node/src/main/java/org/apache/tuscany/sca/node2/impl/NodeImpl.java
+++ b/sca-java-2.x/trunk/modules/domain-node/src/main/java/org/apache/tuscany/sca/node2/impl/NodeImpl.java
@@ -68,6 +68,19 @@ public class NodeImpl implements Node {
this.extensionPointRegistry = extensionPointRegistry;
}
+ public String installContribution(String contributionURL) throws ContributionReadException, ActivationException, ValidationException {
+ int lastDot = contributionURL.lastIndexOf('.');
+ int lastSep = contributionURL.lastIndexOf("/");
+ String uri;
+ if (lastDot > -1 && lastSep > -1 && lastDot > lastSep) {
+ uri = contributionURL.substring(lastSep+1, lastDot);
+ } else {
+ uri = contributionURL;
+ }
+ installContribution(uri, contributionURL, null, null, true);
+ return uri;
+ }
+
public void installContribution(String uri, String contributionURL, String metaDataURL, List<String> dependentContributionURIs, boolean deployDeployables) throws ContributionReadException, ActivationException, ValidationException {
Monitor monitor = deployer.createMonitor();
Contribution contribution = deployer.loadContribution(URI.create(uri), IOHelper.getLocationAsURL(contributionURL), monitor);