From f9c514bfc502606b4c8c7cb765276a5148910c6a Mon Sep 17 00:00:00 2001 From: antelder Date: Thu, 12 May 2011 11:54:25 +0000 Subject: Update the registry to use a single class for all the installed contribution attributes, and to correct the storing of running composites to be qualified by the contribution uri. As per a previous commit comment this is still work in progress so a little rough, but its getting closer now to show the type of thing thats needed git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1102252 13f79535-47bb-0310-9956-ffa450edef68 --- .../tuscany/sca/runtime/EndpointRegistry.java | 22 +++--- .../tuscany/sca/runtime/InstalledContribution.java | 85 ++++++++++++++++++++++ 2 files changed, 94 insertions(+), 13 deletions(-) create mode 100644 sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/InstalledContribution.java (limited to 'sca-java-2.x/trunk/modules/core-spi/src/main/java/org') diff --git a/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/EndpointRegistry.java b/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/EndpointRegistry.java index eaeb3373d6..8379841fe4 100644 --- a/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/EndpointRegistry.java +++ b/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/EndpointRegistry.java @@ -21,13 +21,13 @@ package org.apache.tuscany.sca.runtime; import java.util.Collection; import java.util.List; +import java.util.Map; import javax.xml.namespace.QName; import org.apache.tuscany.sca.assembly.Composite; import org.apache.tuscany.sca.assembly.Endpoint; import org.apache.tuscany.sca.assembly.EndpointReference; -import org.apache.tuscany.sca.contribution.Export; /** * The EndpointRegistry holds the active service endpoints for the SCA domain @@ -81,17 +81,13 @@ public interface EndpointRegistry { String getDomainURI(); - void addRunningComposite(Composite composite); - void removeRunningComposite(QName name); - Composite getRunningComposite(QName name); - List getRunningCompositeNames(); - - void installContribution(String uri, String url, List deployables, List exports); - List getInstalledContributionURIs(); - String getInstalledContributionURL(String uri); - List getInstalledContributionDeployables(String uri); - List getInstalledContributionExports(String uri); + void installContribution(InstalledContribution ic); void uninstallContribution(String uri); - - + List getInstalledContributionURIs(); + InstalledContribution getInstalledContribution(String uri); + + void addRunningComposite(String contributionURI, Composite composite); + void removeRunningComposite(String contributionURI, QName name); + Map> getRunningCompositeNames(); + Composite getRunningComposite(String contributionURI, QName name); } diff --git a/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/InstalledContribution.java b/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/InstalledContribution.java new file mode 100644 index 0000000000..322817cd71 --- /dev/null +++ b/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/runtime/InstalledContribution.java @@ -0,0 +1,85 @@ +/* + * 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 org.apache.tuscany.sca.runtime; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +public class InstalledContribution implements Serializable { + private static final long serialVersionUID = 1L; + + private String uri; + private String url; + private List dependentContributionURIs = new ArrayList(); + + // the URIs of the deployable composites within the contribution + private List deployables = new ArrayList(); + + private List exports = new ArrayList(); + + private String metaData; + private boolean overwriteMetaData; + + // the URI and XML content of composites to include in the contribution + private Map additionalDeployables = new HashMap(); + + public String getURI() { + return uri; + } + public void setURI(String uri) { + this.uri = uri; + } + public String getURL() { + return url; + } + public void setURL(String url) { + this.url = url; + } + public List getDeployables() { + return deployables; + } + public List getExports() { + return exports; + } + public void setDeployables(List deployables) { + this.deployables = deployables; + } + public List getDependentContributionURIs() { + return dependentContributionURIs; + } + public String getMetaData() { + return metaData; + } + public void setMetaData(String metaData) { + this.metaData = metaData; + } + public boolean isOverwriteMetaData() { + return overwriteMetaData; + } + public void setOverwriteMetaData(boolean overwriteMetaData) { + this.overwriteMetaData = overwriteMetaData; + } + public Map getAdditionalDeployables() { + return additionalDeployables; + } +} -- cgit v1.2.3