You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by me...@apache.org on 2007/01/30 09:09:18 UTC
svn commit: r501336 - in
/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/deployer:
DeployerImpl.java federation/FederatedDeployer.java
Author: meerajk
Date: Tue Jan 30 00:09:17 2007
New Revision: 501336
URL: http://svn.apache.org/viewvc?view=rev&rev=501336
Log:
FederatedDeployer now extends DeployerImpl.
Modified:
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/deployer/DeployerImpl.java
incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/deployer/federation/FederatedDeployer.java
Modified: incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/deployer/DeployerImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/deployer/DeployerImpl.java?view=diff&rev=501336&r1=501335&r2=501336
==============================================================================
--- incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/deployer/DeployerImpl.java (original)
+++ incubator/tuscany/java/sca/kernel/core/src/main/java/org/apache/tuscany/core/deployer/DeployerImpl.java Tue Jan 30 00:09:17 2007
@@ -52,10 +52,10 @@
* @version $Rev$ $Date$
*/
public class DeployerImpl implements Deployer {
- private XMLInputFactory xmlFactory;
- private Loader loader;
- private Builder builder;
- private ScopeContainerMonitor monitor;
+ protected XMLInputFactory xmlFactory;
+ protected Loader loader;
+ protected Builder builder;
+ protected ScopeContainerMonitor monitor;
public DeployerImpl(XMLInputFactory xmlFactory, Loader loader, Builder builder) {
this.xmlFactory = xmlFactory;
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=501336&r1=501335&r2=501336
==============================================================================
--- 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 Tue Jan 30 00:09:17 2007
@@ -19,16 +19,18 @@
package org.apache.tuscany.core.deployer.federation;
import javax.xml.namespace.QName;
+import javax.xml.stream.XMLStreamException;
import javax.xml.stream.XMLStreamReader;
+import org.apache.tuscany.core.component.scope.CompositeScopeContainer;
+import org.apache.tuscany.core.deployer.DeployerImpl;
+import org.apache.tuscany.core.deployer.RootDeploymentContext;
import org.apache.tuscany.spi.annotation.Autowire;
-import org.apache.tuscany.spi.builder.BuilderException;
-import org.apache.tuscany.spi.builder.BuilderRegistry;
import org.apache.tuscany.spi.component.Component;
import org.apache.tuscany.spi.component.CompositeComponent;
+import org.apache.tuscany.spi.component.ScopeContainer;
import org.apache.tuscany.spi.deployer.DeploymentContext;
-import org.apache.tuscany.spi.model.ComponentDefinition;
-import org.apache.tuscany.spi.model.Implementation;
+import org.apache.tuscany.spi.loader.LoaderException;
import org.apache.tuscany.spi.services.discovery.DiscoveryService;
import org.apache.tuscany.spi.services.discovery.RequestListener;
@@ -36,16 +38,15 @@
* Federated deployer that deploys components in response to asynchronous
* messages from the federated domain.
*
+ * TODO Common abstractions between federated and local deployer.
+ *
* @version $Revision$ $Date$
*
*/
-public class FederatedDeployer implements RequestListener {
+public class FederatedDeployer extends DeployerImpl implements RequestListener {
/** QName of the message. */
private static final QName MESSAGE_TYPE = new QName("http://www.osoa.org/xmlns/sca/1.0", "composite");
-
- /** Builder registry. */
- private BuilderRegistry builderRegistry;
/**
* Deploys the SCDL.
@@ -56,17 +57,20 @@
*/
public XMLStreamReader onRequest(XMLStreamReader content) {
- // TODO get this from the content
- final ComponentDefinition<Implementation<?>> definition = null;
- // TODO get this from somewhere
- final DeploymentContext context = null;
// TODO get this from somewhere
final CompositeComponent parent = null;
+
+ final ScopeContainer scopeContainer = new CompositeScopeContainer(monitor);
+ scopeContainer.start();
+
+ final DeploymentContext deploymentContext = new RootDeploymentContext(null, xmlFactory, scopeContainer, null);
try {
- Component component = builderRegistry.build(parent, definition, context);
- component.start();
- } catch (BuilderException ex) {
+ final Component component = (Component) loader.load(parent, null, content, deploymentContext);
+ // TODO Now the component is loaded, build and start it
+ } catch (LoaderException ex) {
+ return null;
+ } catch (XMLStreamException ex) {
return null;
}
@@ -80,15 +84,6 @@
@Autowire
public void setDiscoveryService(DiscoveryService discoveryService) {
discoveryService.registerRequestListener(MESSAGE_TYPE, this);
- }
-
- /**
- * Injects the builder registry.
- * @param discoveryService Builder registry to be injected.
- */
- @Autowire
- public void setBuilderRegistry(BuilderRegistry builderRegistry) {
- this.builderRegistry = builderRegistry;
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org