Author: richard.opalka(a)jboss.com
Date: 2011-10-10 10:23:55 -0400 (Mon, 10 Oct 2011)
New Revision: 15067
Modified:
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/CXFInstanceProvider.java
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/transport/ServletHelper.java
Log:
switch to Reference instead of Object
Modified:
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/CXFInstanceProvider.java
===================================================================
---
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/CXFInstanceProvider.java 2011-10-10
14:19:58 UTC (rev 15066)
+++
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/CXFInstanceProvider.java 2011-10-10
14:23:55 UTC (rev 15067)
@@ -32,7 +32,9 @@
import org.apache.cxf.frontend.ServerFactoryBean;
import org.apache.cxf.jaxws.support.JaxWsEndpointImpl;
import org.jboss.ws.api.util.BundleUtils;
+import org.jboss.ws.common.deployment.ReferenceFactory;
import org.jboss.wsf.spi.deployment.InstanceProvider;
+import org.jboss.wsf.spi.deployment.Reference;
/**
* CXF instance provider.
@@ -43,18 +45,18 @@
private static final ResourceBundle bundle =
BundleUtils.getBundle(CXFInstanceProvider.class);
private final ServerFactoryBean factory;
- private final Map<String, Object> cache = new HashMap<String, Object>();
+ private final Map<String, Reference> cache = new HashMap<String,
Reference>();
public CXFInstanceProvider(final ServerFactoryBean factory) {
this.factory = factory;
}
- public synchronized Object getInstance(final String className) {
- Object instance = cache.get(className);
+ public synchronized Reference getInstance(final String className) {
+ Reference instance = cache.get(className);
if (instance == null) {
final Object serviceBean = factory.getServiceBean();
if (className.equals(factory.getServiceBean().getClass().getName())) {
- cache.put(className, instance = serviceBean);
+ cache.put(className, instance =
ReferenceFactory.newUninitializedReference(serviceBean));
}
if (instance == null)
{
@@ -62,7 +64,7 @@
if (chain != null) {
for (Handler handler : chain) {
if (className.equals(handler.getClass().getName())) {
- cache.put(className, instance = handler);
+ cache.put(className, instance =
ReferenceFactory.newUninitializedReference(handler));
}
}
}
Modified:
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/transport/ServletHelper.java
===================================================================
---
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/transport/ServletHelper.java 2011-10-10
14:19:58 UTC (rev 15066)
+++
stack/cxf/trunk/modules/server/src/main/java/org/jboss/wsf/stack/cxf/transport/ServletHelper.java 2011-10-10
14:23:55 UTC (rev 15067)
@@ -130,7 +130,7 @@
{
for (Handler handler : chain)
{
- final Object handlerInstance =
endpoint.getInstanceProvider().getInstance(handler.getClass().getName());
+ final Object handlerInstance =
endpoint.getInstanceProvider().getInstance(handler.getClass().getName()).getValue();
InjectionHelper.injectResources(handlerInstance, metadata, jndiContext);
InjectionHelper.callPostConstructMethod(handlerInstance);
}
@@ -145,7 +145,7 @@
{
if (isJaxwsJseEndpoint(endpoint) && factory.getServiceBean() != null)
{
- final Object epInstance =
endpoint.getInstanceProvider().getInstance(factory.getServiceBean().getClass().getName());
+ final Object epInstance =
endpoint.getInstanceProvider().getInstance(factory.getServiceBean().getClass().getName()).getValue();
InjectionHelper.callPreDestroyMethod(epInstance);
}
}
Show replies by date