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 2011/05/15 08:51:48 UTC
svn commit: r1103278 - in
/tuscany/sca-java-2.x/trunk/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution:
Contribution.java impl/ContributionImpl.java
Author: antelder
Date: Sun May 15 06:51:48 2011
New Revision: 1103278
URL: http://svn.apache.org/viewvc?rev=1103278&view=rev
Log:
Add a method to Contribution to merge in ContributionMetadata
Modified:
tuscany/sca-java-2.x/trunk/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/Contribution.java
tuscany/sca-java-2.x/trunk/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/impl/ContributionImpl.java
Modified: tuscany/sca-java-2.x/trunk/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/Contribution.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/Contribution.java?rev=1103278&r1=1103277&r2=1103278&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/Contribution.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/Contribution.java Sun May 15 06:51:48 2011
@@ -129,4 +129,6 @@ public interface Contribution extends Ar
* @return the model
*/
<T> T getArtifactModel(String uri);
+
+ void mergeMetaData(ContributionMetadata metaData);
}
\ No newline at end of file
Modified: tuscany/sca-java-2.x/trunk/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/impl/ContributionImpl.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/impl/ContributionImpl.java?rev=1103278&r1=1103277&r2=1103278&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/impl/ContributionImpl.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/impl/ContributionImpl.java Sun May 15 06:51:48 2011
@@ -22,12 +22,14 @@ package org.apache.tuscany.sca.contribut
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
+import java.util.ListIterator;
import java.util.Set;
import org.apache.tuscany.sca.assembly.Composite;
import org.apache.tuscany.sca.assembly.impl.ExtensibleImpl;
import org.apache.tuscany.sca.contribution.Artifact;
import org.apache.tuscany.sca.contribution.Contribution;
+import org.apache.tuscany.sca.contribution.ContributionMetadata;
import org.apache.tuscany.sca.contribution.Export;
import org.apache.tuscany.sca.contribution.Import;
import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
@@ -163,4 +165,23 @@ class ContributionImpl extends Extensibl
}
throw new IllegalArgumentException("artifact not found: " + uri);
}
+
+ @Override
+ public void mergeMetaData(ContributionMetadata metaData) {
+ imports.addAll(metaData.getImports());
+ exports.addAll(metaData.getExports());
+ if (metaData.getDeployables().size() > 0) {
+ // Update the deployable Composite objects with the correct Composite object for the artifact
+ for (Artifact a : getArtifacts()) {
+ if (a.getModel() instanceof Composite) {
+ for (ListIterator<Composite> lit = metaData.getDeployables().listIterator(); lit.hasNext();) {
+ if (lit.next().getName().equals(((Composite)a.getModel()).getName())) {
+ lit.set((Composite)a.getModel());
+ }
+ }
+ }
+ }
+ deployables.addAll(metaData.getDeployables());
+ }
+ }
}