summaryrefslogtreecommitdiffstats
path: root/sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/BaseConfigurationBuilderImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/BaseConfigurationBuilderImpl.java')
-rw-r--r--sandbox/event/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/impl/BaseConfigurationBuilderImpl.java29
1 files changed, 29 insertions, 0 deletions
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 5bbc547932..57c674d623 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
@@ -40,7 +40,9 @@ 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.EventTarget;
import org.apache.tuscany.sca.assembly.Implementation;
+import org.apache.tuscany.sca.assembly.Multiplicity;
import org.apache.tuscany.sca.assembly.Producer;
import org.apache.tuscany.sca.assembly.Property;
import org.apache.tuscany.sca.assembly.Reference;
@@ -1351,6 +1353,17 @@ public abstract class BaseConfigurationBuilderImpl {
for (Producer producer : impl.getProducers()) {
Reference reference = assemblyFactory.createReference();
reference.setName(producer.getName());
+ // Add a pointer back to the Producer... Mike Edwards, 03/11/2008
+ reference.setProducer(producer);
+ // For a Producer, the multiplicity is inherently 0..n Mike Edwards, 03/11/2008
+ reference.setMultiplicity(Multiplicity.ONE_ONE);
+ // Copy through any target attribute Mike Edwards, 03/11/2008
+ for( EventTarget target : producer.getTargets()) {
+ ComponentService targetService = assemblyFactory.createComponentService();
+ targetService.setName( target.getName() );
+ targetService.setUnresolved( true );
+ reference.getTargets().add( targetService );
+ } // end for
reference.setInterfaceContract(producer.getInterfaceContract());
if (producer.getInterfaceContract() != null && producer.getInterfaceContract().getInterface() != null)
producer.getInterfaceContract().getInterface().setRemotable(true);
@@ -1370,6 +1383,8 @@ public abstract class BaseConfigurationBuilderImpl {
for (Consumer consumer : impl.getConsumers()) {
Service service = assemblyFactory.createService();
service.setName(consumer.getName());
+ // Add a pointer back to the consumer... Mike Edwards, 03/11/2008
+ service.setConsumer(consumer);
service.setInterfaceContract(consumer.getInterfaceContract());
service.setType(consumer.getType());
service.getApplicablePolicySets().addAll(consumer.getApplicablePolicySets());
@@ -1388,6 +1403,18 @@ public abstract class BaseConfigurationBuilderImpl {
for (Producer producer : component.getProducers()) {
ComponentReference reference = assemblyFactory.createComponentReference();
reference.setName(producer.getName());
+ // Add a pointer back to the Producer... Mike Edwards, 03/11/2008
+ reference.setProducer(producer);
+ // For a Producer, the multiplicity is inherently 0..n Mike Edwards, 03/11/2008
+ // FIXME (0..n implies an array in the implementation code - can't have this)
+ reference.setMultiplicity(Multiplicity.ONE_ONE);
+ // Copy through any target attribute Mike Edwards, 03/11/2008
+ for( EventTarget target : producer.getTargets()) {
+ ComponentService targetService = assemblyFactory.createComponentService();
+ targetService.setName( target.getName() );
+ targetService.setUnresolved( true );
+ reference.getTargets().add( targetService );
+ } // end for
reference.setInterfaceContract(producer.getInterfaceContract());
if (producer.getInterfaceContract() != null && producer.getInterfaceContract().getInterface() != null)
producer.getInterfaceContract().getInterface().setRemotable(true);
@@ -1408,6 +1435,8 @@ public abstract class BaseConfigurationBuilderImpl {
for (Consumer consumer : component.getConsumers()) {
ComponentService service = assemblyFactory.createComponentService();
service.setName(consumer.getName());
+ // Add a pointer back to the consumer... Mike Edwards, 03/11/2008
+ service.setConsumer(consumer);
service.setInterfaceContract(consumer.getInterfaceContract());
service.setType(consumer.getType());
service.getApplicablePolicySets().addAll(consumer.getApplicablePolicySets());