You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by rf...@apache.org on 2007/04/05 08:08:41 UTC
svn commit: r525717 [3/4] - in /incubator/tuscany/java/sca/modules/core: ./
src/main/java/org/apache/tuscany/core/binding/local/
src/main/java/org/apache/tuscany/core/bootstrap/
src/main/java/org/apache/tuscany/core/builder/ src/main/java/org/apache/tu...
Modified: incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/builder/BuilderRegistryTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/builder/BuilderRegistryTestCase.java?view=diff&rev=525717&r1=525716&r2=525717
==============================================================================
--- incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/builder/BuilderRegistryTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/builder/BuilderRegistryTestCase.java Wed Apr 4 23:08:37 2007
@@ -21,6 +21,24 @@
import java.net.URI;
import java.util.Map;
+import junit.framework.TestCase;
+
+import org.apache.tuscany.assembly.ComponentService;
+import org.apache.tuscany.assembly.ComponentType;
+import org.apache.tuscany.assembly.Composite;
+import org.apache.tuscany.assembly.CompositeReference;
+import org.apache.tuscany.assembly.CompositeService;
+import org.apache.tuscany.assembly.Implementation;
+import org.apache.tuscany.assembly.Multiplicity;
+import org.apache.tuscany.assembly.impl.BindingImpl;
+import org.apache.tuscany.assembly.impl.ComponentImpl;
+import org.apache.tuscany.assembly.impl.ComponentServiceImpl;
+import org.apache.tuscany.assembly.impl.ComponentTypeImpl;
+import org.apache.tuscany.assembly.impl.CompositeImpl;
+import org.apache.tuscany.assembly.impl.CompositeReferenceImpl;
+import org.apache.tuscany.assembly.impl.CompositeServiceImpl;
+import org.apache.tuscany.core.implementation.composite.ServiceImpl;
+import org.apache.tuscany.spi.Scope;
import org.apache.tuscany.spi.builder.BindingBuilder;
import org.apache.tuscany.spi.builder.BuilderConfigException;
import org.apache.tuscany.spi.builder.BuilderRegistry;
@@ -34,18 +52,6 @@
import org.apache.tuscany.spi.component.Service;
import org.apache.tuscany.spi.component.ServiceBinding;
import org.apache.tuscany.spi.deployer.DeploymentContext;
-import org.apache.tuscany.spi.model.BindingDefinition;
-import org.apache.tuscany.spi.model.ComponentDefinition;
-import org.apache.tuscany.spi.model.ComponentType;
-import org.apache.tuscany.spi.model.CompositeComponentType;
-import org.apache.tuscany.spi.model.CompositeImplementation;
-import org.apache.tuscany.spi.model.Implementation;
-import static org.apache.tuscany.spi.model.Multiplicity.ONE_ONE;
-import org.apache.tuscany.spi.model.ReferenceDefinition;
-import org.apache.tuscany.spi.model.Scope;
-import org.apache.tuscany.spi.model.ServiceDefinition;
-
-import junit.framework.TestCase;
import org.easymock.EasyMock;
/**
@@ -62,13 +68,14 @@
@SuppressWarnings({"unchecked"})
public void testRegistration() throws Exception {
URI componentId = URI.create("sca://localhost/component");
- CompositeImplementation implementation = new CompositeImplementation();
- ComponentDefinition<CompositeImplementation> componentDefinition =
- new ComponentDefinition<CompositeImplementation>(implementation);
- componentDefinition.getImplementation().setComponentType(new CompositeComponentType());
+ Composite implementation = new CompositeImpl();
+ org.apache.tuscany.assembly.Component componentDefinition =
+ new ComponentImpl();
+ componentDefinition.setImplementation(implementation);
Component component = EasyMock.createMock(Component.class);
- component.setDefaultPropertyValues(componentDefinition.getPropertyValues());
+ // FIXME:
+ // component.setDefaultPropertyValues(componentDefinition.getPropertyValues());
component.setScopeContainer(scopeContainer);
EasyMock.expect(component.getUri()).andReturn(componentId);
EasyMock.replay(component);
@@ -85,7 +92,7 @@
EasyMock.replay(builder);
BuilderRegistry registry = new BuilderRegistryImpl(null);
- registry.register(CompositeImplementation.class, builder);
+ registry.register(Composite.class, builder);
assertSame(component, registry.build(componentDefinition, deploymentContext));
EasyMock.verify(builder);
@@ -98,15 +105,18 @@
EasyMock.replay(binding);
BindingBuilder<MockBindingDefinition> builder = EasyMock.createMock(BindingBuilder.class);
EasyMock.expect(builder.build(
- EasyMock.isA(ServiceDefinition.class),
+ EasyMock.isA(CompositeService.class),
EasyMock.isA(MockBindingDefinition.class),
EasyMock.isA(DeploymentContext.class))).andReturn(binding).times(2);
EasyMock.replay(builder);
registry.register(MockBindingDefinition.class, builder);
- ServiceDefinition definition = new ServiceDefinition(URI.create("#foo"), null, false);
- definition.addBinding(new MockBindingDefinition());
- definition.addBinding(new MockBindingDefinition());
- definition.setTarget(new URI("foo"));
+ CompositeService definition = new CompositeServiceImpl();
+ definition.setName("foo");
+ definition.getBindings().add(new MockBindingDefinition());
+ definition.getBindings().add(new MockBindingDefinition());
+ ComponentService target = new ComponentServiceImpl();
+ target.setName("foo");
+ definition.setPromotedService(target);
Service service = registry.build(definition, deploymentContext);
assertEquals(2, service.getServiceBindings().size());
}
@@ -118,14 +128,16 @@
EasyMock.replay(binding);
BindingBuilder<MockBindingDefinition> builder = EasyMock.createMock(BindingBuilder.class);
EasyMock.expect(builder.build(
- EasyMock.isA(ReferenceDefinition.class),
+ EasyMock.isA(CompositeReference.class),
EasyMock.isA(MockBindingDefinition.class),
EasyMock.isA(DeploymentContext.class))).andReturn(binding).times(2);
EasyMock.replay(builder);
registry.register(MockBindingDefinition.class, builder);
- ReferenceDefinition definition = new ReferenceDefinition(URI.create("#foo"), null, ONE_ONE);
- definition.addBinding(new MockBindingDefinition());
- definition.addBinding(new MockBindingDefinition());
+ CompositeReference definition = new CompositeReferenceImpl();
+ definition.setName("foo");
+ definition.setMultiplicity(Multiplicity.ONE_ONE);
+ definition.getBindings().add(new MockBindingDefinition());
+ definition.getBindings().add(new MockBindingDefinition());
Reference reference = registry.build(definition, deploymentContext);
assertEquals(2, reference.getReferenceBindings().size());
}
@@ -140,19 +152,19 @@
AtomicComponent component = EasyMock.createNiceMock(AtomicComponent.class);
EasyMock.replay(component);
- ComponentBuilder<FooImplementation> builder = EasyMock.createMock(ComponentBuilder.class);
+ ComponentBuilder builder = EasyMock.createMock(ComponentBuilder.class);
EasyMock.expect(builder.build(
- EasyMock.isA(ComponentDefinition.class),
+ EasyMock.isA(org.apache.tuscany.assembly.Component.class),
EasyMock.isA(DeploymentContext.class))).andReturn(component);
EasyMock.replay(builder);
registry.register(FooImplementation.class, builder);
FooImplementation impl = new FooImplementation();
- ComponentType componentType = new ComponentType();
- componentType.setImplementationScope(Scope.CONVERSATION);
- impl.setComponentType(componentType);
+ // FIXME:
+ // impl.setImplementationScope(Scope.CONVERSATION);
URI uri = URI.create("foo");
- ComponentDefinition<FooImplementation> definition = new ComponentDefinition<FooImplementation>(uri, impl);
+ org.apache.tuscany.assembly.Component definition = new ComponentImpl();
+ definition.setImplementation(impl);
try {
registry.build(definition, deploymentContext);
fail("Should throw NoConversationalContractException");
@@ -170,19 +182,19 @@
components = EasyMock.createMock(Map.class);
}
- private class MockBuilder implements ComponentBuilder<CompositeImplementation> {
+ private class MockBuilder implements ComponentBuilder {
public Component build(
- ComponentDefinition componentDefinition,
+ org.apache.tuscany.assembly.Component componentDefinition,
DeploymentContext deploymentContext) throws BuilderConfigException {
return null;
}
}
- private class MockBindingDefinition extends BindingDefinition {
+ private class MockBindingDefinition extends BindingImpl {
}
- private class FooImplementation extends Implementation<ComponentType> {
+ private class FooImplementation extends ComponentTypeImpl implements Implementation {
}
Modified: incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/builder/ConnectorImplTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/builder/ConnectorImplTestCase.java?view=diff&rev=525717&r1=525716&r2=525717
==============================================================================
--- incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/builder/ConnectorImplTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/builder/ConnectorImplTestCase.java Wed Apr 4 23:08:37 2007
@@ -23,29 +23,40 @@
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
+
import javax.xml.namespace.QName;
+import junit.framework.TestCase;
+
+import org.apache.tuscany.assembly.AssemblyFactory;
+import org.apache.tuscany.assembly.ComponentReference;
+import org.apache.tuscany.assembly.ComponentService;
+import org.apache.tuscany.assembly.ComponentType;
+import org.apache.tuscany.assembly.Contract;
+import org.apache.tuscany.assembly.Implementation;
+import org.apache.tuscany.assembly.Multiplicity;
+import org.apache.tuscany.assembly.Property;
+import org.apache.tuscany.assembly.Reference;
+import org.apache.tuscany.assembly.impl.ComponentImpl;
+import org.apache.tuscany.assembly.impl.ComponentReferenceImpl;
+import org.apache.tuscany.assembly.impl.ComponentServiceImpl;
+import org.apache.tuscany.assembly.impl.ComponentTypeImpl;
+import org.apache.tuscany.assembly.impl.DefaultAssemblyFactory;
+import org.apache.tuscany.assembly.impl.ReferenceImpl;
+import org.apache.tuscany.core.component.ComponentManagerImpl;
+import org.apache.tuscany.core.wire.InvokerInterceptor;
+import org.apache.tuscany.core.wire.NonBlockingInterceptor;
+import org.apache.tuscany.idl.Operation;
+import org.apache.tuscany.idl.impl.OperationImpl;
+import org.apache.tuscany.idl.java.JavaInterface;
+import org.apache.tuscany.idl.java.impl.JavaInterfaceImpl;
+import org.apache.tuscany.spi.Scope;
import org.apache.tuscany.spi.component.AtomicComponent;
import org.apache.tuscany.spi.component.Component;
import org.apache.tuscany.spi.component.ComponentManager;
-import org.apache.tuscany.spi.model.ComponentDefinition;
-import org.apache.tuscany.spi.model.ComponentType;
-import org.apache.tuscany.spi.model.Implementation;
-import org.apache.tuscany.spi.model.Operation;
-import org.apache.tuscany.spi.model.Property;
-import org.apache.tuscany.spi.model.ReferenceDefinition;
-import org.apache.tuscany.spi.model.ReferenceTarget;
-import org.apache.tuscany.spi.model.Scope;
-import org.apache.tuscany.spi.model.ServiceContract;
-import org.apache.tuscany.spi.model.ServiceDefinition;
import org.apache.tuscany.spi.wire.Interceptor;
import org.apache.tuscany.spi.wire.InvocationChain;
import org.apache.tuscany.spi.wire.Wire;
-
-import junit.framework.TestCase;
-import org.apache.tuscany.core.component.ComponentManagerImpl;
-import org.apache.tuscany.core.wire.InvokerInterceptor;
-import org.apache.tuscany.core.wire.NonBlockingInterceptor;
import org.easymock.EasyMock;
/**
@@ -55,33 +66,32 @@
private TestConnector connector;
private ComponentManager manager;
+ private static class TestImplementation extends ComponentTypeImpl implements Implementation {
+
+ }
+
public void testConnectTargetNotFound() throws Exception {
- Implementation<ComponentType<ServiceDefinition, ReferenceDefinition, Property<?>>> impl =
- new Implementation<ComponentType<ServiceDefinition, ReferenceDefinition, Property<?>>>() {
- };
- ComponentType<ServiceDefinition, ReferenceDefinition, Property<?>> type =
- new ComponentType<ServiceDefinition, ReferenceDefinition, Property<?>>();
+ Implementation impl = new TestImplementation();
URI refUri = URI.create("ref");
- ReferenceDefinition referenceDefinition = new ReferenceDefinition(refUri, null);
- referenceDefinition.setRequired(true);
- type.add(referenceDefinition);
- impl.setComponentType(type);
+ Reference referenceDefinition = new ReferenceImpl();
+ referenceDefinition.setName("ref");
+ referenceDefinition.setMultiplicity(Multiplicity.ONE_ONE);
+ impl.getReferences().add(referenceDefinition);
URI sourceUri = URI.create("source");
- ComponentDefinition<?> definition =
- new ComponentDefinition<Implementation<ComponentType<ServiceDefinition,
- ReferenceDefinition, Property<?>>>>(impl);
- definition.setUri(sourceUri);
- ReferenceTarget referenceTarget = new ReferenceTarget();
- referenceTarget.setReferenceName(refUri);
- referenceTarget.addTarget(URI.create("NotThere"));
- definition.add(referenceTarget);
+ org.apache.tuscany.assembly.Component definition = new ComponentImpl();
+ definition.setImplementation(impl);
+ definition.setName("source");
+
+ ComponentReference referenceTarget = new ComponentReferenceImpl();
+ referenceTarget.setName("ref");
+ definition.getReferences().add(referenceTarget);
Component component = EasyMock.createMock(Component.class);
EasyMock.expect(component.getUri()).andReturn(sourceUri);
EasyMock.replay(component);
manager.register(component);
try {
- connector.connect(definition);
+ connector.connect(URI.create("/default"), definition);
fail();
} catch (ComponentNotFoundException e) {
// expected
@@ -89,37 +99,34 @@
}
/**
- * Verifies a non-existent target does not throw an error.
- * <p/>
- * TODO JFM when the allocator is in place it should optimize connecting to non-existent targets but keep it for
- * now
+ * Verifies a non-existent target does not throw an error. <p/> TODO JFM
+ * when the allocator is in place it should optimize connecting to
+ * non-existent targets but keep it for now
*/
public void testConnectTargetNotFoundNonRequiredReference() throws Exception {
- Implementation<ComponentType<ServiceDefinition, ReferenceDefinition, Property<?>>> impl =
- new Implementation<ComponentType<ServiceDefinition, ReferenceDefinition, Property<?>>>() {
- };
- ComponentType<ServiceDefinition, ReferenceDefinition, Property<?>> type =
- new ComponentType<ServiceDefinition, ReferenceDefinition, Property<?>>();
- URI refUri = URI.create("ref");
- ReferenceDefinition referenceDefinition = new ReferenceDefinition(refUri, null);
- referenceDefinition.setRequired(false);
- type.add(referenceDefinition);
- impl.setComponentType(type);
+ TestImplementation impl = new TestImplementation();
+ Reference referenceDefinition = new ReferenceImpl();
+ referenceDefinition.setName("ref");
+ referenceDefinition.setMultiplicity(Multiplicity.ZERO_ONE);
+ impl.getReferences().add(referenceDefinition);
URI sourceUri = URI.create("source");
- ComponentDefinition<?> definition =
- new ComponentDefinition<Implementation<ComponentType<ServiceDefinition,
- ReferenceDefinition, Property<?>>>>(impl);
- definition.setUri(sourceUri);
- ReferenceTarget referenceTarget = new ReferenceTarget();
- referenceTarget.setReferenceName(refUri);
- referenceTarget.addTarget(URI.create("NotThere"));
- definition.add(referenceTarget);
+ org.apache.tuscany.assembly.Component definition = new ComponentImpl();
+ definition.setImplementation(impl);
+
+ definition.setName("source");
+ ComponentReference referenceTarget = new ComponentReferenceImpl();
+ referenceTarget.setName("ref");
+ ComponentService service = new ComponentServiceImpl();
+
+ // FIXME:
+ // referenceTarget.getTargets().add(URI.create("NotThere"));
+ definition.getReferences().add(referenceTarget);
Component component = EasyMock.createMock(Component.class);
EasyMock.expect(component.getUri()).andReturn(sourceUri);
EasyMock.replay(component);
manager.register(component);
- connector.connect(definition);
+ connector.connect(URI.create("/default"), definition);
}
public void testNonOptimizableTargetComponent() throws Exception {
@@ -217,13 +224,11 @@
}
public void testCreateSyncForwardWire() throws Exception {
- ServiceContract<Type> contract = new ServiceContract<Type>() {
-
- };
- Operation<Type> operation = new Operation<Type>("operation", null, null, null);
- Map<String, Operation<Type>> operations = new HashMap<String, Operation<Type>>();
+ Contract contract = createContract();
+ Operation operation = new OperationImpl("operation");
+ Map<String, Operation> operations = new HashMap<String, Operation>();
operations.put("operation", operation);
- contract.setOperations(operations);
+ contract.getInterface().getOperations().addAll(operations.values());
Wire wire = connector.createWire(URI.create("target"), URI.create("#ref"), contract, Wire.LOCAL_BINDING);
assertEquals(1, wire.getInvocationChains().size());
InvocationChain chain = wire.getInvocationChains().get(operation);
@@ -232,19 +237,17 @@
}
public void testCreateSyncCallbackWire() throws Exception {
- ServiceContract<Type> contract = new ServiceContract<Type>() {
+ Contract contract = createContract();
- };
-
- Operation<Type> operation = new Operation<Type>("operation", null, null, null);
- Map<String, Operation<Type>> operations = new HashMap<String, Operation<Type>>();
+ Operation operation = new OperationImpl("operation");
+ Map<String, Operation> operations = new HashMap<String, Operation>();
operations.put("operation", operation);
- contract.setOperations(operations);
+ contract.getInterface().getOperations().addAll(operations.values());
- Operation<Type> callbackOperation = new Operation<Type>("operation", null, null, null);
- Map<String, Operation<Type>> callbackOperations = new HashMap<String, Operation<Type>>();
+ Operation callbackOperation = new OperationImpl("operation");
+ Map<String, Operation> callbackOperations = new HashMap<String, Operation>();
callbackOperations.put("operation", callbackOperation);
- contract.setCallbackOperations(callbackOperations);
+ contract.getCallbackInterface().getOperations().addAll(callbackOperations.values());
Wire wire = connector.createWire(URI.create("target"), URI.create("#ref"), contract, Wire.LOCAL_BINDING);
assertEquals(1, wire.getCallbackInvocationChains().size());
@@ -254,14 +257,12 @@
}
public void testCreateNonBlockingForwardWire() throws Exception {
- ServiceContract<Type> contract = new ServiceContract<Type>() {
-
- };
- Operation<Type> operation = new Operation<Type>("operation", null, null, null);
+ Contract contract = createContract();
+ Operation operation = new OperationImpl("operation");
operation.setNonBlocking(true);
- Map<String, Operation<Type>> operations = new HashMap<String, Operation<Type>>();
+ Map<String, Operation> operations = new HashMap<String, Operation>();
operations.put("operation", operation);
- contract.setOperations(operations);
+ contract.getInterface().getOperations().addAll(operations.values());
Wire wire = connector.createWire(URI.create("target"), URI.create("#ref"), contract, Wire.LOCAL_BINDING);
assertEquals(1, wire.getInvocationChains().size());
InvocationChain chain = wire.getInvocationChains().get(operation);
@@ -271,21 +272,19 @@
}
public void testCreateNonBlockingCallbackWire() throws Exception {
- ServiceContract<Type> contract = new ServiceContract<Type>() {
-
- };
+ Contract contract = createContract();
- Operation<Type> operation = new Operation<Type>("operation", null, null, null);
+ Operation operation = new OperationImpl("operation");
operation.setNonBlocking(true);
- Map<String, Operation<Type>> operations = new HashMap<String, Operation<Type>>();
+ Map<String, Operation> operations = new HashMap<String, Operation>();
operations.put("operation", operation);
- contract.setOperations(operations);
+ contract.getInterface().getOperations().addAll(operations.values());
- Operation<Type> callbackOperation = new Operation<Type>("operation", null, null, null);
+ Operation callbackOperation = new OperationImpl("operation");
callbackOperation.setNonBlocking(true);
- Map<String, Operation<Type>> callbackOperations = new HashMap<String, Operation<Type>>();
+ Map<String, Operation> callbackOperations = new HashMap<String, Operation>();
callbackOperations.put("operation", callbackOperation);
- contract.setCallbackOperations(callbackOperations);
+ contract.getCallbackInterface().getOperations().addAll(callbackOperations.values());
Wire wire = connector.createWire(URI.create("target"), URI.create("#ref"), contract, Wire.LOCAL_BINDING);
assertEquals(1, wire.getCallbackInvocationChains().size());
@@ -301,13 +300,22 @@
connector = new TestConnector(manager);
}
+ private Contract createContract() {
+ AssemblyFactory factory = new DefaultAssemblyFactory();
+ ComponentService service = factory.createComponentService();
+ JavaInterface javaInterface = new JavaInterfaceImpl();
+ javaInterface.setJavaClass(Object.class);
+ service.setInterface(javaInterface);
+ return service;
+ }
+
private class TestConnector extends ConnectorImpl {
public TestConnector(ComponentManager componentManager) {
super(componentManager);
}
- protected Wire createWire(URI sourceURI, URI targetUri, ServiceContract<?> contract, QName bindingType) {
+ protected Wire createWire(URI sourceURI, URI targetUri, Contract contract, QName bindingType) {
return super.createWire(sourceURI, targetUri, contract, bindingType);
}
Modified: incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/JavaObjectRegistrationTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/JavaObjectRegistrationTestCase.java?view=diff&rev=525717&r1=525716&r2=525717
==============================================================================
--- incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/JavaObjectRegistrationTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/JavaObjectRegistrationTestCase.java Wed Apr 4 23:08:37 2007
@@ -20,25 +20,38 @@
import java.net.URI;
+import junit.framework.TestCase;
+
+import org.apache.tuscany.assembly.AssemblyFactory;
+import org.apache.tuscany.assembly.ComponentService;
+import org.apache.tuscany.assembly.impl.DefaultAssemblyFactory;
+import org.apache.tuscany.idl.java.JavaInterface;
+import org.apache.tuscany.idl.java.impl.DefaultJavaFactory;
import org.apache.tuscany.spi.component.AtomicComponent;
import org.apache.tuscany.spi.component.Component;
import org.apache.tuscany.spi.component.ComponentManager;
import org.apache.tuscany.spi.component.DuplicateNameException;
-import org.apache.tuscany.spi.idl.java.JavaServiceContract;
-
-import junit.framework.TestCase;
/**
* @version $Rev$ $Date$
*/
public class JavaObjectRegistrationTestCase extends TestCase {
private ComponentManager componentManager;
-
+
+ private <S> ComponentService createContract(Class<S> type) {
+ AssemblyFactory factory = new DefaultAssemblyFactory();
+ ComponentService contract = factory.createComponentService();
+ JavaInterface javaInterface = new DefaultJavaFactory().createJavaInterface();
+ javaInterface.setJavaClass(type);
+ contract.setInterface(javaInterface);
+ return contract;
+ }
+
public void testRegistration() throws Exception {
MockComponent instance = new MockComponent();
URI uri = URI.create("foo");
- JavaServiceContract<MockComponent> contract = new JavaServiceContract<MockComponent>(MockComponent.class) {
- };
+
+ ComponentService contract = createContract(MockComponent.class);
componentManager.registerJavaObject(uri, contract, instance);
Component component = componentManager.getComponent(URI.create("foo"));
assertTrue(component instanceof AtomicComponent);
@@ -49,8 +62,7 @@
public void testDuplicateRegistration() throws Exception {
MockComponent instance = new MockComponent();
URI uri = URI.create("foo");
- JavaServiceContract<MockComponent> contract = new JavaServiceContract<MockComponent>(MockComponent.class) {
- };
+ ComponentService contract = createContract(MockComponent.class);
componentManager.registerJavaObject(uri, contract, instance);
try {
componentManager.registerJavaObject(uri, contract, instance);
Copied: incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/SingletonAtomicComponentTestCase.java (from r525597, incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/SystemSingletonAtomicComponentTestCase.java)
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/SingletonAtomicComponentTestCase.java?view=diff&rev=525717&p1=incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/SystemSingletonAtomicComponentTestCase.java&r1=525597&p2=incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/SingletonAtomicComponentTestCase.java&r2=525717
==============================================================================
--- incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/SystemSingletonAtomicComponentTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/SingletonAtomicComponentTestCase.java Wed Apr 4 23:08:37 2007
@@ -22,47 +22,53 @@
import java.util.ArrayList;
import java.util.List;
-import org.apache.tuscany.spi.component.TargetException;
-import org.apache.tuscany.spi.idl.java.JavaServiceContract;
-
import junit.framework.TestCase;
+import org.apache.tuscany.assembly.AssemblyFactory;
+import org.apache.tuscany.assembly.ComponentService;
+import org.apache.tuscany.assembly.impl.DefaultAssemblyFactory;
+import org.apache.tuscany.idl.java.JavaInterface;
+import org.apache.tuscany.idl.java.impl.DefaultJavaFactory;
+import org.apache.tuscany.spi.component.TargetException;
+
/**
* @version $Rev$ $Date$
*/
-public class SystemSingletonAtomicComponentTestCase extends TestCase {
+public class SingletonAtomicComponentTestCase extends TestCase {
+ private <S> ComponentService createContract(Class<S> type) {
+ AssemblyFactory factory = new DefaultAssemblyFactory();
+ ComponentService contract = factory.createComponentService();
+ JavaInterface javaInterface = new DefaultJavaFactory().createJavaInterface();
+ javaInterface.setJavaClass(type);
+ contract.setInterface(javaInterface);
+ return contract;
+ }
public void testGetInstance() throws TargetException {
- JavaServiceContract<Foo> contract = new JavaServiceContract<Foo>(Foo.class) {
-
- };
+ ComponentService contract = createContract(Foo.class);
FooImpl foo = new FooImpl();
- SystemSingletonAtomicComponent<Foo, FooImpl> component =
- new SystemSingletonAtomicComponent<Foo, FooImpl>(URI.create("foo"), contract, foo);
+ SingletonAtomicComponent<Foo> component = new SingletonAtomicComponent<Foo>(URI.create("foo"), contract, foo);
assertEquals(foo, component.getTargetInstance());
}
public void testGetInstanceMultipleServices() throws TargetException {
FooImpl foo = new FooImpl();
- List<JavaServiceContract<?>> services = new ArrayList<JavaServiceContract<?>>();
- services.add(new JavaServiceContract<Foo>(Foo.class) {
- });
- services.add(new JavaServiceContract<Bar>(Bar.class) {
- });
- SystemSingletonAtomicComponent<Foo, FooImpl> component =
- new SystemSingletonAtomicComponent<Foo, FooImpl>(URI.create("foo"), services, foo);
+ ComponentService contract1 = createContract(Foo.class);
+ ComponentService contract2 = createContract(Bar.class);
+
+ List<ComponentService> services = new ArrayList<ComponentService>();
+ services.add(contract1);
+ services.add(contract2);
+ SingletonAtomicComponent<Foo> component = new SingletonAtomicComponent<Foo>(URI.create("foo"), services, foo);
assertEquals(foo, component.getTargetInstance());
}
public void testOptimizable() {
- JavaServiceContract<Foo> contract = new JavaServiceContract<Foo>(Foo.class) {
- };
+ ComponentService contract = createContract(Foo.class);
FooImpl foo = new FooImpl();
- SystemSingletonAtomicComponent<Foo, FooImpl> component =
- new SystemSingletonAtomicComponent<Foo, FooImpl>(URI.create("foo"), contract, foo);
+ SingletonAtomicComponent<Foo> component = new SingletonAtomicComponent<Foo>(URI.create("foo"), contract, foo);
assertTrue(component.isOptimizable());
}
-
protected void setUp() throws Exception {
super.setUp();
Modified: incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/scope/BasicCompositeScopeTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/scope/BasicCompositeScopeTestCase.java?view=diff&rev=525717&r1=525716&r2=525717
==============================================================================
--- incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/scope/BasicCompositeScopeTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/scope/BasicCompositeScopeTestCase.java Wed Apr 4 23:08:37 2007
@@ -21,14 +21,14 @@
import java.net.URI;
import junit.framework.TestCase;
-import org.easymock.EasyMock;
-import org.easymock.IMocksControl;
+import org.apache.tuscany.spi.Scope;
import org.apache.tuscany.spi.component.AtomicComponent;
import org.apache.tuscany.spi.component.InstanceWrapper;
import org.apache.tuscany.spi.component.ScopeContainer;
import org.apache.tuscany.spi.component.TargetResolutionException;
-import org.apache.tuscany.spi.model.Scope;
+import org.easymock.EasyMock;
+import org.easymock.IMocksControl;
/**
* @version $$Rev$$ $$Date$$
Modified: incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/scope/BasicStatelessScopeTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/scope/BasicStatelessScopeTestCase.java?view=diff&rev=525717&r1=525716&r2=525717
==============================================================================
--- incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/scope/BasicStatelessScopeTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/scope/BasicStatelessScopeTestCase.java Wed Apr 4 23:08:37 2007
@@ -19,12 +19,12 @@
package org.apache.tuscany.core.component.scope;
import junit.framework.TestCase;
-import org.easymock.EasyMock;
-import org.easymock.IMocksControl;
+import org.apache.tuscany.spi.Scope;
import org.apache.tuscany.spi.component.AtomicComponent;
import org.apache.tuscany.spi.component.InstanceWrapper;
-import org.apache.tuscany.spi.model.Scope;
+import org.easymock.EasyMock;
+import org.easymock.IMocksControl;
/**
* Unit tests for the composite scope container
Modified: incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/scope/ConversationalScopeContainerMaxAgeTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/scope/ConversationalScopeContainerMaxAgeTestCase.java?view=diff&rev=525717&r1=525716&r2=525717
==============================================================================
--- incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/scope/ConversationalScopeContainerMaxAgeTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/scope/ConversationalScopeContainerMaxAgeTestCase.java Wed Apr 4 23:08:37 2007
@@ -21,13 +21,13 @@
import junit.framework.TestCase;
import org.apache.tuscany.core.component.SimpleWorkContext;
+import org.apache.tuscany.spi.Scope;
import org.apache.tuscany.spi.component.AtomicComponent;
import org.apache.tuscany.spi.component.InstanceWrapper;
import org.apache.tuscany.spi.component.SCAObject;
import org.apache.tuscany.spi.component.ScopeContainer;
import org.apache.tuscany.spi.component.WorkContext;
import org.apache.tuscany.spi.event.RuntimeEventListener;
-import org.apache.tuscany.spi.model.Scope;
import org.apache.tuscany.spi.services.store.Store;
import org.easymock.EasyMock;
Modified: incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/scope/ConversationalScopeContainerMaxIdleTimeTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/scope/ConversationalScopeContainerMaxIdleTimeTestCase.java?view=diff&rev=525717&r1=525716&r2=525717
==============================================================================
--- incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/scope/ConversationalScopeContainerMaxIdleTimeTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/scope/ConversationalScopeContainerMaxIdleTimeTestCase.java Wed Apr 4 23:08:37 2007
@@ -21,13 +21,13 @@
import junit.framework.TestCase;
import org.apache.tuscany.core.component.SimpleWorkContext;
+import org.apache.tuscany.spi.Scope;
import org.apache.tuscany.spi.component.AtomicComponent;
import org.apache.tuscany.spi.component.InstanceWrapper;
import org.apache.tuscany.spi.component.SCAObject;
import org.apache.tuscany.spi.component.ScopeContainer;
import org.apache.tuscany.spi.component.WorkContext;
import org.apache.tuscany.spi.event.RuntimeEventListener;
-import org.apache.tuscany.spi.model.Scope;
import org.apache.tuscany.spi.services.store.Store;
import org.easymock.EasyMock;
Modified: incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/scope/ConversationalScopeContainerPersistenceTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/scope/ConversationalScopeContainerPersistenceTestCase.java?view=diff&rev=525717&r1=525716&r2=525717
==============================================================================
--- incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/scope/ConversationalScopeContainerPersistenceTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/component/scope/ConversationalScopeContainerPersistenceTestCase.java Wed Apr 4 23:08:37 2007
@@ -22,8 +22,8 @@
import org.apache.tuscany.core.component.SimpleWorkContext;
import org.apache.tuscany.core.services.store.memory.MemoryStore;
+import org.apache.tuscany.spi.Scope;
import org.apache.tuscany.spi.component.WorkContext;
-import org.apache.tuscany.spi.model.Scope;
import org.apache.tuscany.spi.services.store.Store;
import org.apache.tuscany.spi.services.store.StoreMonitor;
import org.easymock.EasyMock;
Modified: incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositeComponentImplTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositeComponentImplTestCase.java?view=diff&rev=525717&r1=525716&r2=525717
==============================================================================
--- incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositeComponentImplTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/implementation/composite/CompositeComponentImplTestCase.java Wed Apr 4 23:08:37 2007
@@ -18,22 +18,23 @@
*/
package org.apache.tuscany.core.implementation.composite;
+import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.eq;
+import static org.easymock.EasyMock.expectLastCall;
+import static org.easymock.EasyMock.replay;
+
import java.net.URI;
+import junit.framework.Assert;
+import junit.framework.TestCase;
+
+import org.apache.tuscany.spi.Scope;
import org.apache.tuscany.spi.component.Component;
import org.apache.tuscany.spi.component.Reference;
import org.apache.tuscany.spi.component.Service;
import org.apache.tuscany.spi.event.Event;
import org.apache.tuscany.spi.event.RuntimeEventListener;
-import org.apache.tuscany.spi.model.Scope;
-
-import junit.framework.Assert;
-import junit.framework.TestCase;
import org.easymock.EasyMock;
-import static org.easymock.EasyMock.createMock;
-import static org.easymock.EasyMock.eq;
-import static org.easymock.EasyMock.expectLastCall;
-import static org.easymock.EasyMock.replay;
/**
* @version $Rev$ $Date$
Modified: incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/monitor/DefaultExceptionFormatterTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/monitor/DefaultExceptionFormatterTestCase.java?view=diff&rev=525717&r1=525716&r2=525717
==============================================================================
--- incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/monitor/DefaultExceptionFormatterTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/monitor/DefaultExceptionFormatterTestCase.java Wed Apr 4 23:08:37 2007
@@ -22,8 +22,9 @@
import java.io.StringWriter;
import junit.framework.TestCase;
-import org.apache.tuscany.api.TuscanyException;
-import org.apache.tuscany.api.TuscanyRuntimeException;
+
+import org.apache.tuscany.spi.TuscanyException;
+import org.apache.tuscany.spi.TuscanyRuntimeException;
/**
* @version $Rev$ $Date$
Modified: incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/monitor/JavaLoggingTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/monitor/JavaLoggingTestCase.java?view=diff&rev=525717&r1=525716&r2=525717
==============================================================================
--- incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/monitor/JavaLoggingTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/monitor/JavaLoggingTestCase.java Wed Apr 4 23:08:37 2007
@@ -26,10 +26,10 @@
import java.util.logging.LogRecord;
import java.util.logging.Logger;
-import org.apache.tuscany.api.annotation.LogLevel;
-import org.apache.tuscany.host.MonitorFactory;
-
import junit.framework.TestCase;
+
+import org.apache.tuscany.host.MonitorFactory;
+import org.apache.tuscany.spi.LogLevel;
/**
* Test case for the JavaLoggingMonitorFactory.
Modified: incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/resolver/DefaultAutowireResolverTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/resolver/DefaultAutowireResolverTestCase.java?view=diff&rev=525717&r1=525716&r2=525717
==============================================================================
--- incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/resolver/DefaultAutowireResolverTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/resolver/DefaultAutowireResolverTestCase.java Wed Apr 4 23:08:37 2007
@@ -19,59 +19,73 @@
package org.apache.tuscany.core.resolver;
import java.net.URI;
-
-import org.apache.tuscany.spi.model.AtomicImplementation;
-import org.apache.tuscany.spi.model.ComponentDefinition;
-import org.apache.tuscany.spi.model.ComponentType;
-import org.apache.tuscany.spi.model.CompositeComponentType;
-import org.apache.tuscany.spi.model.CompositeImplementation;
-import org.apache.tuscany.spi.model.Property;
-import org.apache.tuscany.spi.model.ReferenceDefinition;
-import org.apache.tuscany.spi.model.ReferenceTarget;
-import org.apache.tuscany.spi.model.ServiceContract;
-import org.apache.tuscany.spi.model.ServiceDefinition;
+import java.util.List;
import junit.framework.TestCase;
+import org.apache.tuscany.assembly.AssemblyFactory;
+import org.apache.tuscany.assembly.Component;
+import org.apache.tuscany.assembly.ComponentReference;
+import org.apache.tuscany.assembly.ComponentService;
+import org.apache.tuscany.assembly.Composite;
+import org.apache.tuscany.assembly.Implementation;
+import org.apache.tuscany.assembly.Multiplicity;
+import org.apache.tuscany.assembly.Reference;
+import org.apache.tuscany.assembly.impl.ComponentTypeImpl;
+import org.apache.tuscany.assembly.impl.DefaultAssemblyFactory;
+import org.apache.tuscany.core.wire.IDLMappingService;
+import org.apache.tuscany.idl.java.JavaInterface;
+import org.apache.tuscany.idl.java.impl.JavaInterfaceImpl;
+
/**
* @version $Rev$ $Date$
*/
public class DefaultAutowireResolverTestCase extends TestCase {
private static final URI REFERENCE_URI = URI.create("source#ref");
private static final URI TARGET_URI = URI.create("target#service");
+ private AssemblyFactory factory;
private DefaultAutowireResolver resolver;
+ private <T extends Reference> T getReference(List<T> refs, String name) {
+ for (T ref : refs) {
+ if (ref.getName().equals(name)) {
+ return ref;
+ }
+ }
+ return null;
+ }
+
public void testAutowireAtomicToAtomic() throws Exception {
- ComponentDefinition<CompositeImplementation> composite = createComposite("composite");
- CompositeComponentType<?, ?, ?> type = composite.getImplementation().getComponentType();
- ComponentDefinition<MockAtomicImpl> source = createSourceAtomic(Foo.class);
- type.add(source);
- ComponentDefinition<MockAtomicImpl> target = createTargetAtomic(Foo.class);
- type.add(target);
+ Component composite = createComposite("composite");
+ Composite type = (Composite)composite.getImplementation();
+ Component source = createSourceAtomic(Foo.class);
+ type.getComponents().add(source);
+ Component target = createTargetAtomic(Foo.class);
+ type.getComponents().add(target);
resolver.resolve(null, composite);
- ReferenceTarget refTarget = source.getReferenceTargets().get(REFERENCE_URI.getFragment());
- assertEquals(TARGET_URI, refTarget.getTargets().get(0));
+ Reference refTarget = getReference(source.getReferences(), "ref");
+ assertEquals("service", refTarget.getTargets().get(0).getName());
}
public void testAutowireAtomicToAtomicRequiresSuperInterface() throws Exception {
- ComponentDefinition<CompositeImplementation> composite = createComposite("composite");
- CompositeComponentType<?, ?, ?> type = composite.getImplementation().getComponentType();
- ComponentDefinition<MockAtomicImpl> source = createSourceAtomic(SuperFoo.class);
- type.add(source);
- ComponentDefinition<MockAtomicImpl> target = createTargetAtomic(Foo.class);
- type.add(target);
+ Component composite = createComposite("composite");
+ Composite type = (Composite)composite.getImplementation();
+ Component source = createSourceAtomic(SuperFoo.class);
+ type.getComponents().add(source);
+ Component target = createTargetAtomic(Foo.class);
+ type.getComponents().add(target);
resolver.resolve(null, composite);
- ReferenceTarget refTarget = source.getReferenceTargets().get(REFERENCE_URI.getFragment());
- assertEquals(TARGET_URI, refTarget.getTargets().get(0));
+ Reference refTarget = getReference(source.getReferences(), "ref");
+ assertEquals("service", refTarget.getTargets().get(0).getName());
}
public void testAutowireAtomicToAtomicRequiresSubInterface() throws Exception {
- ComponentDefinition<CompositeImplementation> composite = createComposite("composite");
- CompositeComponentType<?, ?, ?> type = composite.getImplementation().getComponentType();
- ComponentDefinition<MockAtomicImpl> source = createSourceAtomic(Foo.class);
- type.add(source);
- ComponentDefinition<MockAtomicImpl> target = createTargetAtomic(SuperFoo.class);
- type.add(target);
+ Component composite = createComposite("composite");
+ Composite type = (Composite)composite.getImplementation();
+ Component source = createSourceAtomic(Foo.class);
+ type.getComponents().add(source);
+ Component target = createTargetAtomic(SuperFoo.class);
+ type.getComponents().add(target);
try {
resolver.resolve(null, composite);
fail();
@@ -81,12 +95,12 @@
}
public void testAutowireAtomicToAtomicIncompatibleInterfaces() throws Exception {
- ComponentDefinition<CompositeImplementation> composite = createComposite("composite");
- CompositeComponentType<?, ?, ?> type = composite.getImplementation().getComponentType();
- ComponentDefinition<MockAtomicImpl> source = createSourceAtomic(Foo.class);
- type.add(source);
- ComponentDefinition<MockAtomicImpl> target = createTargetAtomic(String.class);
- type.add(target);
+ Component composite = createComposite("composite");
+ Composite type = (Composite)composite.getImplementation();
+ Component source = createSourceAtomic(Foo.class);
+ type.getComponents().add(source);
+ Component target = createTargetAtomic(String.class);
+ type.getComponents().add(target);
try {
resolver.resolve(null, composite);
fail();
@@ -96,73 +110,80 @@
}
public void testNestedAutowireAtomicToAtomic() throws Exception {
- ComponentDefinition<CompositeImplementation> composite = createComposite("composite");
- CompositeComponentType<?, ?, ?> type = composite.getImplementation().getComponentType();
- ComponentDefinition<MockAtomicImpl> source = createSourceAtomic(Foo.class);
- type.add(source);
- ComponentDefinition<MockAtomicImpl> target = createTargetAtomic(Foo.class);
- type.add(target);
- ComponentDefinition<CompositeImplementation> parent = createComposite("parent");
- parent.getImplementation().getComponentType().add(composite);
+ Component composite = createComposite("composite");
+ Composite type = (Composite)composite.getImplementation();
+ Component source = createSourceAtomic(Foo.class);
+ type.getComponents().add(source);
+ Component target = createTargetAtomic(Foo.class);
+ type.getComponents().add(target);
+ Component parent = createComposite("parent");
+ ((Composite)parent.getImplementation()).getComponents().add(composite);
resolver.resolve(null, parent);
- ReferenceTarget refTarget = source.getReferenceTargets().get(REFERENCE_URI.getFragment());
- assertEquals(TARGET_URI, refTarget.getTargets().get(0));
+ Reference refTarget = getReference(source.getReferences(), "ref");
+ assertEquals("service", refTarget.getTargets().get(0).getName());
}
-
protected void setUp() throws Exception {
super.setUp();
- resolver = new DefaultAutowireResolver();
+ resolver = new DefaultAutowireResolver(new IDLMappingService());
+ factory = new DefaultAssemblyFactory();
+ }
+
+ private Component createComposite(String uri) {
+ Composite type = factory.createComposite();
+ Component component = factory.createComponent();
+ component.setImplementation(type);
+ component.setName(uri);
+ return component;
}
- private ComponentDefinition<CompositeImplementation> createComposite(String uri) {
- URI parentUri = URI.create(uri);
- CompositeComponentType<ServiceDefinition, ReferenceDefinition, Property<?>> type =
- new CompositeComponentType<ServiceDefinition, ReferenceDefinition, Property<?>>();
- CompositeImplementation impl = new CompositeImplementation();
- impl.setComponentType(type);
- return new ComponentDefinition<CompositeImplementation>(parentUri, impl);
- }
-
- private ComponentDefinition<MockAtomicImpl> createSourceAtomic(Class<?> requiredInterface) {
- URI uri = URI.create("source");
- ServiceContract contract = new ServiceContract() {
- };
- contract.setInterfaceClass(requiredInterface);
- ReferenceDefinition reference = new ReferenceDefinition(URI.create("#ref"), contract);
- reference.setRequired(true);
- MockComponentType type = new MockComponentType();
- type.add(reference);
+ private Component createSourceAtomic(Class<?> requiredInterface) {
+ ComponentReference reference = factory.createComponentReference();
+ reference.setName("ref");
+
+ ComponentService service = factory.createComponentService();
+ service.setName("service");
+
+ JavaInterface javaInterface = new JavaInterfaceImpl();
+ javaInterface.setJavaClass(requiredInterface);
+ service.setInterface(javaInterface);
+
+ reference.setInterface(javaInterface);
+ reference.setMultiplicity(Multiplicity.ONE_ONE);
+
MockAtomicImpl impl = new MockAtomicImpl();
- impl.setComponentType(type);
- ComponentDefinition<MockAtomicImpl> definition = new ComponentDefinition<MockAtomicImpl>(uri, impl);
- ReferenceTarget target = new ReferenceTarget();
- target.setReferenceName(REFERENCE_URI);
+ Component definition = factory.createComponent();
+ definition.setImplementation(impl);
+ definition.setName("source");
+ definition.getReferences().add(reference);
+ definition.getServices().add(service);
+
+ Reference target = factory.createReference();
+ target.setName("ref");
target.setAutowire(true);
- definition.add(target);
+ impl.getReferences().add(target);
+
return definition;
}
- private ComponentDefinition<MockAtomicImpl> createTargetAtomic(Class<?> serviceInterface) {
+ private Component createTargetAtomic(Class<?> serviceInterface) {
URI uri = URI.create("target");
- ServiceDefinition service = new ServiceDefinition();
- service.setUri(URI.create("#service"));
- ServiceContract contract = new ServiceContract() {
- };
- contract.setInterfaceClass(serviceInterface);
- service.setServiceContract(contract);
- MockComponentType type = new MockComponentType();
- type.add(service);
- MockAtomicImpl impl = new MockAtomicImpl();
- impl.setComponentType(type);
- return new ComponentDefinition<MockAtomicImpl>(uri, impl);
- }
+ ComponentService service = factory.createComponentService();
+ service.setName("service");
- private class MockAtomicImpl extends AtomicImplementation<MockComponentType> {
+ JavaInterface javaInterface = new JavaInterfaceImpl();
+ javaInterface.setJavaClass(serviceInterface);
+ service.setInterface(javaInterface);
+ MockAtomicImpl impl = new MockAtomicImpl();
+ impl.getServices().add(service);
+ Component component = factory.createComponent();
+ component.setName("target");
+ component.setImplementation(impl);
+ return component;
}
- private class MockComponentType extends ComponentType<ServiceDefinition, ReferenceDefinition, Property<?>> {
+ private class MockAtomicImpl extends ComponentTypeImpl implements Implementation {
}
Modified: incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/wire/ContractCompatibilityTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/wire/ContractCompatibilityTestCase.java?view=diff&rev=525717&r1=525716&r2=525717
==============================================================================
--- incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/wire/ContractCompatibilityTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/core/src/test/java/org/apache/tuscany/core/wire/ContractCompatibilityTestCase.java Wed Apr 4 23:08:37 2007
@@ -25,121 +25,124 @@
import java.util.List;
import java.util.Map;
+import junit.framework.TestCase;
+
+import org.apache.tuscany.assembly.Contract;
+import org.apache.tuscany.assembly.impl.ComponentServiceImpl;
+import org.apache.tuscany.idl.DataType;
+import org.apache.tuscany.idl.Operation;
+import org.apache.tuscany.idl.impl.DataTypeImpl;
+import org.apache.tuscany.idl.impl.OperationImpl;
+import org.apache.tuscany.idl.java.JavaInterface;
+import org.apache.tuscany.idl.java.impl.JavaInterfaceImpl;
import org.apache.tuscany.spi.QualifiedName;
import org.apache.tuscany.spi.component.ReferenceBinding;
-import org.apache.tuscany.spi.model.DataType;
-import org.apache.tuscany.spi.model.Operation;
-import static org.apache.tuscany.spi.model.Operation.NO_CONVERSATION;
-import org.apache.tuscany.spi.model.ServiceContract;
import org.apache.tuscany.spi.wire.ChainHolder;
import org.apache.tuscany.spi.wire.IncompatibleServiceContractException;
+import org.apache.tuscany.spi.wire.InvocationChain;
import org.apache.tuscany.spi.wire.ProxyCreationException;
-import org.apache.tuscany.spi.wire.Wire;
import org.apache.tuscany.spi.wire.ProxyService;
-import org.apache.tuscany.spi.wire.InvocationChain;
-
-import junit.framework.TestCase;
+import org.apache.tuscany.spi.wire.Wire;
import org.osoa.sca.CallableReference;
/**
* TODO some tests commented out due to DataType.equals() needing to be strict
- *
+ *
* @version $Rev$ $Date$
*/
public class ContractCompatibilityTestCase extends TestCase {
-
+ private static final Operation.ConversationSequence NO_CONVERSATION = Operation.ConversationSequence.NO_CONVERSATION;
private ProxyService proxyService = new MockProxyService();
public void testNoOperation() throws Exception {
- ServiceContract source = new MockContract<Type>("FooContract");
- ServiceContract target = new MockContract<Type>("FooContract");
+ Contract source = new MockContract("FooContract");
+ Contract target = new MockContract("FooContract");
proxyService.checkCompatibility(source, target, false, false);
}
public void testBasic() throws Exception {
- ServiceContract<Type> source = new MockContract<Type>("FooContract");
- Operation<Type> opSource1 = new Operation<Type>("op1", null, null, null, false, null, NO_CONVERSATION);
- Map<String, Operation<Type>> sourceOperations = new HashMap<String, Operation<Type>>();
+ Contract source = new MockContract("FooContract");
+ Operation opSource1 = new OperationImpl("op1");
+ Map<String, Operation> sourceOperations = new HashMap<String, Operation>();
sourceOperations.put("op1", opSource1);
- source.setOperations(sourceOperations);
- ServiceContract<Type> target = new MockContract<Type>("FooContract");
- Operation<Type> opSource2 = new Operation<Type>("op1", null, null, null, false, null, NO_CONVERSATION);
- Map<String, Operation<Type>> targetOperations = new HashMap<String, Operation<Type>>();
+ source.getInterface().getOperations().addAll(sourceOperations.values());
+ Contract target = new MockContract("FooContract");
+ Operation opSource2 = new OperationImpl("op1");
+ Map<String, Operation> targetOperations = new HashMap<String, Operation>();
targetOperations.put("op1", opSource2);
- target.setOperations(targetOperations);
+ target.getInterface().getOperations().addAll(targetOperations.values());
proxyService.checkCompatibility(source, target, false, false);
}
public void testBasicIncompatibleOperationNames() throws Exception {
- ServiceContract<Type> source = new MockContract<Type>("FooContract");
- Operation<Type> opSource1 = new Operation<Type>("op1", null, null, null, false, null, NO_CONVERSATION);
- Map<String, Operation<Type>> sourceOperations = new HashMap<String, Operation<Type>>();
+ Contract source = new MockContract("FooContract");
+ Operation opSource1 = new OperationImpl("op1");
+ Map<String, Operation> sourceOperations = new HashMap<String, Operation>();
sourceOperations.put("op1", opSource1);
- source.setOperations(sourceOperations);
- ServiceContract<Type> target = new MockContract<Type>("FooContract");
- Operation<Type> opSource2 = new Operation<Type>("op2", null, null, null, false, null, NO_CONVERSATION);
- Map<String, Operation<Type>> targetOperations = new HashMap<String, Operation<Type>>();
+ source.getInterface().getOperations().addAll(sourceOperations.values());
+ Contract target = new MockContract("FooContract");
+ Operation opSource2 = new OperationImpl("op2");
+ Map<String, Operation> targetOperations = new HashMap<String, Operation>();
targetOperations.put("op2", opSource2);
- target.setOperations(targetOperations);
+ target.getInterface().getOperations().addAll(targetOperations.values());
try {
proxyService.checkCompatibility(source, target, false, false);
fail();
} catch (IncompatibleServiceContractException e) {
- //expected
+ // expected
}
}
public void testInputTypes() throws Exception {
- ServiceContract<Type> source = new MockContract<Type>("FooContract");
- List<DataType<Type>> sourceInputTypes = new ArrayList<DataType<Type>>();
- sourceInputTypes.add(new DataType<Type>(Object.class, Object.class));
- DataType<List<DataType<Type>>> inputType = new DataType<List<DataType<Type>>>(String.class, sourceInputTypes);
- Operation<Type> opSource1 = new Operation<Type>("op1", inputType, null, null, false, null, NO_CONVERSATION);
- Map<String, Operation<Type>> sourceOperations = new HashMap<String, Operation<Type>>();
+ Contract source = new MockContract("FooContract");
+ List<DataType> sourceInputTypes = new ArrayList<DataType>();
+ sourceInputTypes.add(new DataTypeImpl<Type>(Object.class, Object.class));
+ DataType<List<DataType>> inputType = new DataTypeImpl<List<DataType>>(String.class, sourceInputTypes);
+ Operation opSource1 = new OperationImpl("op1");
+ opSource1.setInputType(inputType);
+ Map<String, Operation> sourceOperations = new HashMap<String, Operation>();
sourceOperations.put("op1", opSource1);
- source.setOperations(sourceOperations);
+ source.getInterface().getOperations().addAll(sourceOperations.values());
- ServiceContract<Type> target = new MockContract<Type>("FooContract");
- List<DataType<Type>> targetInputTypes = new ArrayList<DataType<Type>>();
- targetInputTypes.add(new DataType<Type>(Object.class, Object.class));
- DataType<List<DataType<Type>>> targetInputType =
- new DataType<List<DataType<Type>>>(String.class, targetInputTypes);
-
- Operation<Type> opTarget =
- new Operation<Type>("op1", targetInputType, null, null, false, null, NO_CONVERSATION);
- Map<String, Operation<Type>> targetOperations = new HashMap<String, Operation<Type>>();
+ Contract target = new MockContract("FooContract");
+ List<DataType> targetInputTypes = new ArrayList<DataType>();
+ targetInputTypes.add(new DataTypeImpl<Type>(Object.class, Object.class));
+ DataType<List<DataType>> targetInputType = new DataTypeImpl<List<DataType>>(String.class, targetInputTypes);
+
+ Operation opTarget = new OperationImpl("op1");
+ opTarget.setInputType(targetInputType);
+ Map<String, Operation> targetOperations = new HashMap<String, Operation>();
targetOperations.put("op1", opTarget);
- target.setOperations(targetOperations);
+ target.getInterface().getOperations().addAll(targetOperations.values());
proxyService.checkCompatibility(source, target, false, false);
}
-
public void testIncompatibleInputTypes() throws Exception {
- ServiceContract<Type> source = new MockContract<Type>("FooContract");
- List<DataType<Type>> sourceInputTypes = new ArrayList<DataType<Type>>();
- sourceInputTypes.add(new DataType<Type>(Integer.class, Integer.class));
- DataType<List<DataType<Type>>> inputType = new DataType<List<DataType<Type>>>(String.class, sourceInputTypes);
- Operation<Type> opSource1 = new Operation<Type>("op1", inputType, null, null, false, null, NO_CONVERSATION);
- Map<String, Operation<Type>> sourceOperations = new HashMap<String, Operation<Type>>();
+ Contract source = new MockContract("FooContract");
+ List<DataType> sourceInputTypes = new ArrayList<DataType>();
+ sourceInputTypes.add(new DataTypeImpl<Type>(Integer.class, Integer.class));
+ DataType<List<DataType>> inputType = new DataTypeImpl<List<DataType>>(String.class, sourceInputTypes);
+ Operation opSource1 = new OperationImpl("op1");
+ opSource1.setInputType(inputType);
+ Map<String, Operation> sourceOperations = new HashMap<String, Operation>();
sourceOperations.put("op1", opSource1);
- source.setOperations(sourceOperations);
+ source.getInterface().getOperations().addAll(sourceOperations.values());
- ServiceContract<Type> target = new MockContract<Type>("FooContract");
- List<DataType<Type>> targetInputTypes = new ArrayList<DataType<Type>>();
- targetInputTypes.add(new DataType<Type>(String.class, String.class));
- DataType<List<DataType<Type>>> targetInputType =
- new DataType<List<DataType<Type>>>(String.class, targetInputTypes);
-
- Operation<Type> opTarget =
- new Operation<Type>("op1", targetInputType, null, null, false, null, NO_CONVERSATION);
- Map<String, Operation<Type>> targetOperations = new HashMap<String, Operation<Type>>();
+ Contract target = new MockContract("FooContract");
+ List<DataType> targetInputTypes = new ArrayList<DataType>();
+ targetInputTypes.add(new DataTypeImpl<Type>(String.class, String.class));
+ DataType<List<DataType>> targetInputType = new DataTypeImpl<List<DataType>>(String.class, targetInputTypes);
+
+ Operation opTarget = new OperationImpl("op1");
+ opTarget.setInputType(targetInputType);
+ Map<String, Operation> targetOperations = new HashMap<String, Operation>();
targetOperations.put("op1", opTarget);
- target.setOperations(targetOperations);
+ target.getInterface().getOperations().addAll(targetOperations.values());
try {
proxyService.checkCompatibility(source, target, false, false);
fail();
} catch (IncompatibleServiceContractException e) {
- //expected
+ // expected
}
}
@@ -147,44 +150,51 @@
* Verfies source input types can be super types of the target
*/
public void testSourceSuperTypeInputCompatibility() throws Exception {
-// ServiceContract<Type> source = new MockContract<Type>("FooContract");
-// List<DataType<Type>> sourceInputTypes = new ArrayList<DataType<Type>>();
-// sourceInputTypes.add(new DataType<Type>(Object.class, Object.class));
-// DataType<List<DataType<Type>>> inputType = new DataType<List<DataType<Type>>>(String.class, sourceInputTypes);
-// Operation<Type> opSource1 = new Operation<Type>("op1", inputType, null, null, false, null);
-// Map<String, Operation<Type>> sourceOperations = new HashMap<String, Operation<Type>>();
-// sourceOperations.put("op1", opSource1);
-// source.setOperations(sourceOperations);
-//
-// ServiceContract<Type> target = new MockContract<Type>("FooContract");
-// List<DataType<Type>> targetInputTypes = new ArrayList<DataType<Type>>();
-// targetInputTypes.add(new DataType<Type>(String.class, String.class));
-// DataType<List<DataType<Type>>> targetInputType =
-// new DataType<List<DataType<Type>>>(String.class, targetInputTypes);
-//
-// Operation<Type> opTarget = new Operation<Type>("op1", targetInputType, null, null, false, null);
-// Map<String, Operation<Type>> targetOperations = new HashMap<String, Operation<Type>>();
-// targetOperations.put("op1", opTarget);
-// target.setOperations(targetOperations);
-// wireService.checkCompatibility(source, target, false);
+ // Contract source = new MockContract("FooContract");
+ // List<DataType> sourceInputTypes = new ArrayList<DataType>();
+ // sourceInputTypes.add(new DataTypeImpl<Type>(Object.class,
+ // Object.class));
+ // DataType<List<DataType>> inputType = new
+ // DataTypeImpl<List<DataType>>(String.class, sourceInputTypes);
+ // Operation opSource1 = new OperationImpl("op1", inputType, null, null,
+ // false, null);
+ // Map<String, Operation> sourceOperations = new HashMap<String,
+ // Operation>();
+ // sourceOperations.put("op1", opSource1);
+ // source.getInterface().getOperations().addAll(sourceOperations.values());
+ //
+ // Contract target = new MockContract("FooContract");
+ // List<DataType> targetInputTypes = new ArrayList<DataType>();
+ // targetInputTypes.add(new DataTypeImpl<Type>(String.class,
+ // String.class));
+ // DataType<List<DataType>> targetInputType =
+ // new DataTypeImpl<List<DataType>>(String.class, targetInputTypes);
+ //
+ // Operation opTarget = new OperationImpl("op1", targetInputType, null,
+ // null, false, null);
+ // Map<String, Operation> targetOperations = new HashMap<String,
+ // Operation>();
+ // targetOperations.put("op1", opTarget);
+ // target.getInterface().getOperations().addAll(targetOperations.values());
+ // wireService.checkCompatibility(source, target, false);
}
public void testOutputTypes() throws Exception {
- ServiceContract<Type> source = new MockContract<Type>("FooContract");
- DataType<Type> sourceOutputType = new DataType<Type>(String.class, String.class);
- Operation<Type> opSource1 =
- new Operation<Type>("op1", null, sourceOutputType, null, false, null, NO_CONVERSATION);
- Map<String, Operation<Type>> sourceOperations = new HashMap<String, Operation<Type>>();
+ Contract source = new MockContract("FooContract");
+ DataType sourceOutputType = new DataTypeImpl<Type>(String.class, String.class);
+ Operation opSource1 = new OperationImpl("op1");
+ opSource1.setOutputType(sourceOutputType);
+ Map<String, Operation> sourceOperations = new HashMap<String, Operation>();
sourceOperations.put("op1", opSource1);
- source.setOperations(sourceOperations);
+ source.getInterface().getOperations().addAll(sourceOperations.values());
- ServiceContract<Type> target = new MockContract<Type>("FooContract");
- DataType<Type> targetOutputType = new DataType<Type>(String.class, String.class);
- Operation<Type> opTarget =
- new Operation<Type>("op1", null, targetOutputType, null, false, null, NO_CONVERSATION);
- Map<String, Operation<Type>> targetOperations = new HashMap<String, Operation<Type>>();
+ Contract target = new MockContract("FooContract");
+ DataType targetOutputType = new DataTypeImpl<Type>(String.class, String.class);
+ Operation opTarget = new OperationImpl("op1");
+ opTarget.setOutputType(targetOutputType);
+ Map<String, Operation> targetOperations = new HashMap<String, Operation>();
targetOperations.put("op1", opTarget);
- target.setOperations(targetOperations);
+ target.getInterface().getOperations().addAll(targetOperations.values());
proxyService.checkCompatibility(source, target, false, false);
}
@@ -192,153 +202,179 @@
* Verfies a return type that is a supertype of of the target is compatible
*/
public void testSupertypeOutputTypes() throws Exception {
-// ServiceContract<Type> source = new MockContract<Type>("FooContract");
-// DataType<Type> sourceOutputType = new DataType<Type>(Object.class, Object.class);
-// Operation<Type> opSource1 = new Operation<Type>("op1", null, sourceOutputType, null, false, null);
-// Map<String, Operation<Type>> sourceOperations = new HashMap<String, Operation<Type>>();
-// sourceOperations.put("op1", opSource1);
-// source.setOperations(sourceOperations);
-//
-// ServiceContract<Type> target = new MockContract<Type>("FooContract");
-// DataType<Type> targetOutputType = new DataType<Type>(String.class, String.class);
-// Operation<Type> opTarget = new Operation<Type>("op1", null, targetOutputType, null, false, null);
-// Map<String, Operation<Type>> targetOperations = new HashMap<String, Operation<Type>>();
-// targetOperations.put("op1", opTarget);
-// target.setOperations(targetOperations);
-// wireService.checkCompatibility(source, target, false);
+ // Contract source = new MockContract("FooContract");
+ // DataType sourceOutputType = new DataTypeImpl<Type>(Object.class,
+ // Object.class);
+ // Operation opSource1 = new OperationImpl("op1", null,
+ // sourceOutputType, null, false, null);
+ // Map<String, Operation> sourceOperations = new HashMap<String,
+ // Operation>();
+ // sourceOperations.put("op1", opSource1);
+ // source.getInterface().getOperations().addAll(sourceOperations.values());
+ //
+ // Contract target = new MockContract("FooContract");
+ // DataType targetOutputType = new DataTypeImpl<Type>(String.class,
+ // String.class);
+ // Operation opTarget = new OperationImpl("op1", null, targetOutputType,
+ // null, false, null);
+ // Map<String, Operation> targetOperations = new HashMap<String,
+ // Operation>();
+ // targetOperations.put("op1", opTarget);
+ // target.getInterface().getOperations().addAll(targetOperations.values());
+ // wireService.checkCompatibility(source, target, false);
}
public void testIncompatibleOutputTypes() throws Exception {
- ServiceContract<Type> source = new MockContract<Type>("FooContract");
- DataType<Type> sourceOutputType = new DataType<Type>(String.class, String.class);
- Operation<Type> opSource1 =
- new Operation<Type>("op1", null, sourceOutputType, null, false, null, NO_CONVERSATION);
- Map<String, Operation<Type>> sourceOperations = new HashMap<String, Operation<Type>>();
+ Contract source = new MockContract("FooContract");
+ DataType sourceOutputType = new DataTypeImpl<Type>(String.class, String.class);
+ Operation opSource1 = new OperationImpl("op1");
+ opSource1.setOutputType(sourceOutputType);
+ Map<String, Operation> sourceOperations = new HashMap<String, Operation>();
sourceOperations.put("op1", opSource1);
- source.setOperations(sourceOperations);
+ source.getInterface().getOperations().addAll(sourceOperations.values());
- ServiceContract<Type> target = new MockContract<Type>("FooContract");
- DataType<Type> targetOutputType = new DataType<Type>(Integer.class, Integer.class);
- Operation<Type> opTarget =
- new Operation<Type>("op1", null, targetOutputType, null, false, null, NO_CONVERSATION);
- Map<String, Operation<Type>> targetOperations = new HashMap<String, Operation<Type>>();
+ Contract target = new MockContract("FooContract");
+ DataType targetOutputType = new DataTypeImpl<Type>(Integer.class, Integer.class);
+ Operation opTarget = new OperationImpl("op1");
+ opTarget.setOutputType(targetOutputType);
+ Map<String, Operation> targetOperations = new HashMap<String, Operation>();
targetOperations.put("op1", opTarget);
- target.setOperations(targetOperations);
+ target.getInterface().getOperations().addAll(targetOperations.values());
try {
proxyService.checkCompatibility(source, target, false, false);
fail();
} catch (IncompatibleServiceContractException e) {
- //expected
+ // expected
}
}
public void testFaultTypes() throws Exception {
- ServiceContract<Type> source = new MockContract<Type>("FooContract");
- DataType<Type> sourceFaultType = new DataType<Type>(String.class, String.class);
- List<DataType<Type>> sourceFaultTypes = new ArrayList<DataType<Type>>();
+ Contract source = new MockContract("FooContract");
+ DataType sourceFaultType = new DataTypeImpl<Type>(String.class, String.class);
+ List<DataType> sourceFaultTypes = new ArrayList<DataType>();
sourceFaultTypes.add(0, sourceFaultType);
- Operation<Type> opSource1 =
- new Operation<Type>("op1", null, null, sourceFaultTypes, false, null, NO_CONVERSATION);
- Map<String, Operation<Type>> sourceOperations = new HashMap<String, Operation<Type>>();
+ Operation opSource1 = new OperationImpl("op1");
+ opSource1.setFaultTypes(sourceFaultTypes);
+ Map<String, Operation> sourceOperations = new HashMap<String, Operation>();
sourceOperations.put("op1", opSource1);
- source.setOperations(sourceOperations);
+ source.getInterface().getOperations().addAll(sourceOperations.values());
- ServiceContract<Type> target = new MockContract<Type>("FooContract");
- DataType<Type> targetFaultType = new DataType<Type>(String.class, String.class);
- List<DataType<Type>> targetFaultTypes = new ArrayList<DataType<Type>>();
+ Contract target = new MockContract("FooContract");
+ DataType targetFaultType = new DataTypeImpl<Type>(String.class, String.class);
+ List<DataType> targetFaultTypes = new ArrayList<DataType>();
targetFaultTypes.add(0, targetFaultType);
- Operation<Type> opTarget =
- new Operation<Type>("op1", null, null, targetFaultTypes, false, null, NO_CONVERSATION);
- Map<String, Operation<Type>> targetOperations = new HashMap<String, Operation<Type>>();
+ Operation opTarget = new OperationImpl("op1");
+ opTarget.setFaultTypes(targetFaultTypes);
+ Map<String, Operation> targetOperations = new HashMap<String, Operation>();
targetOperations.put("op1", opTarget);
- target.setOperations(targetOperations);
+ target.getInterface().getOperations().addAll(targetOperations.values());
proxyService.checkCompatibility(source, target, false, false);
}
public void testSourceFaultTargetNoFaultCompatibility() throws Exception {
- ServiceContract<Type> source = new MockContract<Type>("FooContract");
- DataType<Type> sourceFaultType = new DataType<Type>(String.class, String.class);
- List<DataType<Type>> sourceFaultTypes = new ArrayList<DataType<Type>>();
+ Contract source = new MockContract("FooContract");
+ DataType sourceFaultType = new DataTypeImpl<Type>(String.class, String.class);
+ List<DataType> sourceFaultTypes = new ArrayList<DataType>();
sourceFaultTypes.add(0, sourceFaultType);
- Operation<Type> opSource1 =
- new Operation<Type>("op1", null, null, sourceFaultTypes, false, null, NO_CONVERSATION);
- Map<String, Operation<Type>> sourceOperations = new HashMap<String, Operation<Type>>();
+ Operation opSource1 = new OperationImpl("op1");
+ opSource1.setFaultTypes(sourceFaultTypes);
+ Map<String, Operation> sourceOperations = new HashMap<String, Operation>();
sourceOperations.put("op1", opSource1);
- source.setOperations(sourceOperations);
+ source.getInterface().getOperations().addAll(sourceOperations.values());
- ServiceContract<Type> target = new MockContract<Type>("FooContract");
- Operation<Type> opTarget = new Operation<Type>("op1", null, null, null, false, null, NO_CONVERSATION);
- Map<String, Operation<Type>> targetOperations = new HashMap<String, Operation<Type>>();
+ Contract target = new MockContract("FooContract");
+ Operation opTarget = new OperationImpl("op1");
+ Map<String, Operation> targetOperations = new HashMap<String, Operation>();
targetOperations.put("op1", opTarget);
- target.setOperations(targetOperations);
+ target.getInterface().getOperations().addAll(targetOperations.values());
proxyService.checkCompatibility(source, target, false, false);
}
/**
- * Verifies a source's fault which is a supertype of the target's fault are compatibile
- *
+ * Verifies a source's fault which is a supertype of the target's fault are
+ * compatibile
+ *
* @throws Exception
*/
public void testFaultSuperTypes() throws Exception {
-// ServiceContract<Type> source = new MockContract<Type>("FooContract");
-// DataType<Type> sourceFaultType = new DataType<Type>(Exception.class, Exception.class);
-// List<DataType<Type>> sourceFaultTypes = new ArrayList<DataType<Type>>();
-// sourceFaultTypes.add(0, sourceFaultType);
-// Operation<Type> opSource1 = new Operation<Type>("op1", null, null, sourceFaultTypes, false, null);
-// Map<String, Operation<Type>> sourceOperations = new HashMap<String, Operation<Type>>();
-// sourceOperations.put("op1", opSource1);
-// source.setOperations(sourceOperations);
-//
-// ServiceContract<Type> target = new MockContract<Type>("FooContract");
-// DataType<Type> targetFaultType = new DataType<Type>(TuscanyException.class, TuscanyException.class);
-// List<DataType<Type>> targetFaultTypes = new ArrayList<DataType<Type>>();
-// targetFaultTypes.add(0, targetFaultType);
-//
-// Operation<Type> opTarget = new Operation<Type>("op1", null, null, targetFaultTypes, false, null);
-// Map<String, Operation<Type>> targetOperations = new HashMap<String, Operation<Type>>();
-// targetOperations.put("op1", opTarget);
-// target.setOperations(targetOperations);
-// wireService.checkCompatibility(source, target, false);
+ // Contract source = new MockContract("FooContract");
+ // DataType sourceFaultType = new DataTypeImpl<Type>(Exception.class,
+ // Exception.class);
+ // List<DataType> sourceFaultTypes = new ArrayList<DataType>();
+ // sourceFaultTypes.add(0, sourceFaultType);
+ // Operation opSource1 = new OperationImpl("op1", null, null,
+ // sourceFaultTypes, false, null);
+ // Map<String, Operation> sourceOperations = new HashMap<String,
+ // Operation>();
+ // sourceOperations.put("op1", opSource1);
+ // source.getInterface().getOperations().addAll(sourceOperations.values());
+ //
+ // Contract target = new MockContract("FooContract");
+ // DataType targetFaultType = new
+ // DataTypeImpl<Type>(TuscanyException.class, TuscanyException.class);
+ // List<DataType> targetFaultTypes = new ArrayList<DataType>();
+ // targetFaultTypes.add(0, targetFaultType);
+ //
+ // Operation opTarget = new OperationImpl("op1", null, null,
+ // targetFaultTypes, false, null);
+ // Map<String, Operation> targetOperations = new HashMap<String,
+ // Operation>();
+ // targetOperations.put("op1", opTarget);
+ // target.getInterface().getOperations().addAll(targetOperations.values());
+ // wireService.checkCompatibility(source, target, false);
}
/**
- * Verifies a source's faults which are supertypes and a superset of the target's faults are compatibile
+ * Verifies a source's faults which are supertypes and a superset of the
+ * target's faults are compatibile
*/
public void testFaultSuperTypesAndSuperset() throws Exception {
-// ServiceContract<Type> source = new MockContract<Type>("FooContract");
-// DataType<Type> sourceFaultType = new DataType<Type>(Exception.class, Exception.class);
-// DataType<Type> sourceFaultType2 = new DataType<Type>(RuntimeException.class, RuntimeException.class);
-// List<DataType<Type>> sourceFaultTypes = new ArrayList<DataType<Type>>();
-// sourceFaultTypes.add(0, sourceFaultType);
-// sourceFaultTypes.add(1, sourceFaultType2);
-// Operation<Type> opSource1 = new Operation<Type>("op1", null, null, sourceFaultTypes, false, null);
-// Map<String, Operation<Type>> sourceOperations = new HashMap<String, Operation<Type>>();
-// sourceOperations.put("op1", opSource1);
-// source.setOperations(sourceOperations);
-//
-// ServiceContract<Type> target = new MockContract<Type>("FooContract");
-// DataType<Type> targetFaultType = new DataType<Type>(TuscanyException.class, TuscanyException.class);
-// List<DataType<Type>> targetFaultTypes = new ArrayList<DataType<Type>>();
-// targetFaultTypes.add(0, targetFaultType);
-//
-// Operation<Type> opTarget = new Operation<Type>("op1", null, null, targetFaultTypes, false, null);
-// Map<String, Operation<Type>> targetOperations = new HashMap<String, Operation<Type>>();
-// targetOperations.put("op1", opTarget);
-// target.setOperations(targetOperations);
-// wireService.checkCompatibility(source, target, false);
+ // Contract source = new MockContract("FooContract");
+ // DataType sourceFaultType = new DataTypeImpl<Type>(Exception.class,
+ // Exception.class);
+ // DataType sourceFaultType2 = new
+ // DataTypeImpl<Type>(RuntimeException.class, RuntimeException.class);
+ // List<DataType> sourceFaultTypes = new ArrayList<DataType>();
+ // sourceFaultTypes.add(0, sourceFaultType);
+ // sourceFaultTypes.add(1, sourceFaultType2);
+ // Operation opSource1 = new OperationImpl("op1", null, null,
+ // sourceFaultTypes, false, null);
+ // Map<String, Operation> sourceOperations = new HashMap<String,
+ // Operation>();
+ // sourceOperations.put("op1", opSource1);
+ // source.getInterface().getOperations().addAll(sourceOperations.values());
+ //
+ // Contract target = new MockContract("FooContract");
+ // DataType targetFaultType = new
+ // DataTypeImpl<Type>(TuscanyException.class, TuscanyException.class);
+ // List<DataType> targetFaultTypes = new ArrayList<DataType>();
+ // targetFaultTypes.add(0, targetFaultType);
+ //
+ // Operation opTarget = new OperationImpl("op1", null, null,
+ // targetFaultTypes, false, null);
+ // Map<String, Operation> targetOperations = new HashMap<String,
+ // Operation>();
+ // targetOperations.put("op1", opTarget);
+ // target.getInterface().getOperations().addAll(targetOperations.values());
+ // wireService.checkCompatibility(source, target, false);
}
- private class MockContract<T> extends ServiceContract<T> {
+ private class MockContract<T> extends ComponentServiceImpl {
public MockContract() {
}
public MockContract(Class interfaceClass) {
- super(interfaceClass);
+ JavaInterface jInterface = new JavaInterfaceImpl();
+ jInterface.setJavaClass(interfaceClass);
+ setInterface(jInterface);
}
- public MockContract(String interfaceName) {
- super(interfaceName);
+ public MockContract(String interfaceClass) {
+ JavaInterface jInterface = new JavaInterfaceImpl();
+ jInterface.setUnresolved(true);
+ jInterface.setName(interfaceClass);
+ setInterface(jInterface);
}
}
@@ -377,8 +413,7 @@
throw new UnsupportedOperationException();
}
- public void createWires(ReferenceBinding referenceBinding, ServiceContract<?> contract,
- QualifiedName targetName) {
+ public void createWires(ReferenceBinding referenceBinding, Contract contract, QualifiedName targetName) {
throw new UnsupportedOperationException();
}
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org