You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by jb...@apache.org on 2007/03/19 20:35:30 UTC
svn commit: r520059 - in /incubator/tuscany/java/sca/kernel/core/src:
main/java/org/apache/tuscany/core/deployer/federation/
test/java/org/apache/tuscany/core/integration/implementation/java/
test/java/org/apache/tuscany/core/integration/implementation...
Author: jboynes
Date: Mon Mar 19 12:35:29 2007
New Revision: 520059
URL: http://svn.apache.org/viewvc?view=rev&rev=520059
Log:
update java and system test cases to use FederatedDeployer
Modified:
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/deployer/federation/FederatedDeployer.java
incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/integration/implementation/java/PhysicalBuilderTestCase.java
incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/integration/implementation/system/builder/PhysicalBuilderTestCase.java
Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/deployer/federation/FederatedDeployer.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/deployer/federation/FederatedDeployer.java?view=diff&rev=520059&r1=520058&r2=520059
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/deployer/federation/FederatedDeployer.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/deployer/federation/FederatedDeployer.java Mon Mar 19 12:35:29 2007
@@ -18,6 +18,9 @@
*/
package org.apache.tuscany.core.deployer.federation;
+import java.util.Set;
+import java.util.ArrayList;
+import java.util.List;
import javax.xml.stream.XMLStreamReader;
import org.apache.tuscany.core.marshaller.PhysicalChangeSetMarshaller;
@@ -76,15 +79,7 @@
try {
final PhysicalChangeSet changeSet = (PhysicalChangeSet) marshallerRegistry.unmarshall(content);
- for (PhysicalComponentDefinition pcd : changeSet.getComponentDefinitions()) {
- final Component component = builderRegistry.build(pcd);
- componentManager.register(component);
- component.start();
- }
- for (PhysicalWireDefinition pwd : changeSet.getWireDefinitions()) {
- connector.connect(pwd);
- }
-
+ applyChangeSet(changeSet);
} catch (MarshalException ex) {
return null;
} catch (BuilderException ex) {
@@ -94,6 +89,24 @@
}
return null;
+ }
+
+ public void applyChangeSet(PhysicalChangeSet changeSet) throws BuilderException, RegistrationException {
+ Set<PhysicalComponentDefinition> componentDefinitions = changeSet.getComponentDefinitions();
+ List<Component> components = new ArrayList<Component>(componentDefinitions.size());
+ for (PhysicalComponentDefinition pcd : componentDefinitions) {
+ final Component component = builderRegistry.build(pcd);
+ components.add(component);
+ }
+ for (Component component : components) {
+ componentManager.register(component);
+ }
+ for (PhysicalWireDefinition pwd : changeSet.getWireDefinitions()) {
+ connector.connect(pwd);
+ }
+ for (Component component : components) {
+ component.start();
+ }
}
/**
Modified: incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/integration/implementation/java/PhysicalBuilderTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/integration/implementation/java/PhysicalBuilderTestCase.java?view=diff&rev=520059&r1=520058&r2=520059
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/integration/implementation/java/PhysicalBuilderTestCase.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/integration/implementation/java/PhysicalBuilderTestCase.java Mon Mar 19 12:35:29 2007
@@ -24,13 +24,17 @@
import junit.framework.TestCase;
import org.easymock.EasyMock;
+import org.apache.tuscany.core.builder.ConnectorImpl;
+import org.apache.tuscany.core.builder.physical.DefaultPhysicalComponentBuilderRegistry;
+import org.apache.tuscany.core.builder.physical.WireAttacherRegistryImpl;
+import org.apache.tuscany.core.component.ComponentManagerImpl;
import org.apache.tuscany.core.component.SimpleWorkContext;
import org.apache.tuscany.core.component.instancefactory.IFProviderBuilderRegistry;
import org.apache.tuscany.core.component.instancefactory.impl.DefaultIFProviderBuilderRegistry;
import org.apache.tuscany.core.component.instancefactory.impl.ReflectiveIFProviderBuilder;
import org.apache.tuscany.core.component.scope.CompositeScopeContainer;
+import org.apache.tuscany.core.deployer.federation.FederatedDeployer;
import org.apache.tuscany.core.implementation.PojoWorkContextTunnel;
-import org.apache.tuscany.core.implementation.java.JavaComponent;
import org.apache.tuscany.core.implementation.java.JavaPhysicalComponentBuilder;
import org.apache.tuscany.core.model.physical.instancefactory.InjectionSiteMapping;
import org.apache.tuscany.core.model.physical.instancefactory.InjectionSource;
@@ -39,12 +43,18 @@
import org.apache.tuscany.core.model.physical.java.JavaPhysicalComponentDefinition;
import org.apache.tuscany.core.model.physical.java.JavaPhysicalWireSourceDefinition;
import org.apache.tuscany.core.model.physical.java.JavaPhysicalWireTargetDefinition;
+import org.apache.tuscany.spi.builder.Connector;
+import org.apache.tuscany.spi.builder.physical.WireAttacherRegistry;
+import org.apache.tuscany.spi.component.AtomicComponent;
+import org.apache.tuscany.spi.component.ComponentManager;
import org.apache.tuscany.spi.component.InstanceWrapper;
import org.apache.tuscany.spi.component.ScopeContainer;
import org.apache.tuscany.spi.component.ScopeRegistry;
import org.apache.tuscany.spi.component.WorkContext;
import org.apache.tuscany.spi.model.Scope;
import org.apache.tuscany.spi.model.physical.InstanceFactoryProviderDefinition;
+import org.apache.tuscany.spi.model.physical.PhysicalChangeSet;
+import org.apache.tuscany.spi.model.physical.PhysicalWireDefinition;
import org.apache.tuscany.spi.services.classloading.ClassLoaderRegistry;
/**
@@ -59,28 +69,31 @@
private ScopeContainer<URI> scopeContainer;
private ScopeRegistry scopeRegistry;
private InstanceFactoryProviderDefinition<TargetImpl> targetProviderDefinition;
+ private Connector connector;
+ private ComponentManager componentManager;
+ private FederatedDeployer deployer;
+ private PhysicalChangeSet pcs;
public void testWireTwoComponents() throws Exception {
- JavaPhysicalComponentDefinition<SourceImpl> source = createSourceComponentDefinition();
- JavaPhysicalComponentDefinition<TargetImpl> target = createTargetComponentDefinition();
-
JavaPhysicalWireSourceDefinition wireSource = new JavaPhysicalWireSourceDefinition();
wireSource.setUri(sourceId.resolve("#target"));
wireSource.setOptimizable(true);
JavaPhysicalWireTargetDefinition wireTarget = new JavaPhysicalWireTargetDefinition();
-
- JavaComponent<?> sourceComponent = builder.build(source);
- JavaComponent<?> targetComponent = builder.build(target);
- builder.attachToSource(sourceComponent, wireSource, targetComponent, wireTarget, null);
- builder.attachToTarget(sourceComponent, wireSource, targetComponent, wireTarget, null);
-
- sourceComponent.start();
- targetComponent.start();
+ wireTarget.setUri(targetId);
+ PhysicalWireDefinition wireDefinition = new PhysicalWireDefinition();
+ wireDefinition.setSource(wireSource);
+ wireDefinition.setTarget(wireTarget);
+
+ pcs.addComponentDefinition(createSourceComponentDefinition());
+ pcs.addComponentDefinition(createTargetComponentDefinition());
+ pcs.addWireDefinition(wireDefinition);
+ deployer.applyChangeSet(pcs);
WorkContext workContext = new SimpleWorkContext();
workContext.setIdentifier(Scope.COMPOSITE, groupId);
PojoWorkContextTunnel.setThreadWorkContext(workContext);
try {
+ AtomicComponent<?> sourceComponent = (AtomicComponent<?>) componentManager.getComponent(sourceId);
InstanceWrapper<?> wrapper = scopeContainer.getWrapper(sourceComponent, groupId);
SourceImpl s = (SourceImpl) wrapper.getInstance();
assertSame(s.target.getClass(), TargetImpl.class);
@@ -141,7 +154,22 @@
IFProviderBuilderRegistry providerBuilders = new DefaultIFProviderBuilderRegistry();
providerBuilders.register(ReflectiveIFProviderDefinition.class, new ReflectiveIFProviderBuilder());
+ DefaultPhysicalComponentBuilderRegistry builderRegistry = new DefaultPhysicalComponentBuilderRegistry();
+ WireAttacherRegistry wireAttacherRegistry = new WireAttacherRegistryImpl();
builder = new JavaPhysicalComponentBuilder(null, scopeRegistry, providerBuilders, classLoaderRegistry);
+ builderRegistry.register(JavaPhysicalComponentDefinition.class, builder);
+ wireAttacherRegistry.register(JavaPhysicalWireSourceDefinition.class, builder);
+ wireAttacherRegistry.register(JavaPhysicalWireTargetDefinition.class, builder);
+
+ componentManager = new ComponentManagerImpl();
+ connector = new ConnectorImpl(null, wireAttacherRegistry, null, componentManager, null, null);
+
+ deployer = new FederatedDeployer();
+ deployer.setBuilderRegistry(builderRegistry);
+ deployer.setComponentManager(componentManager);
+ deployer.setConnector(connector);
+
+ pcs = new PhysicalChangeSet();
}
public static class SourceImpl {
Modified: incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/integration/implementation/system/builder/PhysicalBuilderTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/integration/implementation/system/builder/PhysicalBuilderTestCase.java?view=diff&rev=520059&r1=520058&r2=520059
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/integration/implementation/system/builder/PhysicalBuilderTestCase.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/test/java/org/apache/tuscany/core/integration/implementation/system/builder/PhysicalBuilderTestCase.java Mon Mar 19 12:35:29 2007
@@ -24,15 +24,18 @@
import junit.framework.TestCase;
import org.easymock.EasyMock;
-import org.apache.tuscany.core.component.SimpleWorkContext;
+import org.apache.tuscany.core.builder.ConnectorImpl;
+import org.apache.tuscany.core.builder.physical.DefaultPhysicalComponentBuilderRegistry;
+import org.apache.tuscany.core.builder.physical.WireAttacherRegistryImpl;
import org.apache.tuscany.core.component.ComponentManagerImpl;
+import org.apache.tuscany.core.component.SimpleWorkContext;
import org.apache.tuscany.core.component.instancefactory.IFProviderBuilderRegistry;
import org.apache.tuscany.core.component.instancefactory.impl.DefaultIFProviderBuilderRegistry;
import org.apache.tuscany.core.component.instancefactory.impl.ReflectiveIFProviderBuilder;
import org.apache.tuscany.core.component.scope.CompositeScopeContainer;
+import org.apache.tuscany.core.deployer.federation.FederatedDeployer;
import org.apache.tuscany.core.implementation.PojoWorkContextTunnel;
import org.apache.tuscany.core.implementation.system.builder.SystemPhysicalComponentBuilder;
-import org.apache.tuscany.core.implementation.system.component.SystemComponent;
import org.apache.tuscany.core.implementation.system.model.SystemPhysicalComponentDefinition;
import org.apache.tuscany.core.implementation.system.model.SystemPhysicalWireSourceDefinition;
import org.apache.tuscany.core.implementation.system.model.SystemPhysicalWireTargetDefinition;
@@ -40,19 +43,19 @@
import org.apache.tuscany.core.model.physical.instancefactory.InjectionSource;
import org.apache.tuscany.core.model.physical.instancefactory.MemberSite;
import org.apache.tuscany.core.model.physical.instancefactory.ReflectiveIFProviderDefinition;
-import org.apache.tuscany.core.builder.ConnectorImpl;
-import org.apache.tuscany.core.builder.physical.WireAttacherRegistryImpl;
+import org.apache.tuscany.spi.builder.Connector;
+import org.apache.tuscany.spi.builder.physical.WireAttacherRegistry;
+import org.apache.tuscany.spi.component.AtomicComponent;
+import org.apache.tuscany.spi.component.ComponentManager;
import org.apache.tuscany.spi.component.InstanceWrapper;
import org.apache.tuscany.spi.component.ScopeContainer;
import org.apache.tuscany.spi.component.ScopeRegistry;
import org.apache.tuscany.spi.component.WorkContext;
-import org.apache.tuscany.spi.component.ComponentManager;
import org.apache.tuscany.spi.model.Scope;
import org.apache.tuscany.spi.model.physical.InstanceFactoryProviderDefinition;
+import org.apache.tuscany.spi.model.physical.PhysicalChangeSet;
import org.apache.tuscany.spi.model.physical.PhysicalWireDefinition;
import org.apache.tuscany.spi.services.classloading.ClassLoaderRegistry;
-import org.apache.tuscany.spi.builder.Connector;
-import org.apache.tuscany.spi.builder.physical.WireAttacherRegistry;
/**
* @version $Rev$ $Date$
@@ -68,11 +71,10 @@
private InstanceFactoryProviderDefinition<TargetImpl> targetProviderDefinition;
private Connector connector;
private ComponentManager componentManager;
+ private FederatedDeployer deployer;
+ private PhysicalChangeSet pcs;
public void testWireTwoComponents() throws Exception {
- SystemPhysicalComponentDefinition<SourceImpl> source = createSourceComponentDefinition();
- SystemPhysicalComponentDefinition<TargetImpl> target = createTargetComponentDefinition();
-
SystemPhysicalWireSourceDefinition wireSource = new SystemPhysicalWireSourceDefinition();
wireSource.setUri(sourceId.resolve("#target"));
SystemPhysicalWireTargetDefinition wireTarget = new SystemPhysicalWireTargetDefinition();
@@ -81,18 +83,16 @@
wireDefinition.setSource(wireSource);
wireDefinition.setTarget(wireTarget);
- SystemComponent<?> sourceComponent = builder.build(source);
- componentManager.register(sourceComponent);
- SystemComponent<?> targetComponent = builder.build(target);
- componentManager.register(targetComponent);
- connector.connect(wireDefinition);
- sourceComponent.start();
- targetComponent.start();
+ pcs.addComponentDefinition(createSourceComponentDefinition());
+ pcs.addComponentDefinition(createTargetComponentDefinition());
+ pcs.addWireDefinition(wireDefinition);
+ deployer.applyChangeSet(pcs);
WorkContext workContext = new SimpleWorkContext();
workContext.setIdentifier(Scope.COMPOSITE, groupId);
PojoWorkContextTunnel.setThreadWorkContext(workContext);
try {
+ AtomicComponent<?> sourceComponent = (AtomicComponent<?>) componentManager.getComponent(sourceId);
InstanceWrapper<?> wrapper = scopeContainer.getWrapper(sourceComponent, groupId);
SourceImpl s = (SourceImpl) wrapper.getInstance();
assertSame(s.target.getClass(), TargetImpl.class);
@@ -153,15 +153,22 @@
IFProviderBuilderRegistry providerBuilders = new DefaultIFProviderBuilderRegistry();
providerBuilders.register(ReflectiveIFProviderDefinition.class, new ReflectiveIFProviderBuilder());
- builder = new SystemPhysicalComponentBuilder(null, scopeRegistry, providerBuilders, classLoaderRegistry);
-
+ DefaultPhysicalComponentBuilderRegistry builderRegistry = new DefaultPhysicalComponentBuilderRegistry();
WireAttacherRegistry wireAttacherRegistry = new WireAttacherRegistryImpl();
+ builder = new SystemPhysicalComponentBuilder(null, scopeRegistry, providerBuilders, classLoaderRegistry);
+ builderRegistry.register(SystemPhysicalComponentDefinition.class, builder);
wireAttacherRegistry.register(SystemPhysicalWireSourceDefinition.class, builder);
wireAttacherRegistry.register(SystemPhysicalWireTargetDefinition.class, builder);
componentManager = new ComponentManagerImpl();
connector = new ConnectorImpl(null, wireAttacherRegistry, null, componentManager, null, null);
+ deployer = new FederatedDeployer();
+ deployer.setBuilderRegistry(builderRegistry);
+ deployer.setComponentManager(componentManager);
+ deployer.setConnector(connector);
+
+ pcs = new PhysicalChangeSet();
}
public static class SourceImpl {
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org