You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by jm...@apache.org on 2006/12/31 19:59:02 UTC
svn commit: r491465 [3/3] - in /incubator/tuscany/java/sca:
kernel/core/src/main/java/org/apache/tuscany/core/binding/local/
kernel/core/src/main/java/org/apache/tuscany/core/builder/
kernel/core/src/main/java/org/apache/tuscany/core/databinding/impl/ ...
Modified: incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/CompositeComponentExtension.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/CompositeComponentExtension.java?view=diff&rev=491465&r1=491464&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/CompositeComponentExtension.java (original)
+++ incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/CompositeComponentExtension.java Sun Dec 31 10:58:58 2006
@@ -40,6 +40,7 @@
import org.apache.tuscany.spi.component.InvalidAutowireInterface;
import org.apache.tuscany.spi.component.PrepareException;
import org.apache.tuscany.spi.component.Reference;
+import org.apache.tuscany.spi.component.ReferenceBinding;
import org.apache.tuscany.spi.component.SCAObject;
import org.apache.tuscany.spi.component.Service;
import org.apache.tuscany.spi.component.ServiceBinding;
@@ -64,7 +65,7 @@
protected final Map<String, SCAObject> systemChildren = new ConcurrentHashMap<String, SCAObject>();
protected final List<Service> systemServices = new ArrayList<Service>();
- protected final List<Reference> systemReferences = new ArrayList<Reference>();
+ protected final List<Reference> systemReferenceBindings = new ArrayList<Reference>();
// autowire mappings
protected final Map<Class, InboundWire> autowireInternal = new ConcurrentHashMap<Class, InboundWire>();
@@ -122,7 +123,7 @@
}
public List<Reference> getSystemReferences() {
- return Collections.unmodifiableList(systemReferences);
+ return Collections.unmodifiableList(systemReferenceBindings);
}
public List<SCAObject> getChildren() {
@@ -138,6 +139,7 @@
}
public void register(SCAObject child) throws ComponentRegistrationException {
+ assert child instanceof Service || child instanceof Reference || child instanceof Component;
if (child.isSystem()) {
if (systemChildren.get(child.getName()) != null) {
throw new DuplicateNameException("A system child is already registered with the name", child.getName());
@@ -163,7 +165,7 @@
Reference reference = (Reference) child;
synchronized (references) {
if (reference.isSystem()) {
- systemReferences.add(reference);
+ systemReferenceBindings.add(reference);
} else {
references.add(reference);
}
@@ -246,7 +248,7 @@
InboundWire wire = autowireInternal.get(instanceInterface);
if (wire != null) {
SCAObject parent = wire.getContainer();
- if (parent instanceof AtomicComponent || parent instanceof Reference
+ if (parent instanceof AtomicComponent || parent instanceof ReferenceBinding
|| parent instanceof ServiceBinding) {
return wire;
} else {
@@ -430,7 +432,12 @@
if (systemAutowireInternal.containsKey(interfaze)) {
return;
}
- InboundWire wire = reference.getInboundWire();
+ List<ReferenceBinding> bindings = reference.getReferenceBindings();
+ if (bindings.size() == 0) {
+ return;
+ }
+ // pick the first binding until autowire allows multiple interfaces
+ InboundWire wire = bindings.get(0).getInboundWire();
if (!interfaze.isAssignableFrom(wire.getServiceContract().getInterfaceClass())) {
throw new InvalidAutowireInterface("Matching inbound wire not found for interface",
interfaze.getName());
@@ -440,12 +447,17 @@
if (autowireInternal.containsKey(interfaze)) {
return;
}
- InboundWire wire = reference.getInboundWire();
+ List<ReferenceBinding> bindings = reference.getReferenceBindings();
+ if (bindings.size() == 0) {
+ return;
+ }
+ // pick the first binding until autowire allows multiple interfaces
+ InboundWire wire = bindings.get(0).getInboundWire();
if (!interfaze.isAssignableFrom(wire.getServiceContract().getInterfaceClass())) {
String iName = interfaze.getName();
throw new InvalidAutowireInterface("Matching inbound wire not found for interface", iName);
}
- autowireInternal.put(interfaze, reference.getInboundWire());
+ autowireInternal.put(interfaze, wire);
}
}
@@ -503,8 +515,17 @@
}
protected void registerAutowire(Reference reference) throws InvalidAutowireInterface {
- Class<?> clazz = reference.getInboundWire().getServiceContract().getInterfaceClass();
+ // TODO autowire should allow multiple interfaces
+ List<ReferenceBinding> bindings = reference.getReferenceBindings();
+ if (bindings.size() == 0) {
+ return;
+ }
+ // pick the first binding until autowire allows multiple interfaces
+ InboundWire wire = bindings.get(0).getInboundWire();
+ Class<?> clazz = wire.getServiceContract().getInterfaceClass();
registerAutowireInternal(clazz, reference);
+
+
}
protected void registerAutowire(Service service) throws InvalidAutowireInterface {
Copied: incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/ReferenceBindingExtension.java (from r491316, incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/ReferenceExtension.java)
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/ReferenceBindingExtension.java?view=diff&rev=491465&p1=incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/ReferenceExtension.java&r1=491316&p2=incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/ReferenceBindingExtension.java&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/ReferenceExtension.java (original)
+++ incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/ReferenceBindingExtension.java Sun Dec 31 10:58:58 2006
@@ -20,8 +20,9 @@
import org.apache.tuscany.spi.component.AbstractSCAObject;
import org.apache.tuscany.spi.component.CompositeComponent;
-import org.apache.tuscany.spi.component.Reference;
+import org.apache.tuscany.spi.component.ReferenceBinding;
import org.apache.tuscany.spi.component.TargetInvokerCreationException;
+import org.apache.tuscany.spi.component.Reference;
import org.apache.tuscany.spi.model.Operation;
import org.apache.tuscany.spi.model.Scope;
import org.apache.tuscany.spi.model.ServiceContract;
@@ -34,12 +35,13 @@
*
* @version $Rev$ $Date$
*/
-public abstract class ReferenceExtension extends AbstractSCAObject implements Reference {
+public abstract class ReferenceBindingExtension extends AbstractSCAObject implements ReferenceBinding {
+ protected Reference reference;
protected InboundWire inboundWire;
protected OutboundWire outboundWire;
protected ServiceContract<?> bindingServiceContract;
- protected ReferenceExtension(String name, CompositeComponent parent) {
+ protected ReferenceBindingExtension(String name, CompositeComponent parent) {
super(name, parent);
}
@@ -47,6 +49,10 @@
return Scope.SYSTEM;
}
+ public void setReference(Reference reference) {
+ this.reference = reference;
+ }
+
public void setInboundWire(InboundWire wire) {
this.inboundWire = wire;
}
@@ -74,6 +80,11 @@
public void setBindingServiceContract(ServiceContract<?> serviceContract) {
this.bindingServiceContract = serviceContract;
+ }
+
+ @Override
+ public boolean isSystem() {
+ return reference != null && reference.isSystem();
}
}
Propchange: incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/ReferenceBindingExtension.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/extension/ReferenceBindingExtension.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Modified: incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/model/BindingDefinition.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/model/BindingDefinition.java?view=diff&rev=491465&r1=491464&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/model/BindingDefinition.java (original)
+++ incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/model/BindingDefinition.java Sun Dec 31 10:58:58 2006
@@ -18,10 +18,28 @@
*/
package org.apache.tuscany.spi.model;
+import java.net.URI;
+
/**
* The base representation of a binding specified in an assembly
*
* @version $Rev$ $Date$
*/
public abstract class BindingDefinition extends ModelObject {
+ private URI targetUri;
+
+ protected BindingDefinition() {
+ }
+
+ public BindingDefinition(URI targetUri) {
+ this.targetUri = targetUri;
+ }
+
+ public URI getTargetUri() {
+ return targetUri;
+ }
+
+ public void setTargetUri(URI targetUri) {
+ this.targetUri = targetUri;
+ }
}
Modified: incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/model/BoundReferenceDefinition.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/model/BoundReferenceDefinition.java?view=diff&rev=491465&r1=491464&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/model/BoundReferenceDefinition.java (original)
+++ incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/model/BoundReferenceDefinition.java Sun Dec 31 10:58:58 2006
@@ -18,19 +18,35 @@
*/
package org.apache.tuscany.spi.model;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
/**
- * Represents a reference configured with a binding in a composite
+ * Represents a reference in a composite
*
* @version $Rev$ $Date$
*/
-public class BoundReferenceDefinition<B extends BindingDefinition> extends ReferenceDefinition {
- private B binding;
+public class BoundReferenceDefinition extends ReferenceDefinition {
+ private List<BindingDefinition> bindings;
+
+ public BoundReferenceDefinition(String name, ServiceContract contract,
+ List<BindingDefinition> bindings,
+ Multiplicity multiplicity) {
+ super(name, contract);
+ this.bindings = bindings;
+ setMultiplicity(multiplicity);
+ }
+
+ public BoundReferenceDefinition() {
+ bindings = new ArrayList<BindingDefinition>();
+ }
- public B getBinding() {
- return binding;
+ public List<BindingDefinition> getBindings() {
+ return Collections.unmodifiableList(bindings);
}
- public void setBinding(B binding) {
- this.binding = binding;
+ public void addBinding(BindingDefinition binding) {
+ this.bindings.add(binding);
}
}
Modified: incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/model/ServiceDefinition.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/model/ServiceDefinition.java?view=diff&rev=491465&r1=491464&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/model/ServiceDefinition.java (original)
+++ incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/model/ServiceDefinition.java Sun Dec 31 10:58:58 2006
@@ -76,8 +76,12 @@
return callbackRefName;
}
- public void setCallbackReferenceName(String callbackRefName) {
- this.callbackRefName = callbackRefName;
+ /**
+ * Sets the callback name
+ * @param name
+ */
+ public void setCallbackReferenceName(String name) {
+ this.callbackRefName = name;
}
}
Modified: incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/wire/WireService.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/wire/WireService.java?view=diff&rev=491465&r1=491464&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/wire/WireService.java (original)
+++ incubator/tuscany/java/sca/kernel/spi/src/main/java/org/apache/tuscany/spi/wire/WireService.java Sun Dec 31 10:58:58 2006
@@ -21,8 +21,9 @@
import java.lang.reflect.Method;
import java.util.Map;
+import org.apache.tuscany.spi.QualifiedName;
import org.apache.tuscany.spi.component.Component;
-import org.apache.tuscany.spi.component.Reference;
+import org.apache.tuscany.spi.component.ReferenceBinding;
import org.apache.tuscany.spi.component.ServiceBinding;
import org.apache.tuscany.spi.model.ComponentDefinition;
import org.apache.tuscany.spi.model.Operation;
@@ -120,17 +121,19 @@
/**
* Creates wires for a reference and injects them on the reference
*
- * @param reference the reference
- * @param contract the model artifact representing the service contract for the reference
+ * @param referenceBinding the reference
+ * @param contract the model artifact representing the service contract for the reference
+ * @param targetName the qualified target name or null if the reference referes to a target outside the SCA
+ * domain
*/
- void createWires(Reference reference, ServiceContract<?> contract);
+ void createWires(ReferenceBinding referenceBinding, ServiceContract<?> contract, QualifiedName targetName);
/**
* Creates wires for a serviceBinding and injects them on the serviceBinding
*
- * @param serviceBinding the serviceBinding
- * @param targetName the target nane
- * @param contract the serviceBinding contract
+ * @param serviceBinding the serviceBinding
+ * @param targetName the target nane
+ * @param contract the serviceBinding contract
*/
void createWires(ServiceBinding serviceBinding, String targetName, ServiceContract<?> contract);
Added: incubator/tuscany/java/sca/kernel/spi/src/test/java/org/apache/tuscany/spi/extension/ReferenceBindingExtensionTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/spi/src/test/java/org/apache/tuscany/spi/extension/ReferenceBindingExtensionTestCase.java?view=auto&rev=491465
==============================================================================
--- incubator/tuscany/java/sca/kernel/spi/src/test/java/org/apache/tuscany/spi/extension/ReferenceBindingExtensionTestCase.java (added)
+++ incubator/tuscany/java/sca/kernel/spi/src/test/java/org/apache/tuscany/spi/extension/ReferenceBindingExtensionTestCase.java Sun Dec 31 10:58:58 2006
@@ -0,0 +1,61 @@
+package org.apache.tuscany.spi.extension;
+
+import org.apache.tuscany.spi.component.Reference;
+import org.apache.tuscany.spi.component.TargetInvokerCreationException;
+import org.apache.tuscany.spi.model.Operation;
+import org.apache.tuscany.spi.model.Scope;
+import org.apache.tuscany.spi.model.ServiceContract;
+import org.apache.tuscany.spi.wire.TargetInvoker;
+
+import junit.framework.TestCase;
+import org.easymock.EasyMock;
+
+/**
+ * @version $Rev$ $Date$
+ */
+public class ReferenceBindingExtensionTestCase extends TestCase {
+
+ public void testScope() throws Exception {
+ ReferenceBindingExtension binding = new MockBindingExtension();
+ assertEquals(Scope.SYSTEM, binding.getScope());
+ }
+
+ public void testPrepare() throws Exception {
+ ReferenceBindingExtension binding = new MockBindingExtension();
+ binding.prepare();
+ }
+
+ public void testIsSystemNoParent() throws Exception {
+ ReferenceBindingExtension binding = new MockBindingExtension();
+ assertFalse(binding.isSystem());
+ }
+
+ public void testIsSystem() throws Exception {
+ Reference reference = EasyMock.createMock(Reference.class);
+ EasyMock.expect(reference.isSystem()).andReturn(true);
+ EasyMock.replay(reference);
+ ReferenceBindingExtension binding = new MockBindingExtension();
+ binding.setReference(reference);
+ assertTrue(binding.isSystem());
+ }
+
+ public void testIsNotSystem() throws Exception {
+ Reference reference = EasyMock.createMock(Reference.class);
+ EasyMock.expect(reference.isSystem()).andReturn(false);
+ EasyMock.replay(reference);
+ ReferenceBindingExtension binding = new MockBindingExtension();
+ binding.setReference(reference);
+ assertFalse(binding.isSystem());
+ }
+
+ private static class MockBindingExtension extends ReferenceBindingExtension {
+ public MockBindingExtension() {
+ super(null, null);
+ }
+
+ public TargetInvoker createTargetInvoker(ServiceContract contract, Operation operation)
+ throws TargetInvokerCreationException {
+ return null;
+ }
+ }
+}
Propchange: incubator/tuscany/java/sca/kernel/spi/src/test/java/org/apache/tuscany/spi/extension/ReferenceBindingExtensionTestCase.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/java/sca/kernel/spi/src/test/java/org/apache/tuscany/spi/extension/ReferenceBindingExtensionTestCase.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Modified: incubator/tuscany/java/sca/kernel/spi/src/test/java/org/apache/tuscany/spi/extension/ReferenceTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/spi/src/test/java/org/apache/tuscany/spi/extension/ReferenceTestCase.java?view=diff&rev=491465&r1=491464&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/kernel/spi/src/test/java/org/apache/tuscany/spi/extension/ReferenceTestCase.java (original)
+++ incubator/tuscany/java/sca/kernel/spi/src/test/java/org/apache/tuscany/spi/extension/ReferenceTestCase.java Sun Dec 31 10:58:58 2006
@@ -44,7 +44,7 @@
public class ReferenceTestCase extends TestCase {
public void testScope() throws Exception {
- TestReference ref = new TestReference();
+ TestReferenceBinding ref = new TestReferenceBinding();
assertEquals(Scope.SYSTEM, ref.getScope());
}
@@ -68,14 +68,14 @@
replay(chain);
replay(wire);
replay(outboundWire);
- TestReference ref = new TestReference();
+ TestReferenceBinding ref = new TestReferenceBinding();
ref.setInboundWire(wire);
ref.setOutboundWire(outboundWire);
ref.prepare();
}
- private class TestReference extends ReferenceExtension {
- public TestReference() {
+ private class TestReferenceBinding extends ReferenceBindingExtension {
+ public TestReferenceBinding() {
super(null, null);
}
Modified: incubator/tuscany/java/sca/runtime/osgi/src/main/java/org/apache/tuscany/osgi/binding/OSGiBindingBuilder.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/runtime/osgi/src/main/java/org/apache/tuscany/osgi/binding/OSGiBindingBuilder.java?view=diff&rev=491465&r1=491464&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/runtime/osgi/src/main/java/org/apache/tuscany/osgi/binding/OSGiBindingBuilder.java (original)
+++ incubator/tuscany/java/sca/runtime/osgi/src/main/java/org/apache/tuscany/osgi/binding/OSGiBindingBuilder.java Sun Dec 31 10:58:58 2006
@@ -55,11 +55,11 @@
return new OSGiServiceBinding(name, parent, wireService, osgiServiceName, host);
}
- public OSGiReference build(CompositeComponent parent,
- BoundReferenceDefinition<OSGiBindingDefinition> boundReferenceDefinition,
- DeploymentContext deploymentContext) {
+ public OSGiReferenceBinding build(CompositeComponent parent,
+ BoundReferenceDefinition<OSGiBindingDefinition> boundReferenceDefinition,
+ OSGiBindingDefinition bindingDefinition, DeploymentContext deploymentContext) {
String name = boundReferenceDefinition.getName();
- return new OSGiReference(name, parent);
+ return new OSGiReferenceBinding(name, parent);
}
protected Class<? extends Object> getServiceInterface(BoundServiceDefinition boundServiceDefinition) {
Copied: incubator/tuscany/java/sca/runtime/osgi/src/main/java/org/apache/tuscany/osgi/binding/OSGiReferenceBinding.java (from r491316, incubator/tuscany/java/sca/runtime/osgi/src/main/java/org/apache/tuscany/osgi/binding/OSGiReference.java)
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/runtime/osgi/src/main/java/org/apache/tuscany/osgi/binding/OSGiReferenceBinding.java?view=diff&rev=491465&p1=incubator/tuscany/java/sca/runtime/osgi/src/main/java/org/apache/tuscany/osgi/binding/OSGiReference.java&r1=491316&p2=incubator/tuscany/java/sca/runtime/osgi/src/main/java/org/apache/tuscany/osgi/binding/OSGiReferenceBinding.java&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/runtime/osgi/src/main/java/org/apache/tuscany/osgi/binding/OSGiReference.java (original)
+++ incubator/tuscany/java/sca/runtime/osgi/src/main/java/org/apache/tuscany/osgi/binding/OSGiReferenceBinding.java Sun Dec 31 10:58:58 2006
@@ -20,7 +20,7 @@
import java.rmi.Remote;
import org.apache.tuscany.spi.component.CompositeComponent;
-import org.apache.tuscany.spi.extension.ReferenceExtension;
+import org.apache.tuscany.spi.extension.ReferenceBindingExtension;
import org.apache.tuscany.spi.idl.java.JavaIDLUtils;
import org.apache.tuscany.spi.model.Operation;
import org.apache.tuscany.spi.model.ServiceContract;
@@ -29,10 +29,10 @@
/**
* @version $Rev$ $Date$
*/
-public class OSGiReference extends ReferenceExtension {
+public class OSGiReferenceBinding extends ReferenceBindingExtension {
//private final String uri;
- public OSGiReference(String name, CompositeComponent parent) {
+ public OSGiReferenceBinding(String name, CompositeComponent parent) {
super(name, parent);
//this.uri = uri;
}
Propchange: incubator/tuscany/java/sca/runtime/osgi/src/main/java/org/apache/tuscany/osgi/binding/OSGiReferenceBinding.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/java/sca/runtime/osgi/src/main/java/org/apache/tuscany/osgi/binding/OSGiReferenceBinding.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: incubator/tuscany/java/sca/runtime/osgi/src/main/java/org/apache/tuscany/osgi/binding/OSGiReferenceBinding.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Modified: incubator/tuscany/java/sca/services/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/Axis2BindingBuilder.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/Axis2BindingBuilder.java?view=diff&rev=491465&r1=491464&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/services/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/Axis2BindingBuilder.java (original)
+++ incubator/tuscany/java/sca/services/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/Axis2BindingBuilder.java Sun Dec 31 10:58:58 2006
@@ -24,7 +24,7 @@
import org.apache.tuscany.spi.annotation.Autowire;
import org.apache.tuscany.spi.builder.BuilderConfigException;
import org.apache.tuscany.spi.component.CompositeComponent;
-import org.apache.tuscany.spi.component.Reference;
+import org.apache.tuscany.spi.component.ReferenceBinding;
import org.apache.tuscany.spi.component.ServiceBinding;
import org.apache.tuscany.spi.component.WorkContext;
import org.apache.tuscany.spi.deployer.DeploymentContext;
@@ -44,7 +44,7 @@
import org.apache.tuscany.idl.wsdl.WSDLServiceContract;
/**
- * Builds a {@link org.osoa.sca.annotations.Service} or {@link org.apache.tuscany.spi.component.Reference} configured
+ * Builds a {@link org.osoa.sca.annotations.Service} or {@link org.apache.tuscany.spi.component.ReferenceBinding} configured
* with the Axis2 binding
*
* @version $Rev$ $Date$
@@ -136,9 +136,10 @@
}
@SuppressWarnings("unchecked")
- public Reference build(
+ public ReferenceBinding build(
CompositeComponent parent,
- BoundReferenceDefinition<WebServiceBindingDefinition> boundReferenceDefinition,
+ BoundReferenceDefinition boundReferenceDefinition,
+ WebServiceBindingDefinition wsBinding,
DeploymentContext deploymentContext) {
try {
@@ -153,7 +154,6 @@
// The WSDL portType from the WSDL Port decides the incoming SOAP message format
ServiceContract<?> outboundContract = inboundContract;
- WebServiceBindingDefinition wsBinding = boundReferenceDefinition.getBinding();
Port port = wsBinding.getWSDLPort();
if (port == null) {
// FIXME: [rfeng] No WSDL is referenced by binding.ws, we need to create one from
@@ -174,11 +174,11 @@
throw new Axis2BindingBuilderRuntimeException(e);
}
- Reference reference = new Axis2Reference(boundReferenceDefinition.getName(), parent, wsBinding,
+ ReferenceBinding referenceBinding = new Axis2ReferenceBinding(boundReferenceDefinition.getName(), parent, wsBinding,
inboundContract, workContext);
- reference.setBindingServiceContract(outboundContract);
+ referenceBinding.setBindingServiceContract(outboundContract);
- return reference;
+ return referenceBinding;
} catch (InvalidServiceContractException e) {
throw new Axis2BindingBuilderRuntimeException(e);
Copied: incubator/tuscany/java/sca/services/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/Axis2ReferenceBinding.java (from r491316, incubator/tuscany/java/sca/services/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/Axis2Reference.java)
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/Axis2ReferenceBinding.java?view=diff&rev=491465&p1=incubator/tuscany/java/sca/services/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/Axis2Reference.java&r1=491316&p2=incubator/tuscany/java/sca/services/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/Axis2ReferenceBinding.java&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/services/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/Axis2Reference.java (original)
+++ incubator/tuscany/java/sca/services/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/Axis2ReferenceBinding.java Sun Dec 31 10:58:58 2006
@@ -24,7 +24,7 @@
import org.apache.tuscany.spi.component.CompositeComponent;
import org.apache.tuscany.spi.component.WorkContext;
-import org.apache.tuscany.spi.extension.ReferenceExtension;
+import org.apache.tuscany.spi.extension.ReferenceBindingExtension;
import org.apache.tuscany.spi.model.Operation;
import org.apache.tuscany.spi.model.ServiceContract;
import org.apache.tuscany.spi.wire.TargetInvoker;
@@ -45,14 +45,14 @@
/**
* Axis2Reference uses Axis2 to invoke a remote web service
*/
-public class Axis2Reference<T> extends ReferenceExtension {
+public class Axis2ReferenceBinding<T> extends ReferenceBindingExtension {
private WebServicePortMetaData wsPortMetaData;
private ServiceClient serviceClient;
private WorkContext workContext;
@SuppressWarnings("unchecked")
- public Axis2Reference(String theName,
+ public Axis2ReferenceBinding(String theName,
CompositeComponent parent,
WebServiceBindingDefinition wsBinding,
ServiceContract contract, WorkContext workContext) {
Propchange: incubator/tuscany/java/sca/services/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/Axis2ReferenceBinding.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/java/sca/services/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/Axis2ReferenceBinding.java
------------------------------------------------------------------------------
svn:executable = *
Propchange: incubator/tuscany/java/sca/services/bindings/binding.axis2/src/main/java/org/apache/tuscany/binding/axis2/Axis2ReferenceBinding.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Modified: incubator/tuscany/java/sca/services/bindings/binding.axis2/src/test/java/org/apache/tuscany/binding/axis2/Axis2ReferenceTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/bindings/binding.axis2/src/test/java/org/apache/tuscany/binding/axis2/Axis2ReferenceTestCase.java?view=diff&rev=491465&r1=491464&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/services/bindings/binding.axis2/src/test/java/org/apache/tuscany/binding/axis2/Axis2ReferenceTestCase.java (original)
+++ incubator/tuscany/java/sca/services/bindings/binding.axis2/src/test/java/org/apache/tuscany/binding/axis2/Axis2ReferenceTestCase.java Sun Dec 31 10:58:58 2006
@@ -46,7 +46,7 @@
public class Axis2ReferenceTestCase extends TestCase {
public void testInvokeService() throws Exception {
- Axis2Reference axis2Reference = createAxis2Reference("testWebAppName", "testServiceName");
+ Axis2ReferenceBinding axis2Reference = createAxis2Reference("testWebAppName", "testServiceName");
ServiceContract contract = new JavaServiceContract();
Operation operation = new Operation<Type>("sayHi", null, null, null, false, null, NO_CONVERSATION);
TargetInvoker targetInvoker = axis2Reference.createTargetInvoker(contract, operation);
@@ -55,7 +55,7 @@
}
public void testAsyncTargetInvoker() throws Exception {
- Axis2Reference axis2Reference = createAxis2Reference("testWebAppName", "testServiceName");
+ Axis2ReferenceBinding axis2Reference = createAxis2Reference("testWebAppName", "testServiceName");
//Create a mocked InboundWire, make the call of ServiceBindingExtension.getInterface() returns a Class
InboundWire inboundWire = EasyMock.createNiceMock(InboundWire.class);
JavaServiceContract contract = new JavaServiceContract(Greeter.class);
@@ -76,7 +76,7 @@
assertTrue(asyncTargetInvoker instanceof Axis2AsyncTargetInvoker);
}
- private Axis2Reference createAxis2Reference(String webAppName, String serviceName) throws Exception {
+ private Axis2ReferenceBinding createAxis2Reference(String webAppName, String serviceName) throws Exception {
//Create WebServiceBindingDefinition
String wsdlLocation = "/wsdl/hello_world_doc_lit.wsdl";
URL url = getClass().getResource(wsdlLocation);
@@ -98,7 +98,7 @@
// TODO figure out what to do with the service contract
ServiceContract<?> contract = new WSDLServiceContract();
contract.setInterfaceClass(Greeter.class);
- return new Axis2Reference(serviceName,
+ return new Axis2ReferenceBinding(serviceName,
parent,
wsBinding,
contract, null);
Modified: incubator/tuscany/java/sca/services/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/CeltixBindingBuilder.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/CeltixBindingBuilder.java?view=diff&rev=491465&r1=491464&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/services/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/CeltixBindingBuilder.java (original)
+++ incubator/tuscany/java/sca/services/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/CeltixBindingBuilder.java Sun Dec 31 10:58:58 2006
@@ -22,7 +22,7 @@
import java.util.WeakHashMap;
import org.apache.tuscany.spi.component.CompositeComponent;
-import org.apache.tuscany.spi.component.Reference;
+import org.apache.tuscany.spi.component.ReferenceBinding;
import org.apache.tuscany.spi.component.ServiceBinding;
import org.apache.tuscany.spi.deployer.DeploymentContext;
import org.apache.tuscany.spi.extension.BindingBuilderExtension;
@@ -34,7 +34,7 @@
import org.objectweb.celtix.Bus;
/**
- * Builds a {@link org.apache.tuscany.spi.component.ServiceBinding} or {@link org.apache.tuscany.spi.component.Reference}
+ * Builds a {@link org.apache.tuscany.spi.component.ServiceBinding} or {@link org.apache.tuscany.spi.component.ReferenceBinding}
* configured with the Celtix binding
*
* @version $Rev$ $Date$
@@ -62,10 +62,10 @@
typeHelper);
}
- public Reference build(CompositeComponent parent,
- BoundReferenceDefinition<WebServiceBindingDefinition> boundReferenceDefinition,
- DeploymentContext deploymentContext) {
- WebServiceBindingDefinition wsBinding = boundReferenceDefinition.getBinding();
+ public ReferenceBinding build(CompositeComponent parent,
+ BoundReferenceDefinition boundReferenceDefinition,
+ WebServiceBindingDefinition wsBinding,
+ DeploymentContext deploymentContext) {
TypeHelper typeHelper = (TypeHelper) deploymentContext.getExtension(TypeHelper.class.getName());
if (typeHelper == null) {
typeHelper = TypeHelper.INSTANCE;
@@ -73,7 +73,7 @@
if (bus == null) {
bus = getBus(wsBinding.getWSDLDefinitionRegistry());
}
- return new CeltixReference(
+ return new CeltixReferenceBinding(
boundReferenceDefinition.getName(),
parent,
wsBinding,
Copied: incubator/tuscany/java/sca/services/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/CeltixReferenceBinding.java (from r491316, incubator/tuscany/java/sca/services/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/CeltixReference.java)
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/CeltixReferenceBinding.java?view=diff&rev=491465&p1=incubator/tuscany/java/sca/services/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/CeltixReference.java&r1=491316&p2=incubator/tuscany/java/sca/services/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/CeltixReferenceBinding.java&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/services/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/CeltixReference.java (original)
+++ incubator/tuscany/java/sca/services/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/CeltixReferenceBinding.java Sun Dec 31 10:58:58 2006
@@ -24,7 +24,7 @@
import org.apache.tuscany.spi.builder.BuilderException;
import org.apache.tuscany.spi.component.CompositeComponent;
-import org.apache.tuscany.spi.extension.ReferenceExtension;
+import org.apache.tuscany.spi.extension.ReferenceBindingExtension;
import org.apache.tuscany.spi.model.Operation;
import org.apache.tuscany.spi.model.ServiceContract;
import org.apache.tuscany.spi.wire.TargetInvoker;
@@ -33,11 +33,11 @@
import org.objectweb.celtix.Bus;
/**
- * The implementation of a {@link org.apache.tuscany.spi.component.Reference} configured with the Celtix binding
+ * The implementation of a {@link org.apache.tuscany.spi.component.ReferenceBinding} configured with the Celtix binding
*
* @version $Rev$ $Date$
*/
-public class CeltixReference<T> extends ReferenceExtension {
+public class CeltixReferenceBinding<T> extends ReferenceBindingExtension {
private Bus bus;
private Port port;
@@ -45,7 +45,7 @@
private Service wsdlService;
private TypeHelper typeHelper;
- public CeltixReference(String name,
+ public CeltixReferenceBinding(String name,
CompositeComponent parent,
WebServiceBindingDefinition binding,
Bus theBus,
Propchange: incubator/tuscany/java/sca/services/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/CeltixReferenceBinding.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/java/sca/services/bindings/binding.celtix/src/main/java/org/apache/tuscany/binding/celtix/CeltixReferenceBinding.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Modified: incubator/tuscany/java/sca/services/bindings/binding.jms/src/main/java/org/apache/tuscany/binding/jms/JMSBindingBuilder.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/bindings/binding.jms/src/main/java/org/apache/tuscany/binding/jms/JMSBindingBuilder.java?view=diff&rev=491465&r1=491464&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/services/bindings/binding.jms/src/main/java/org/apache/tuscany/binding/jms/JMSBindingBuilder.java (original)
+++ incubator/tuscany/java/sca/services/bindings/binding.jms/src/main/java/org/apache/tuscany/binding/jms/JMSBindingBuilder.java Sun Dec 31 10:58:58 2006
@@ -78,9 +78,10 @@
return serviceBinding;
}
- public JMSReference build(CompositeComponent parent,
- BoundReferenceDefinition<JMSBindingDefinition> referenceDefinition,
- DeploymentContext deploymentContext) {
+ public JMSReferenceBinding build(CompositeComponent parent,
+ BoundReferenceDefinition referenceDefinition,
+ JMSBindingDefinition jmsBinding,
+ DeploymentContext deploymentContext) {
String name = referenceDefinition.getName();
Class<?> interfaze = referenceDefinition.getServiceContract().getInterfaceClass();
@@ -92,7 +93,6 @@
}
serviceContract.setDataBinding(OM_DATA_BINDING);
- JMSBindingDefinition jmsBinding = referenceDefinition.getBinding();
JMSResourceFactory jmsResourceFactory = getJMSResourceFactory(jmsBinding);
Destination requestDest;
@@ -111,8 +111,8 @@
OperationAndDataBinding responseODB =
getRequestOperationAndDatabinding(jmsBinding, deploymentContext.getClassLoader());
- JMSReference reference =
- new JMSReference(name, parent, jmsBinding, jmsResourceFactory, requestODB, responseODB,
+ JMSReferenceBinding reference =
+ new JMSReferenceBinding(name, parent, jmsBinding, jmsResourceFactory, requestODB, responseODB,
requestDest, replyDest);
reference.setBindingServiceContract(serviceContract);
return reference;
Copied: incubator/tuscany/java/sca/services/bindings/binding.jms/src/main/java/org/apache/tuscany/binding/jms/JMSReferenceBinding.java (from r491316, incubator/tuscany/java/sca/services/bindings/binding.jms/src/main/java/org/apache/tuscany/binding/jms/JMSReference.java)
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/bindings/binding.jms/src/main/java/org/apache/tuscany/binding/jms/JMSReferenceBinding.java?view=diff&rev=491465&p1=incubator/tuscany/java/sca/services/bindings/binding.jms/src/main/java/org/apache/tuscany/binding/jms/JMSReference.java&r1=491316&p2=incubator/tuscany/java/sca/services/bindings/binding.jms/src/main/java/org/apache/tuscany/binding/jms/JMSReferenceBinding.java&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/services/bindings/binding.jms/src/main/java/org/apache/tuscany/binding/jms/JMSReference.java (original)
+++ incubator/tuscany/java/sca/services/bindings/binding.jms/src/main/java/org/apache/tuscany/binding/jms/JMSReferenceBinding.java Sun Dec 31 10:58:58 2006
@@ -21,7 +21,7 @@
import javax.jms.Destination;
import org.apache.tuscany.spi.component.CompositeComponent;
-import org.apache.tuscany.spi.extension.ReferenceExtension;
+import org.apache.tuscany.spi.extension.ReferenceBindingExtension;
import org.apache.tuscany.spi.model.Operation;
import org.apache.tuscany.spi.model.ServiceContract;
import org.apache.tuscany.spi.wire.TargetInvoker;
@@ -29,7 +29,7 @@
/**
* @version $Rev: 449970 $ $Date: 2006-09-26 06:05:35 -0400 (Tue, 26 Sep 2006) $
*/
-public class JMSReference extends ReferenceExtension {
+public class JMSReferenceBinding extends ReferenceBindingExtension {
protected JMSBindingDefinition jmsBinding;
protected JMSResourceFactory jmsResourceFactory;
@@ -38,7 +38,7 @@
protected Destination requestDest;
protected Destination replyDest;
- public JMSReference(String name,
+ public JMSReferenceBinding(String name,
CompositeComponent parent,
JMSBindingDefinition jmsBinding,
JMSResourceFactory jmsResourceFactory,
Propchange: incubator/tuscany/java/sca/services/bindings/binding.jms/src/main/java/org/apache/tuscany/binding/jms/JMSReferenceBinding.java
------------------------------------------------------------------------------
--- svn:ignores (added)
+++ svn:ignores Sun Dec 31 10:58:58 2006
@@ -0,0 +1,14 @@
+target
+*.iws
+*.ipr
+*.iml
+.project
+.classpath
+maven.log
+velocity.log*
+junit*.properties
+surefire*.properties
+.settings
+.deployables
+.wtpmodules
+
Modified: incubator/tuscany/java/sca/services/bindings/binding.rmi/src/main/java/org/apache/tuscany/binding/rmi/RMIBindingBuilder.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/bindings/binding.rmi/src/main/java/org/apache/tuscany/binding/rmi/RMIBindingBuilder.java?view=diff&rev=491465&r1=491464&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/services/bindings/binding.rmi/src/main/java/org/apache/tuscany/binding/rmi/RMIBindingBuilder.java (original)
+++ incubator/tuscany/java/sca/services/bindings/binding.rmi/src/main/java/org/apache/tuscany/binding/rmi/RMIBindingBuilder.java Sun Dec 31 10:58:58 2006
@@ -22,7 +22,7 @@
import org.apache.tuscany.spi.annotation.Autowire;
import org.apache.tuscany.spi.component.CompositeComponent;
-import org.apache.tuscany.spi.component.Reference;
+import org.apache.tuscany.spi.component.ReferenceBinding;
import org.apache.tuscany.spi.component.ServiceBinding;
import org.apache.tuscany.spi.deployer.DeploymentContext;
import org.apache.tuscany.spi.extension.BindingBuilderExtension;
@@ -68,19 +68,15 @@
intf);
}
- @SuppressWarnings({"unchecked"})
- public Reference build(CompositeComponent parent,
- BoundReferenceDefinition<RMIBindingDefinition> boundReferenceDefinition,
- DeploymentContext deploymentContext) {
+ public ReferenceBinding build(CompositeComponent parent,
+ BoundReferenceDefinition boundReferenceDefinition,
+ RMIBindingDefinition bindingDefinition,
+ DeploymentContext deploymentContext) {
String name = boundReferenceDefinition.getName();
- String host = boundReferenceDefinition.getBinding().getHost();
- String port = boundReferenceDefinition.getBinding().getPort();
- String svcName = boundReferenceDefinition.getBinding().getServiceName();
- // Class<?> interfaze = boundReferenceDefinition.getServiceContract().getInterfaceClass();
-
- return new RMIReference(name, parent, rmiHost, host, port, svcName,
- boundReferenceDefinition.getServiceContract().getInterfaceClass());
-
+ String host = bindingDefinition.getHost();
+ String port = bindingDefinition.getPort();
+ String svcName = bindingDefinition.getServiceName();
+ return new RMIReferenceBinding(name, parent, rmiHost, host, port, svcName);
}
}
Copied: incubator/tuscany/java/sca/services/bindings/binding.rmi/src/main/java/org/apache/tuscany/binding/rmi/RMIReferenceBinding.java (from r491316, incubator/tuscany/java/sca/services/bindings/binding.rmi/src/main/java/org/apache/tuscany/binding/rmi/RMIReference.java)
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/bindings/binding.rmi/src/main/java/org/apache/tuscany/binding/rmi/RMIReferenceBinding.java?view=diff&rev=491465&p1=incubator/tuscany/java/sca/services/bindings/binding.rmi/src/main/java/org/apache/tuscany/binding/rmi/RMIReference.java&r1=491316&p2=incubator/tuscany/java/sca/services/bindings/binding.rmi/src/main/java/org/apache/tuscany/binding/rmi/RMIReferenceBinding.java&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/services/bindings/binding.rmi/src/main/java/org/apache/tuscany/binding/rmi/RMIReference.java (original)
+++ incubator/tuscany/java/sca/services/bindings/binding.rmi/src/main/java/org/apache/tuscany/binding/rmi/RMIReferenceBinding.java Sun Dec 31 10:58:58 2006
@@ -19,7 +19,7 @@
import java.lang.reflect.Method;
import org.apache.tuscany.spi.component.CompositeComponent;
-import org.apache.tuscany.spi.extension.ReferenceExtension;
+import org.apache.tuscany.spi.extension.ReferenceBindingExtension;
import static org.apache.tuscany.spi.idl.java.JavaIDLUtils.findMethod;
import org.apache.tuscany.spi.model.Operation;
import org.apache.tuscany.spi.model.ServiceContract;
@@ -30,7 +30,7 @@
/**
* @version $Rev$ $Date$
*/
-public class RMIReference<T> extends ReferenceExtension {
+public class RMIReferenceBinding extends ReferenceBindingExtension {
private final String host;
private final String port;
@@ -39,13 +39,12 @@
private RMIHost rmiHost;
- public RMIReference(String name,
- CompositeComponent parent,
- RMIHost rmiHost,
- String host,
- String port,
- String svcName,
- Class<T> service) {
+ public RMIReferenceBinding(String name,
+ CompositeComponent parent,
+ RMIHost rmiHost,
+ String host,
+ String port,
+ String svcName) {
super(name, parent);
this.host = host;
this.port = port;
Propchange: incubator/tuscany/java/sca/services/bindings/binding.rmi/src/main/java/org/apache/tuscany/binding/rmi/RMIReferenceBinding.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/java/sca/services/bindings/binding.rmi/src/main/java/org/apache/tuscany/binding/rmi/RMIReferenceBinding.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Modified: incubator/tuscany/java/sca/services/bindings/binding.rmi/src/test/java/org/apache/tuscany/binding/rmi/RMIBindingBuilderTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/bindings/binding.rmi/src/test/java/org/apache/tuscany/binding/rmi/RMIBindingBuilderTestCase.java?view=diff&rev=491465&r1=491464&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/services/bindings/binding.rmi/src/test/java/org/apache/tuscany/binding/rmi/RMIBindingBuilderTestCase.java (original)
+++ incubator/tuscany/java/sca/services/bindings/binding.rmi/src/test/java/org/apache/tuscany/binding/rmi/RMIBindingBuilderTestCase.java Sun Dec 31 10:58:58 2006
@@ -16,33 +16,36 @@
*/
package org.apache.tuscany.binding.rmi;
-import static org.easymock.EasyMock.expect;
-import static org.easymock.classextension.EasyMock.createMock;
-import static org.easymock.classextension.EasyMock.replay;
-import junit.framework.TestCase;
+import java.util.ArrayList;
+import java.util.List;
+import org.apache.tuscany.spi.model.BindingDefinition;
import org.apache.tuscany.spi.model.BoundReferenceDefinition;
import org.apache.tuscany.spi.model.ServiceContract;
+import junit.framework.TestCase;
+import static org.easymock.EasyMock.expect;
+import static org.easymock.classextension.EasyMock.createMock;
+import static org.easymock.classextension.EasyMock.replay;
+
public class RMIBindingBuilderTestCase extends TestCase {
-
+
public void testGetBindingType() {
assertEquals(RMIBindingDefinition.class, new RMIBindingBuilder(null).getBindingType());
}
- @SuppressWarnings("unchecked")
public void testBuildService() {
RMIBindingBuilder builder = new RMIBindingBuilder(null);
- BoundReferenceDefinition<RMIBindingDefinition> def = createMock(BoundReferenceDefinition.class);
+ BoundReferenceDefinition def = createMock(BoundReferenceDefinition.class);
expect(def.getName()).andReturn("petra");
RMIBindingDefinition binding = new RMIBindingDefinition();
- expect(def.getBinding()).andReturn(binding );
- expect(def.getBinding()).andReturn(binding );
- expect(def.getBinding()).andReturn(binding );
+ List<BindingDefinition> bindings = new ArrayList<BindingDefinition>();
+ bindings.add(binding);
+ expect(def.getBindings()).andReturn(bindings).times(3);
ServiceContract sc = createMock(ServiceContract.class);
expect(def.getServiceContract()).andReturn(sc);
replay(def);
- Object ref = builder.build(null, def, null);
- assertTrue(ref instanceof RMIReference);
+ Object ref = builder.build(null, def, binding, null);
+ assertTrue(ref instanceof RMIReferenceBinding);
}
}
Modified: incubator/tuscany/java/sca/services/bindings/binding.rmi/src/test/java/org/apache/tuscany/binding/rmi/RMIReferenceTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/bindings/binding.rmi/src/test/java/org/apache/tuscany/binding/rmi/RMIReferenceTestCase.java?view=diff&rev=491465&r1=491464&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/services/bindings/binding.rmi/src/test/java/org/apache/tuscany/binding/rmi/RMIReferenceTestCase.java (original)
+++ incubator/tuscany/java/sca/services/bindings/binding.rmi/src/test/java/org/apache/tuscany/binding/rmi/RMIReferenceTestCase.java Sun Dec 31 10:58:58 2006
@@ -31,7 +31,7 @@
@SuppressWarnings("unchecked")
public void testCreateTargetInvoker() {
// TODO: this doesn't really test anything yet
- RMIReference ref = new RMIReference(null, null, null, null, null, null, null);
+ RMIReferenceBinding ref = new RMIReferenceBinding(null, null, null, null, null, null);
ServiceContract contract = new JavaServiceContract();
contract.setInterfaceClass(String.class);
List l = new ArrayList();
Modified: incubator/tuscany/java/sca/services/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/impl/SpringCompositeBuilder.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/impl/SpringCompositeBuilder.java?view=diff&rev=491465&r1=491464&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/services/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/impl/SpringCompositeBuilder.java (original)
+++ incubator/tuscany/java/sca/services/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/impl/SpringCompositeBuilder.java Sun Dec 31 10:58:58 2006
@@ -24,9 +24,10 @@
import org.apache.tuscany.spi.component.Component;
import org.apache.tuscany.spi.component.ComponentRegistrationException;
import org.apache.tuscany.spi.component.CompositeComponent;
-import org.apache.tuscany.spi.component.Reference;
+import org.apache.tuscany.spi.component.ReferenceBinding;
import org.apache.tuscany.spi.component.Service;
import org.apache.tuscany.spi.component.ServiceBinding;
+import org.apache.tuscany.spi.component.Reference;
import org.apache.tuscany.spi.deployer.DeploymentContext;
import org.apache.tuscany.spi.extension.ComponentBuilderExtension;
import org.apache.tuscany.spi.model.BoundReferenceDefinition;
@@ -83,9 +84,9 @@
throw new BuilderInstantiationException("Error registering service", e);
}
}
- for (BoundReferenceDefinition<?> referenceDefinition : componentType.getReferences().values()) {
+ for (BoundReferenceDefinition referenceDefinition : componentType.getReferences().values()) {
// call back into builder registry to handle building of references
- Reference reference = (Reference) builderRegistry.build(parent, referenceDefinition, deploymentContext);
+ Reference reference = builderRegistry.build(parent, referenceDefinition, deploymentContext);
connector.connect(reference);
try {
component.register(reference);
Modified: incubator/tuscany/java/sca/services/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/impl/SpringCompositeComponent.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/impl/SpringCompositeComponent.java?view=diff&rev=491465&r1=491464&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/services/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/impl/SpringCompositeComponent.java (original)
+++ incubator/tuscany/java/sca/services/containers/container.spring/src/main/java/org/apache/tuscany/container/spring/impl/SpringCompositeComponent.java Sun Dec 31 10:58:58 2006
@@ -166,15 +166,20 @@
if (object == null) {
return null;
}
- Class<?> type;
+ Class<?> type = null;
if (object instanceof Reference) {
Reference reference = (Reference) object;
- type = reference.getInboundWire().getServiceContract().getInterfaceClass();
+ InboundWire wire = null;
+ if (!reference.getReferenceBindings().isEmpty()) {
+ // FIXME JFM provide a better way for the runtime to select the binding as opposed to the first one
+ wire = reference.getReferenceBindings().get(0).getInboundWire();
+ type = wire.getServiceContract().getInterfaceClass();
+ }
if (requiredType != null && requiredType.isAssignableFrom(type)) {
// need null check since Spring may pass in a null
throw new BeanNotOfRequiredTypeException(name, requiredType, type);
}
- return wireService.createProxy(type, reference.getInboundWire());
+ return wireService.createProxy(type, wire);
} else if (object instanceof ServiceBinding) {
ServiceBinding serviceBinding = (ServiceBinding) object;
type = serviceBinding.getInboundWire().getServiceContract().getInterfaceClass();
Modified: incubator/tuscany/java/sca/services/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/impl/ReferenceInvocationTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/impl/ReferenceInvocationTestCase.java?view=diff&rev=491465&r1=491464&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/services/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/impl/ReferenceInvocationTestCase.java (original)
+++ incubator/tuscany/java/sca/services/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/impl/ReferenceInvocationTestCase.java Sun Dec 31 10:58:58 2006
@@ -19,7 +19,10 @@
package org.apache.tuscany.container.spring.impl;
import java.net.URL;
+import java.util.List;
+import java.util.ArrayList;
+import org.apache.tuscany.spi.component.ReferenceBinding;
import org.apache.tuscany.spi.component.Reference;
import org.apache.tuscany.spi.model.ServiceContract;
import org.apache.tuscany.spi.wire.InboundWire;
@@ -48,10 +51,17 @@
EasyMock.expect(inboundWire.getServiceContract()).andReturn(new ServiceContract(TestBean.class) {
}).atLeastOnce();
EasyMock.replay(inboundWire);
- Reference reference = createMock(Reference.class);
- expect(reference.getName()).andReturn("bar").anyTimes();
+ ReferenceBinding referenceBinding = createMock(ReferenceBinding.class);
+ expect(referenceBinding.isSystem()).andReturn(false).atLeastOnce();
+ expect(referenceBinding.getInboundWire()).andStubReturn(inboundWire);
+ referenceBinding.start();
+ replay(referenceBinding);
+
+ Reference reference = EasyMock.createMock(Reference.class);
expect(reference.isSystem()).andReturn(false).atLeastOnce();
- expect(reference.getInboundWire()).andStubReturn(inboundWire);
+ expect(reference.getName()).andReturn("bar").anyTimes();
+ List<ReferenceBinding> bindings = new ArrayList <ReferenceBinding>();
+ expect(reference.getReferenceBindings()).andReturn(bindings);
reference.start();
replay(reference);
parent.register(reference);
Modified: incubator/tuscany/java/sca/services/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/integration/BootstrapTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/services/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/integration/BootstrapTestCase.java?view=diff&rev=491465&r1=491464&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/services/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/integration/BootstrapTestCase.java (original)
+++ incubator/tuscany/java/sca/services/containers/container.spring/src/test/java/org/apache/tuscany/container/spring/integration/BootstrapTestCase.java Sun Dec 31 10:58:58 2006
@@ -30,7 +30,8 @@
ServiceBinding binding = service.getServiceBindings().get(0);
TestBean bean = wireService.createProxy(TestBean.class, binding.getInboundWire());
bean.echo("foo");
- bean.getBean().echo("foo");
+ TestBean bean2 = bean.getBean();
+ bean2.echo("foo");
}
protected void setUp() throws Exception {
Modified: incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestBindingBuilder.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestBindingBuilder.java?view=diff&rev=491465&r1=491464&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestBindingBuilder.java (original)
+++ incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestBindingBuilder.java Sun Dec 31 10:58:58 2006
@@ -19,7 +19,7 @@
package org.apache.tuscany.test.binding;
import org.apache.tuscany.spi.component.CompositeComponent;
-import org.apache.tuscany.spi.component.Reference;
+import org.apache.tuscany.spi.component.ReferenceBinding;
import org.apache.tuscany.spi.component.ServiceBinding;
import org.apache.tuscany.spi.deployer.DeploymentContext;
import org.apache.tuscany.spi.extension.BindingBuilderExtension;
@@ -39,11 +39,12 @@
return new TestBindingServiceBinding(definition.getName(), parent);
}
- public Reference build(CompositeComponent parent,
- BoundReferenceDefinition<TestBindingDefinition> definition,
- DeploymentContext ctx) {
+ public ReferenceBinding build(CompositeComponent parent,
+ BoundReferenceDefinition definition,
+ TestBindingDefinition bindingDefinition,
+ DeploymentContext ctx) {
String name = definition.getName();
- return new TestBindingReference(name, parent);
+ return new TestReferenceBinding(name, parent);
}
protected Class<TestBindingDefinition> getBindingType() {
Copied: incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestReferenceBinding.java (from r491316, incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestBindingReference.java)
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestReferenceBinding.java?view=diff&rev=491465&p1=incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestBindingReference.java&r1=491316&p2=incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestReferenceBinding.java&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestBindingReference.java (original)
+++ incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestReferenceBinding.java Sun Dec 31 10:58:58 2006
@@ -1,7 +1,7 @@
package org.apache.tuscany.test.binding;
import org.apache.tuscany.spi.component.CompositeComponent;
-import org.apache.tuscany.spi.extension.ReferenceExtension;
+import org.apache.tuscany.spi.extension.ReferenceBindingExtension;
import org.apache.tuscany.spi.model.Operation;
import org.apache.tuscany.spi.model.ServiceContract;
import org.apache.tuscany.spi.wire.TargetInvoker;
@@ -9,9 +9,9 @@
/**
* @version $Rev$ $Date$
*/
-public class TestBindingReference extends ReferenceExtension {
+public class TestReferenceBinding extends ReferenceBindingExtension {
- public TestBindingReference(String name, CompositeComponent parent) {
+ public TestReferenceBinding(String name, CompositeComponent parent) {
super(name, parent);
}
Propchange: incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestReferenceBinding.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestReferenceBinding.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Modified: incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestSocketBindingBuilder.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestSocketBindingBuilder.java?view=diff&rev=491465&r1=491464&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestSocketBindingBuilder.java (original)
+++ incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestSocketBindingBuilder.java Sun Dec 31 10:58:58 2006
@@ -1,7 +1,7 @@
package org.apache.tuscany.test.binding;
import org.apache.tuscany.spi.component.CompositeComponent;
-import org.apache.tuscany.spi.component.Reference;
+import org.apache.tuscany.spi.component.ReferenceBinding;
import org.apache.tuscany.spi.component.ServiceBinding;
import org.apache.tuscany.spi.deployer.DeploymentContext;
import org.apache.tuscany.spi.extension.BindingBuilderExtension;
@@ -21,13 +21,14 @@
return new TestSocketBindingServiceBinding(definition.getName(), port, parent);
}
- public Reference build(CompositeComponent parent,
- BoundReferenceDefinition<TestSocketBindingDefinition> definition,
- DeploymentContext ctx) {
+ public ReferenceBinding build(CompositeComponent parent,
+ BoundReferenceDefinition definition,
+ TestSocketBindingDefinition bindingDefinition,
+ DeploymentContext ctx) {
String name = definition.getName();
- int port = definition.getBinding().getPort();
- String host = definition.getBinding().getHost();
- return new TestSocketBindingReference(name, host, port, parent);
+ int port = bindingDefinition.getPort();
+ String host = bindingDefinition.getHost();
+ return new TestSocketReferenceBinding(name, host, port, parent);
}
protected Class<TestSocketBindingDefinition> getBindingType() {
Copied: incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestSocketReferenceBinding.java (from r491316, incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestSocketBindingReference.java)
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestSocketReferenceBinding.java?view=diff&rev=491465&p1=incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestSocketBindingReference.java&r1=491316&p2=incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestSocketReferenceBinding.java&r2=491465
==============================================================================
--- incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestSocketBindingReference.java (original)
+++ incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestSocketReferenceBinding.java Sun Dec 31 10:58:58 2006
@@ -1,7 +1,7 @@
package org.apache.tuscany.test.binding;
import org.apache.tuscany.spi.component.CompositeComponent;
-import org.apache.tuscany.spi.extension.ReferenceExtension;
+import org.apache.tuscany.spi.extension.ReferenceBindingExtension;
import org.apache.tuscany.spi.model.Operation;
import org.apache.tuscany.spi.model.ServiceContract;
import org.apache.tuscany.spi.wire.TargetInvoker;
@@ -9,12 +9,12 @@
/**
* @version $Rev$ $Date$
*/
-public class TestSocketBindingReference extends ReferenceExtension {
+public class TestSocketReferenceBinding extends ReferenceBindingExtension {
private String host;
private int port;
- public TestSocketBindingReference(String name,
+ public TestSocketReferenceBinding(String name,
String host,
int port,
CompositeComponent parent) {
Propchange: incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestSocketReferenceBinding.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/tuscany/java/sca/test/src/main/java/org/apache/tuscany/test/binding/TestSocketReferenceBinding.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org