diff options
Diffstat (limited to 'sandbox/event/modules/implementation-java-xml/src/main/java/org/apache')
-rw-r--r-- | sandbox/event/modules/implementation-java-xml/src/main/java/org/apache/tuscany/sca/implementation/java/xml/JavaImplementationProcessor.java | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/sandbox/event/modules/implementation-java-xml/src/main/java/org/apache/tuscany/sca/implementation/java/xml/JavaImplementationProcessor.java b/sandbox/event/modules/implementation-java-xml/src/main/java/org/apache/tuscany/sca/implementation/java/xml/JavaImplementationProcessor.java index 11934ec6bb..74a0e2a902 100644 --- a/sandbox/event/modules/implementation-java-xml/src/main/java/org/apache/tuscany/sca/implementation/java/xml/JavaImplementationProcessor.java +++ b/sandbox/event/modules/implementation-java-xml/src/main/java/org/apache/tuscany/sca/implementation/java/xml/JavaImplementationProcessor.java @@ -36,7 +36,9 @@ import javax.xml.stream.XMLStreamWriter; import org.apache.tuscany.sca.assembly.AssemblyFactory; import org.apache.tuscany.sca.assembly.ComponentType; import org.apache.tuscany.sca.assembly.ConfiguredOperation; +import org.apache.tuscany.sca.assembly.Consumer; import org.apache.tuscany.sca.assembly.OperationsConfigurator; +import org.apache.tuscany.sca.assembly.Producer; import org.apache.tuscany.sca.assembly.Property; import org.apache.tuscany.sca.assembly.Reference; import org.apache.tuscany.sca.assembly.Service; @@ -274,6 +276,26 @@ public class JavaImplementationProcessor implements StAXArtifactProcessor<JavaIm } impl.getServices().clear(); impl.getServices().addAll(serviceMap.values()); + + Map<String, Producer> producerMap = new HashMap<String, Producer>(); + for (Producer producer : impl.getProducers()) { + producerMap.put(producer.getName(), producer); + } + for (Producer producer : componentType.getProducers()) { + producerMap.put(producer.getName(), producer); + } + impl.getProducers().clear(); + impl.getProducers().addAll(producerMap.values()); + + Map<String, Consumer> consumerMap = new HashMap<String, Consumer>(); + for (Consumer consumer : impl.getConsumers()) { + consumerMap.put(consumer.getName(), consumer); + } + for (Consumer consumer : componentType.getConsumers()) { + consumerMap.put(consumer.getName(), consumer); + } + impl.getConsumers().clear(); + impl.getConsumers().addAll(consumerMap.values()); Map<String, Property> propMap = new HashMap<String, Property>(); for (Property prop : impl.getProperties()) { |