summaryrefslogtreecommitdiffstats
path: root/java/sca/modules/node-impl/src
diff options
context:
space:
mode:
authorrfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68>2009-10-05 18:38:10 +0000
committerrfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68>2009-10-05 18:38:10 +0000
commitb76e4724a219f78dab6f096591cf363223f7ca95 (patch)
treee6938eab287083ce50f675231f78a915d1ea3bac /java/sca/modules/node-impl/src
parentcfd54b41d2ffb276de0b33e291934c9d1d380156 (diff)
Further refactor the CompositeContext to be the place to hold information about the Node
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@821953 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/sca/modules/node-impl/src')
-rw-r--r--java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/CompositeContextImpl.java11
-rw-r--r--java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeImpl.java4
2 files changed, 12 insertions, 3 deletions
diff --git a/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/CompositeContextImpl.java b/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/CompositeContextImpl.java
index 4a3366e6fb..54acece3cc 100644
--- a/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/CompositeContextImpl.java
+++ b/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/CompositeContextImpl.java
@@ -19,6 +19,7 @@
package org.apache.tuscany.sca.node.impl;
+import org.apache.tuscany.sca.assembly.Composite;
import org.apache.tuscany.sca.context.ComponentContextFactory;
import org.apache.tuscany.sca.context.CompositeContext;
import org.apache.tuscany.sca.context.ContextFactoryExtensionPoint;
@@ -34,12 +35,14 @@ public class CompositeContextImpl extends CompositeContext {
private final ExtensionPointRegistry extensionPointRegistry;
private final EndpointRegistry endpointRegistry;
private final ComponentContextFactory componentContextFactory;
+ private final Composite domainComposite;
- public CompositeContextImpl(ExtensionPointRegistry registry, EndpointRegistry endpointRegistry) {
+ public CompositeContextImpl(ExtensionPointRegistry registry, EndpointRegistry endpointRegistry, Composite domainComposite) {
this.extensionPointRegistry = registry;
this.endpointRegistry = endpointRegistry;
ContextFactoryExtensionPoint contextFactories = registry.getExtensionPoint(ContextFactoryExtensionPoint.class);
this.componentContextFactory = contextFactories.getFactory(ComponentContextFactory.class);
+ this.domainComposite = domainComposite;
}
public ExtensionPointRegistry getExtensionPointRegistry() {
@@ -50,10 +53,14 @@ public class CompositeContextImpl extends CompositeContext {
return endpointRegistry;
}
- public void configureComponentContext(RuntimeComponent runtimeComponent) {
+ public void bindComponent(RuntimeComponent runtimeComponent) {
RuntimeComponentContext componentContext =
(RuntimeComponentContext)componentContextFactory.createComponentContext(this, runtimeComponent);
runtimeComponent.setComponentContext(componentContext);
}
+ public Composite getDomainComposite() {
+ return domainComposite;
+ }
+
}
diff --git a/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeImpl.java b/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeImpl.java
index 86c693729b..aabb1c6abc 100644
--- a/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeImpl.java
+++ b/java/sca/modules/node-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeImpl.java
@@ -115,10 +115,10 @@ public class NodeImpl implements Node, Client {
// FIXME: Get the endpoint registry by the Node configuration
EndpointRegistry endpointRegistry = utilities.getUtility(EndpointRegistry.class);
- this.compositeContext = new CompositeContextImpl(manager.extensionPoints, endpointRegistry);
this.compositeActivator = utilities.getUtility(CompositeActivator.class);
try {
domainComposite = manager.configureNode(configuration, contributions);
+ this.compositeContext = new CompositeContextImpl(manager.extensionPoints, endpointRegistry, domainComposite);
// Activate the composite
compositeActivator.activate(domainComposite);
@@ -189,6 +189,8 @@ public class NodeImpl implements Node, Client {
manager.extensionPoints.getExtensionPoint(UtilityExtensionPoint.class).removeUtility(compositeActivator);
this.compositeActivator = null;
this.proxyFactory = null;
+ this.domainComposite = null;
+ this.compositeContext = null;
ThreadMessageContext.removeMessageContext();