summaryrefslogtreecommitdiffstats
path: root/sca-java-2.x/trunk/modules/implementation-spring/src/main/java/org/apache/tuscany
diff options
context:
space:
mode:
authorrfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68>2010-07-29 16:54:18 +0000
committerrfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68>2010-07-29 16:54:18 +0000
commitb762983667bf7071c9e89f5bcf7603a288e1bd47 (patch)
tree58a28b5c879febb929db938d767928b38be8760a /sca-java-2.x/trunk/modules/implementation-spring/src/main/java/org/apache/tuscany
parentb3c36170d3ea69674fc3e892fea0bbc2cd300ceb (diff)
Use a utility instead of ModuleActivator for Spring application context access
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@980505 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sca-java-2.x/trunk/modules/implementation-spring/src/main/java/org/apache/tuscany')
-rw-r--r--sca-java-2.x/trunk/modules/implementation-spring/src/main/java/org/apache/tuscany/sca/implementation/spring/invocation/SpringApplicationContextAccessor.java (renamed from sca-java-2.x/trunk/modules/implementation-spring/src/main/java/org/apache/tuscany/sca/implementation/spring/invocation/SpringApplicationContextHelper.java)27
-rw-r--r--sca-java-2.x/trunk/modules/implementation-spring/src/main/java/org/apache/tuscany/sca/implementation/spring/invocation/SpringImplementationProviderFactory.java13
2 files changed, 13 insertions, 27 deletions
diff --git a/sca-java-2.x/trunk/modules/implementation-spring/src/main/java/org/apache/tuscany/sca/implementation/spring/invocation/SpringApplicationContextHelper.java b/sca-java-2.x/trunk/modules/implementation-spring/src/main/java/org/apache/tuscany/sca/implementation/spring/invocation/SpringApplicationContextAccessor.java
index f1a1d7e1e7..3cdeb332b2 100644
--- a/sca-java-2.x/trunk/modules/implementation-spring/src/main/java/org/apache/tuscany/sca/implementation/spring/invocation/SpringApplicationContextHelper.java
+++ b/sca-java-2.x/trunk/modules/implementation-spring/src/main/java/org/apache/tuscany/sca/implementation/spring/invocation/SpringApplicationContextAccessor.java
@@ -19,38 +19,21 @@
package org.apache.tuscany.sca.implementation.spring.invocation;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.core.UtilityExtensionPoint;
-
/**
* A utility to receive the parent Spring application context
*/
-public class SpringApplicationContextHelper {
- private Object parentApplicationContext;
-
- public SpringApplicationContextHelper(ExtensionPointRegistry registry) {
- }
-
- public static SpringApplicationContextHelper getInstance(ExtensionPointRegistry registry) {
- UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
- return utilities.getUtility(SpringApplicationContextHelper.class);
- }
-
+public interface SpringApplicationContextAccessor {
/**
* Get the parent Spring application context for the hosting environment. This will be used as the parent
* application context for implementation.spring components
- * @return
+ * @return The parent application context
*/
- public Object getParentApplicationContext() {
- return parentApplicationContext;
- }
+ Object getParentApplicationContext();
/**
* Set the root Spring application context. This is particually useful for Spring web integration where Spring
* creates WebApplicationContext and keeps it in the ServletContext
- * @param parentApplicationContext
+ * @param parentApplicationContext The parent application context
*/
- public void setParentApplicationContext(Object parentApplicationContext) {
- this.parentApplicationContext = parentApplicationContext;
- }
+ void setParentApplicationContext(Object parentApplicationContext);
}
diff --git a/sca-java-2.x/trunk/modules/implementation-spring/src/main/java/org/apache/tuscany/sca/implementation/spring/invocation/SpringImplementationProviderFactory.java b/sca-java-2.x/trunk/modules/implementation-spring/src/main/java/org/apache/tuscany/sca/implementation/spring/invocation/SpringImplementationProviderFactory.java
index 46d49dbe1a..24533368ff 100644
--- a/sca-java-2.x/trunk/modules/implementation-spring/src/main/java/org/apache/tuscany/sca/implementation/spring/invocation/SpringImplementationProviderFactory.java
+++ b/sca-java-2.x/trunk/modules/implementation-spring/src/main/java/org/apache/tuscany/sca/implementation/spring/invocation/SpringImplementationProviderFactory.java
@@ -36,7 +36,7 @@ import org.apache.tuscany.sca.runtime.RuntimeComponent;
public class SpringImplementationProviderFactory implements ImplementationProviderFactory<SpringImplementation> {
private ProxyFactory proxyFactory;
private PropertyValueFactory propertyFactory;
- private SpringApplicationContextHelper contextHelper;
+ private SpringApplicationContextAccessor contextAccessor;
/**
* Simple constructor
@@ -44,9 +44,10 @@ public class SpringImplementationProviderFactory implements ImplementationProvid
*/
public SpringImplementationProviderFactory(ExtensionPointRegistry registry) {
super();
- contextHelper = SpringApplicationContextHelper.getInstance(registry);
+ UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+ contextAccessor = utilities.getUtility(SpringApplicationContextAccessor.class);
proxyFactory = ExtensibleProxyFactory.getInstance(registry);
- propertyFactory = registry.getExtensionPoint(UtilityExtensionPoint.class).getUtility(PropertyValueFactory.class);
+ propertyFactory = utilities.getUtility(PropertyValueFactory.class);
}
/**
@@ -58,8 +59,10 @@ public class SpringImplementationProviderFactory implements ImplementationProvid
*/
public ImplementationProvider createImplementationProvider(RuntimeComponent component,
SpringImplementation implementation) {
- Object parentApplicationContext = contextHelper.getParentApplicationContext();
- return new SpringImplementationProvider(component, implementation, parentApplicationContext, proxyFactory, propertyFactory);
+ Object parentApplicationContext =
+ (contextAccessor != null) ? contextAccessor.getParentApplicationContext() : null;
+ return new SpringImplementationProvider(component, implementation, parentApplicationContext, proxyFactory,
+ propertyFactory);
}
/**