summaryrefslogtreecommitdiffstats
path: root/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany
diff options
context:
space:
mode:
Diffstat (limited to 'sandbox/event/modules/assembly/src/main/java/org/apache/tuscany')
-rw-r--r--sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AssemblyFactory.java44
-rw-r--r--sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Component.java14
-rw-r--r--sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentType.java15
-rw-r--r--sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/BaseConfigurationBuilderImpl.java86
-rw-r--r--sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/ComponentConfigurationBuilderImpl.java21
-rw-r--r--sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/CompositeBindingURIBuilderImpl.java20
-rw-r--r--sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/CompositeBuilderImpl.java13
-rw-r--r--sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AssemblyFactoryImpl.java32
-rw-r--r--sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentImpl.java12
-rw-r--r--sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentTypeImpl.java14
10 files changed, 262 insertions, 9 deletions
diff --git a/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AssemblyFactory.java b/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AssemblyFactory.java
index 8a4fc6dfda..04fd754427 100644
--- a/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AssemblyFactory.java
+++ b/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AssemblyFactory.java
@@ -81,6 +81,20 @@ public interface AssemblyFactory {
* @return a new component service
*/
ComponentService createComponentService();
+
+ /**
+ * Create a new component producer.
+ *
+ * @return a new component producer
+ */
+ ComponentProducer createComponentProducer();
+
+ /**
+ * Create a new component consumer.
+ *
+ * @return a new component consumer
+ */
+ ComponentConsumer createComponentConsumer();
/**
* Create a new component type
@@ -109,6 +123,21 @@ public interface AssemblyFactory {
* @return a new composite service
*/
CompositeService createCompositeService();
+
+
+ /**
+ * Create a new composite producer.
+ *
+ * @return a new composite producer
+ */
+ CompositeProducer createCompositeProducer();
+
+ /**
+ * Create a new composite consumer.
+ *
+ * @return a new composite consumer
+ */
+ CompositeConsumer createCompositeConsumer();
/**
* Create a new constraining type.
@@ -137,6 +166,21 @@ public interface AssemblyFactory {
* @return a new service
*/
Service createService();
+
+
+ /**
+ * Create a new producer.
+ *
+ * @return a new producer
+ */
+ Producer createProducer();
+
+ /**
+ * Create a new consumer.
+ *
+ * @return a new consumer
+ */
+ Consumer createConsumer();
/**
* Create a new wire.
diff --git a/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Component.java b/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Component.java
index 8e1943224c..b6bc55c7bd 100644
--- a/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Component.java
+++ b/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Component.java
@@ -85,6 +85,20 @@ public interface Component extends Base, Extensible, PolicySetAttachPoint, Clone
* @return a list of services exposed by the component
*/
List<ComponentService> getServices();
+
+ /**
+ * Returns a list of producers used by the component.
+ *
+ * @return a list of producers used by the component
+ */
+ List<ComponentProducer> getProducers();
+
+ /**
+ * Returns a list of consumers exposed by the component.
+ *
+ * @return a list of consumers exposed by the component
+ */
+ List<ComponentConsumer> getConsumers();
/**
* Returns a list of properties for the component.
diff --git a/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentType.java b/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentType.java
index e1ea65ea39..5f8cba585d 100644
--- a/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentType.java
+++ b/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentType.java
@@ -53,6 +53,21 @@ public interface ComponentType extends Base {
*/
List<Reference> getReferences();
+
+ /**
+ * Returns a list of consumers that are offered.
+ *
+ * @return a list of consumers that are offered
+ */
+ List<Consumer> getConsumers();
+
+ /**
+ * Returns the list of producer types that are used.
+ *
+ * @return the list of producer types that are used
+ */
+ List<Producer> getProducers();
+
/**
* Returns the list of properties that can be set.
*
diff --git a/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/BaseConfigurationBuilderImpl.java b/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/BaseConfigurationBuilderImpl.java
index 6f856986ad..0a4bd1939e 100644
--- a/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/BaseConfigurationBuilderImpl.java
+++ b/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/BaseConfigurationBuilderImpl.java
@@ -36,8 +36,12 @@ import org.apache.tuscany.sca.assembly.ComponentProperty;
import org.apache.tuscany.sca.assembly.ComponentReference;
import org.apache.tuscany.sca.assembly.ComponentService;
import org.apache.tuscany.sca.assembly.Composite;
+import org.apache.tuscany.sca.assembly.Consumer;
import org.apache.tuscany.sca.assembly.Contract;
+import org.apache.tuscany.sca.assembly.EventBinding;
+import org.apache.tuscany.sca.assembly.EventBindingFactory;
import org.apache.tuscany.sca.assembly.Implementation;
+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.SCABinding;
@@ -67,6 +71,7 @@ public abstract class BaseConfigurationBuilderImpl {
private AssemblyFactory assemblyFactory;
private SCABindingFactory scaBindingFactory;
+ private EventBindingFactory eventBindingFactory;
private Monitor monitor;
private InterfaceContractMapper interfaceContractMapper;
private SCADefinitions policyDefinitions;
@@ -75,6 +80,7 @@ public abstract class BaseConfigurationBuilderImpl {
protected BaseConfigurationBuilderImpl(AssemblyFactory assemblyFactory,
SCABindingFactory scaBindingFactory,
+ EventBindingFactory eventBindingFactory,
DocumentBuilderFactory documentBuilderFactory,
TransformerFactory transformerFactory,
InterfaceContractMapper interfaceContractMapper,
@@ -82,6 +88,7 @@ public abstract class BaseConfigurationBuilderImpl {
Monitor monitor) {
this.assemblyFactory = assemblyFactory;
this.scaBindingFactory = scaBindingFactory;
+ this.eventBindingFactory = eventBindingFactory;
this.documentBuilderFactory = documentBuilderFactory;
this.transformerFactory = transformerFactory;
this.interfaceContractMapper = interfaceContractMapper;
@@ -110,6 +117,8 @@ public abstract class BaseConfigurationBuilderImpl {
*/
private void configureComponents(Composite composite, String uri) {
String parentURI = uri;
+
+ configureProducersAndConsumers(composite);
// Process nested composites recursively
for (Component component : composite.getComponents()) {
@@ -1334,4 +1343,81 @@ public abstract class BaseConfigurationBuilderImpl {
return URI.create(baseURI.toString() + str).normalize();
}
+ private void configureProducersAndConsumers(Composite composite) {
+
+ for (Component component : composite.getComponents()) {
+ Implementation impl = component.getImplementation();
+ for (Producer producer : impl.getProducers()) {
+ Reference reference = assemblyFactory.createReference();
+ reference.setName(producer.getName());
+ reference.setInterfaceContract(producer.getInterfaceContract());
+ if (producer.getInterfaceContract() != null && producer.getInterfaceContract().getInterface() != null)
+ producer.getInterfaceContract().getInterface().setRemotable(true);
+ reference.setType(producer.getType());
+ reference.getApplicablePolicySets().addAll(producer.getApplicablePolicySets());
+ reference.getPolicySets().addAll(producer.getPolicySets());
+ reference.getRequiredIntents().addAll(producer.getRequiredIntents());
+ for (Binding binding : producer.getBindings()) {
+ EventBinding eventBinding = eventBindingFactory.createEventBinding();
+ eventBinding.setBaseBinding(binding);
+ reference.getBindings().add(binding);// FIXME: remove
+ reference.getBindings().add(eventBinding);
+ }
+ impl.getReferences().add(reference);
+ }
+
+ for (Producer producer : component.getProducers()) {
+ ComponentReference reference = assemblyFactory.createComponentReference();
+ reference.setName(producer.getName());
+ reference.setInterfaceContract(producer.getInterfaceContract());
+ if (producer.getInterfaceContract() != null && producer.getInterfaceContract().getInterface() != null)
+ producer.getInterfaceContract().getInterface().setRemotable(true);
+ reference.setType(producer.getType());
+ reference.getApplicablePolicySets().addAll(producer.getApplicablePolicySets());
+ reference.getPolicySets().addAll(producer.getPolicySets());
+ reference.getRequiredIntents().addAll(producer.getRequiredIntents());
+ for (Binding binding : producer.getBindings()) {
+ EventBinding eventBinding = eventBindingFactory.createEventBinding();
+ eventBinding.setBaseBinding(binding);
+ reference.getBindings().add(binding);// FIXME: remove
+ reference.getBindings().add(eventBinding);
+ }
+ component.getReferences().add(reference);
+ }
+
+ for (Consumer consumer : impl.getConsumers()) {
+ Service service = assemblyFactory.createService();
+ service.setName(consumer.getName());
+ service.setInterfaceContract(consumer.getInterfaceContract());
+ service.setType(consumer.getType());
+ service.getApplicablePolicySets().addAll(consumer.getApplicablePolicySets());
+ service.getPolicySets().addAll(consumer.getPolicySets());
+ service.getRequiredIntents().addAll(consumer.getRequiredIntents());
+ for (Binding binding : consumer.getBindings()) {
+ EventBinding eventBinding = eventBindingFactory.createEventBinding();
+ eventBinding.setBaseBinding(binding);
+ service.getBindings().add(binding);// FIXME: remove
+ service.getBindings().add(eventBinding);
+ }
+ impl.getServices().add(service);
+ }
+
+ for (Consumer consumer : component.getConsumers()) {
+ ComponentService service = assemblyFactory.createComponentService();
+ service.setName(consumer.getName());
+ service.setInterfaceContract(consumer.getInterfaceContract());
+ service.setType(consumer.getType());
+ service.getApplicablePolicySets().addAll(consumer.getApplicablePolicySets());
+ service.getPolicySets().addAll(consumer.getPolicySets());
+ service.getRequiredIntents().addAll(consumer.getRequiredIntents());
+ for (Binding binding : consumer.getBindings()) {
+ EventBinding eventBinding = eventBindingFactory.createEventBinding();
+ eventBinding.setBaseBinding(binding);
+ service.getBindings().add(binding); // FIXME: remove
+ service.getBindings().add(eventBinding);
+ }
+ component.getServices().add(service);
+ }
+ }
+ }
}
diff --git a/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/ComponentConfigurationBuilderImpl.java b/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/ComponentConfigurationBuilderImpl.java
index 0643421a45..115051fa9a 100644
--- a/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/ComponentConfigurationBuilderImpl.java
+++ b/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/ComponentConfigurationBuilderImpl.java
@@ -24,6 +24,7 @@ import javax.xml.transform.TransformerFactory;
import org.apache.tuscany.sca.assembly.AssemblyFactory;
import org.apache.tuscany.sca.assembly.Composite;
+import org.apache.tuscany.sca.assembly.EventBindingFactory;
import org.apache.tuscany.sca.assembly.SCABindingFactory;
import org.apache.tuscany.sca.assembly.builder.CompositeBuilder;
import org.apache.tuscany.sca.assembly.builder.CompositeBuilderException;
@@ -45,10 +46,11 @@ public class ComponentConfigurationBuilderImpl extends BaseConfigurationBuilderI
SCADefinitions policyDefinitions,
Monitor monitor) {
super(assemblyFactory, scaBindingFactory,
- null, null,
+ null, null, null,
interfaceContractMapper, policyDefinitions, monitor);
}
+ @Deprecated
public ComponentConfigurationBuilderImpl(AssemblyFactory assemblyFactory,
SCABindingFactory scaBindingFactory,
DocumentBuilderFactory documentBuilderFactory,
@@ -56,10 +58,25 @@ public class ComponentConfigurationBuilderImpl extends BaseConfigurationBuilderI
InterfaceContractMapper interfaceContractMapper,
SCADefinitions policyDefinitions,
Monitor monitor) {
- super(assemblyFactory, scaBindingFactory,
+ super(assemblyFactory, scaBindingFactory, null,
documentBuilderFactory, transformerFactory,
interfaceContractMapper, policyDefinitions, monitor);
}
+
+ public ComponentConfigurationBuilderImpl(AssemblyFactory assemblyFactory,
+ SCABindingFactory scaBindingFactory,
+ EventBindingFactory eventBindingFactory,
+ DocumentBuilderFactory documentBuilderFactory,
+ TransformerFactory transformerFactory,
+ InterfaceContractMapper interfaceContractMapper,
+ SCADefinitions policyDefinitions,
+ Monitor monitor) {
+
+ super(assemblyFactory, scaBindingFactory, eventBindingFactory,
+ documentBuilderFactory, transformerFactory,
+ interfaceContractMapper, policyDefinitions, monitor);
+
+ }
public void build(Composite composite) throws CompositeBuilderException {
configureComponents(composite);
diff --git a/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/CompositeBindingURIBuilderImpl.java b/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/CompositeBindingURIBuilderImpl.java
index 85af173c0d..3f9c6e28b8 100644
--- a/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/CompositeBindingURIBuilderImpl.java
+++ b/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/CompositeBindingURIBuilderImpl.java
@@ -24,6 +24,7 @@ import javax.xml.transform.TransformerFactory;
import org.apache.tuscany.sca.assembly.AssemblyFactory;
import org.apache.tuscany.sca.assembly.Composite;
+import org.apache.tuscany.sca.assembly.EventBindingFactory;
import org.apache.tuscany.sca.assembly.SCABindingFactory;
import org.apache.tuscany.sca.assembly.builder.CompositeBuilder;
import org.apache.tuscany.sca.assembly.builder.CompositeBuilderException;
@@ -45,10 +46,11 @@ public class CompositeBindingURIBuilderImpl extends BaseConfigurationBuilderImpl
SCADefinitions policyDefinitions,
Monitor monitor) {
super(assemblyFactory, scaBindingFactory,
- null, null,
+ null, null, null,
interfaceContractMapper, policyDefinitions, monitor);
}
+ @Deprecated
public CompositeBindingURIBuilderImpl(AssemblyFactory assemblyFactory,
SCABindingFactory scaBindingFactory,
DocumentBuilderFactory documentBuilderFactory,
@@ -56,10 +58,24 @@ public class CompositeBindingURIBuilderImpl extends BaseConfigurationBuilderImpl
InterfaceContractMapper interfaceContractMapper,
SCADefinitions policyDefinitions,
Monitor monitor) {
- super(assemblyFactory, scaBindingFactory,
+ super(assemblyFactory, scaBindingFactory, null,
documentBuilderFactory, transformerFactory,
interfaceContractMapper, policyDefinitions, monitor);
}
+
+ public CompositeBindingURIBuilderImpl(AssemblyFactory assemblyFactory,
+ SCABindingFactory scaBindingFactory,
+ EventBindingFactory eventBindingFactory,
+ DocumentBuilderFactory documentBuilderFactory,
+ TransformerFactory transformerFactory,
+ InterfaceContractMapper interfaceContractMapper,
+ SCADefinitions policyDefinitions,
+ Monitor monitor) {
+
+ super(assemblyFactory, scaBindingFactory, eventBindingFactory,
+ documentBuilderFactory, transformerFactory,
+ interfaceContractMapper, policyDefinitions, monitor);
+ }
public void build(Composite composite) throws CompositeBuilderException {
configureBindingURIsAndNames(composite);
diff --git a/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/CompositeBuilderImpl.java b/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/CompositeBuilderImpl.java
index 282fe032ba..2840985e0f 100644
--- a/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/CompositeBuilderImpl.java
+++ b/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/CompositeBuilderImpl.java
@@ -27,6 +27,7 @@ import org.apache.tuscany.sca.assembly.AssemblyFactory;
import org.apache.tuscany.sca.assembly.Composite;
import org.apache.tuscany.sca.assembly.DefaultEndpointFactory;
import org.apache.tuscany.sca.assembly.EndpointFactory;
+import org.apache.tuscany.sca.assembly.EventBindingFactory;
import org.apache.tuscany.sca.assembly.SCABindingFactory;
import org.apache.tuscany.sca.assembly.builder.CompositeBuilder;
import org.apache.tuscany.sca.assembly.builder.CompositeBuilderException;
@@ -79,7 +80,7 @@ public class CompositeBuilderImpl implements CompositeBuilder {
InterfaceContractMapper interfaceContractMapper,
SCADefinitions policyDefinitions,
Monitor monitor) {
- this(assemblyFactory, endpointFactory, scaBindingFactory, intentAttachPointTypeFactory,
+ this(assemblyFactory, endpointFactory, scaBindingFactory, null, intentAttachPointTypeFactory,
null, null, interfaceContractMapper, policyDefinitions, monitor);
}
@@ -100,7 +101,7 @@ public class CompositeBuilderImpl implements CompositeBuilder {
IntentAttachPointTypeFactory intentAttachPointTypeFactory,
InterfaceContractMapper interfaceContractMapper,
Monitor monitor) {
- this(assemblyFactory, null, scaBindingFactory, intentAttachPointTypeFactory,
+ this(assemblyFactory, null, scaBindingFactory, null, intentAttachPointTypeFactory,
null, null, interfaceContractMapper, null, monitor);
}
@@ -117,12 +118,13 @@ public class CompositeBuilderImpl implements CompositeBuilder {
*/
public CompositeBuilderImpl(AssemblyFactory assemblyFactory,
SCABindingFactory scaBindingFactory,
+ EventBindingFactory eventBindingFactory,
IntentAttachPointTypeFactory intentAttachPointTypeFactory,
DocumentBuilderFactory documentBuilderFactory,
TransformerFactory transformerFactory,
InterfaceContractMapper interfaceContractMapper,
Monitor monitor) {
- this(assemblyFactory, null, scaBindingFactory, intentAttachPointTypeFactory,
+ this(assemblyFactory, null, scaBindingFactory, eventBindingFactory, intentAttachPointTypeFactory,
documentBuilderFactory, transformerFactory, interfaceContractMapper, null, monitor);
}
@@ -140,6 +142,7 @@ public class CompositeBuilderImpl implements CompositeBuilder {
public CompositeBuilderImpl(AssemblyFactory assemblyFactory,
EndpointFactory endpointFactory,
SCABindingFactory scaBindingFactory,
+ EventBindingFactory eventBindingFactory,
IntentAttachPointTypeFactory intentAttachPointTypeFactory,
DocumentBuilderFactory documentBuilderFactory,
TransformerFactory transformerFactory,
@@ -156,10 +159,10 @@ public class CompositeBuilderImpl implements CompositeBuilder {
componentReferencePromotionWireBuilder = new ComponentReferencePromotionWireBuilderImpl(assemblyFactory, endpointFactory, monitor);
compositeReferenceWireBuilder = new CompositeReferenceWireBuilderImpl(assemblyFactory, endpointFactory, monitor);
compositeCloneBuilder = new CompositeCloneBuilderImpl(monitor);
- componentConfigurationBuilder = new ComponentConfigurationBuilderImpl(assemblyFactory, scaBindingFactory, documentBuilderFactory, transformerFactory, interfaceContractMapper, policyDefinitions, monitor);
+ componentConfigurationBuilder = new ComponentConfigurationBuilderImpl(assemblyFactory, scaBindingFactory, eventBindingFactory, documentBuilderFactory, transformerFactory, interfaceContractMapper, policyDefinitions, monitor);
compositeServiceConfigurationBuilder = new CompositeServiceConfigurationBuilderImpl(assemblyFactory);
compositeReferenceConfigurationBuilder = new CompositeReferenceConfigurationBuilderImpl(assemblyFactory);
- compositeBindingURIBuilder = new CompositeBindingURIBuilderImpl(assemblyFactory, scaBindingFactory, documentBuilderFactory, transformerFactory, interfaceContractMapper, policyDefinitions, monitor);
+ compositeBindingURIBuilder = new CompositeBindingURIBuilderImpl(assemblyFactory, scaBindingFactory, eventBindingFactory, documentBuilderFactory, transformerFactory, interfaceContractMapper, policyDefinitions, monitor);
componentServicePromotionBuilder = new ComponentServicePromotionBuilderImpl(assemblyFactory);
compositeServicePromotionBuilder = new CompositeServicePromotionBuilderImpl(assemblyFactory);
compositePromotionBuilder = new CompositePromotionBuilderImpl(assemblyFactory, endpointFactory, interfaceContractMapper, monitor);
diff --git a/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AssemblyFactoryImpl.java b/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AssemblyFactoryImpl.java
index 016a9a5b05..e3d9355930 100644
--- a/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AssemblyFactoryImpl.java
+++ b/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AssemblyFactoryImpl.java
@@ -25,15 +25,21 @@ import org.apache.tuscany.sca.assembly.AbstractService;
import org.apache.tuscany.sca.assembly.AssemblyFactory;
import org.apache.tuscany.sca.assembly.Callback;
import org.apache.tuscany.sca.assembly.Component;
+import org.apache.tuscany.sca.assembly.ComponentConsumer;
+import org.apache.tuscany.sca.assembly.ComponentProducer;
import org.apache.tuscany.sca.assembly.ComponentProperty;
import org.apache.tuscany.sca.assembly.ComponentReference;
import org.apache.tuscany.sca.assembly.ComponentService;
import org.apache.tuscany.sca.assembly.ComponentType;
import org.apache.tuscany.sca.assembly.Composite;
+import org.apache.tuscany.sca.assembly.CompositeConsumer;
+import org.apache.tuscany.sca.assembly.CompositeProducer;
import org.apache.tuscany.sca.assembly.CompositeReference;
import org.apache.tuscany.sca.assembly.CompositeService;
import org.apache.tuscany.sca.assembly.ConfiguredOperation;
import org.apache.tuscany.sca.assembly.ConstrainingType;
+import org.apache.tuscany.sca.assembly.Consumer;
+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;
@@ -77,6 +83,15 @@ public abstract class AssemblyFactoryImpl implements AssemblyFactory {
public ComponentService createComponentService() {
return new ComponentServiceImpl();
}
+
+
+ public ComponentProducer createComponentProducer() {
+ return new ComponentProducerImpl();
+ }
+
+ public ComponentConsumer createComponentConsumer() {
+ return new ComponentConsumerImpl();
+ }
public ComponentType createComponentType() {
return new ComponentTypeImpl();
@@ -93,6 +108,15 @@ public abstract class AssemblyFactoryImpl implements AssemblyFactory {
public CompositeService createCompositeService() {
return new CompositeServiceImpl();
}
+
+
+ public CompositeProducer createCompositeProducer() {
+ return new CompositeProducerImpl();
+ }
+
+ public CompositeConsumer createCompositeConsumer() {
+ return new CompositeConsumerImpl();
+ }
public ConstrainingType createConstrainingType() {
return new ConstrainingTypeImpl();
@@ -109,6 +133,14 @@ public abstract class AssemblyFactoryImpl implements AssemblyFactory {
public Service createService() {
return new ServiceImpl();
}
+
+ public Producer createProducer() {
+ return new ProducerImpl();
+ }
+
+ public Consumer createConsumer() {
+ return new ConsumerImpl();
+ }
public Wire createWire() {
return new WireImpl();
diff --git a/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentImpl.java b/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentImpl.java
index 34429a6703..59a4237b9f 100644
--- a/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentImpl.java
+++ b/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentImpl.java
@@ -22,6 +22,8 @@ import java.util.ArrayList;
import java.util.List;
import org.apache.tuscany.sca.assembly.Component;
+import org.apache.tuscany.sca.assembly.ComponentConsumer;
+import org.apache.tuscany.sca.assembly.ComponentProducer;
import org.apache.tuscany.sca.assembly.ComponentProperty;
import org.apache.tuscany.sca.assembly.ComponentReference;
import org.apache.tuscany.sca.assembly.ComponentService;
@@ -46,6 +48,8 @@ public class ComponentImpl extends ExtensibleImpl implements Component, Cloneabl
private List<ComponentProperty> properties = new ArrayList<ComponentProperty>();
private List<ComponentReference> references = new ArrayList<ComponentReference>();
private List<ComponentService> services = new ArrayList<ComponentService>();
+ private List<ComponentProducer> producers = new ArrayList<ComponentProducer>();
+ private List<ComponentConsumer> consumers = new ArrayList<ComponentConsumer>();
private List<Intent> requiredIntents = new ArrayList<Intent>();
private List<PolicySet> policySets = new ArrayList<PolicySet>();
private Boolean autowire;
@@ -109,6 +113,14 @@ public class ComponentImpl extends ExtensibleImpl implements Component, Cloneabl
return services;
}
+ public List<ComponentProducer> getProducers() {
+ return producers;
+ }
+
+ public List<ComponentConsumer> getConsumers() {
+ return consumers;
+ }
+
public void setConstrainingType(ConstrainingType constrainingType) {
this.constrainingType = constrainingType;
}
diff --git a/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentTypeImpl.java b/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentTypeImpl.java
index bbe665d52f..189e13ecba 100644
--- a/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentTypeImpl.java
+++ b/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentTypeImpl.java
@@ -23,6 +23,8 @@ import java.util.List;
import org.apache.tuscany.sca.assembly.ComponentType;
import org.apache.tuscany.sca.assembly.ConstrainingType;
+import org.apache.tuscany.sca.assembly.Consumer;
+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;
@@ -38,6 +40,9 @@ public class ComponentTypeImpl extends ExtensibleImpl implements ComponentType,
private List<Property> properties = new ArrayList<Property>();
private List<Reference> references = new ArrayList<Reference>();
private List<Service> services = new ArrayList<Service>();
+ private List<Producer> producers = new ArrayList<Producer>();
+ private List<Consumer> consumers = new ArrayList<Consumer>();
+
/**
* Constructs a new component type.
*/
@@ -86,6 +91,15 @@ public class ComponentTypeImpl extends ExtensibleImpl implements ComponentType,
public List<Service> getServices() {
return services;
}
+
+
+ public List<Producer> getProducers() {
+ return producers;
+ }
+
+ public List<Consumer> getConsumers() {
+ return consumers;
+ }
public void setConstrainingType(ConstrainingType constrainingType) {
this.constrainingType = constrainingType;