From 64fa14787b2b4b7b30756a360a34a55631e592f6 Mon Sep 17 00:00:00 2001 From: slaws Date: Fri, 16 Mar 2012 08:20:24 +0000 Subject: TUSCANY-4028 - don't duplicate intents on the Java implementation model git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1301369 13f79535-47bb-0310-9956-ffa450edef68 --- .../apache/tuscany/sca/assembly/xml/CompositeProcessor.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'sca-java-2.x/trunk/modules/assembly-xml/src') diff --git a/sca-java-2.x/trunk/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java b/sca-java-2.x/trunk/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java index e32171a0ee..4b2f32c4c2 100644 --- a/sca-java-2.x/trunk/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java +++ b/sca-java-2.x/trunk/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java @@ -1106,7 +1106,7 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt //for this that is resolved, the specified intents and policysets are safe in the //component and not lost - List policySets = new ArrayList(implementation.getPolicySets()); + List policySets = new ArrayList(implementation.getPolicySets()); List intents = new ArrayList(implementation.getRequiredIntents()); implementation = resolveImplementation(implementation, resolver, context); @@ -1117,7 +1117,15 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt implementation.getPolicySets().addAll(policySets); } - implementation.getRequiredIntents().addAll(intents); + //implementation.getRequiredIntents().addAll(intents); + + // Make sure we don't repeat any intents that are already on the + // resolved implementation + for (Intent intent : intents){ + if (!implementation.getRequiredIntents().contains(intent)){ + implementation.getRequiredIntents().add(intent); + } + } // resolve any policy on implementation operations for (Operation op : implementation.getOperations()){ -- cgit v1.2.3