Author: richard.opalka(a)jboss.com
Date: 2009-07-02 10:04:22 -0400 (Thu, 02 Jul 2009)
New Revision: 10292
Modified:
container/jboss50/branches/ropalka-jboss510/src/main/java/org/jboss/wsf/container/jboss50/deployer/WSDeploymentDeployer.java
Log:
[JBWS-2332][JBWS-2382] refactoring - avoiding concurrency issues (WIP)
Modified:
container/jboss50/branches/ropalka-jboss510/src/main/java/org/jboss/wsf/container/jboss50/deployer/WSDeploymentDeployer.java
===================================================================
---
container/jboss50/branches/ropalka-jboss510/src/main/java/org/jboss/wsf/container/jboss50/deployer/WSDeploymentDeployer.java 2009-07-02
13:24:31 UTC (rev 10291)
+++
container/jboss50/branches/ropalka-jboss510/src/main/java/org/jboss/wsf/container/jboss50/deployer/WSDeploymentDeployer.java 2009-07-02
14:04:22 UTC (rev 10292)
@@ -64,8 +64,8 @@
public final class WSDeploymentDeployer extends AbstractRealDeployer
{
- private static final WSVirtualFileFilter WS_FILEFILTER = new WSVirtualFileFilter();
- private DeploymentModelFactory deploymentModelFactory;
+ private static final WSVirtualFileFilter WS_FILE_FILTER = new WSVirtualFileFilter();
+ private final DeploymentModelFactory deploymentModelFactory;
/**
* Constructor.
@@ -81,6 +81,10 @@
// outputs
this.addOutput( JBossWebMetaData.class );
this.addOutput( Deployment.class );
+
+ // deployment factory
+ SPIProvider spiProvider = SPIProviderResolver.getInstance().getProvider();
+ deploymentModelFactory = spiProvider.getSPI(DeploymentModelFactory.class);
}
@Override
@@ -88,23 +92,23 @@
{
if ( ASIntegrationHelper.isJaxrpcEjbDeployment( unit ) )
{
- this.newJAXRPCEJB21Deployment( unit );
+ this.newJaxrpcEjbDeployment( unit );
}
else if ( ASIntegrationHelper.isJaxwsEjbDeployment( unit ) )
{
- this.newJAXWSEJB3Deployment( unit );
+ this.newJaxwsEjbDeployment( unit );
}
else if ( ASIntegrationHelper.isJaxrpcPojoDeployment( unit ) )
{
- this.newJAXRPCJSEDeployment( unit );
+ this.newJaxrpcPojoDeployment( unit );
}
else if ( ASIntegrationHelper.isJaxwsPojoDeployment( unit ) )
{
- this.newJAXWSJSEDeployment( unit );
+ this.newJaxwsPojoDeployment( unit );
}
}
- private void newJAXRPCEJB21Deployment( final DeploymentUnit unit )
+ private void newJaxrpcEjbDeployment( final DeploymentUnit unit )
{
ArchiveDeployment dep = newDeployment(unit);
dep.setRootFile(new VirtualFileAdaptor(((VFSDeploymentUnit)unit).getRoot()));
@@ -145,7 +149,7 @@
String ejbClass = beanMetaData.getEjbClass();
// Create the endpoint
- Endpoint ep = newEndpoint(ejbClass);
+ Endpoint ep = this.deploymentModelFactory.newEndpoint(ejbClass);
ep.setShortName(ejbLink);
service.addEndpoint(ep);
}
@@ -155,7 +159,7 @@
unit.addAttachment( Deployment.class, dep );
}
- private void newJAXWSEJB3Deployment( final DeploymentUnit unit )
+ private void newJaxwsEjbDeployment( final DeploymentUnit unit )
{
ArchiveDeployment dep = newDeployment(unit);
dep.setRootFile(new VirtualFileAdaptor(((VFSDeploymentUnit)unit).getRoot()));
@@ -181,7 +185,7 @@
String epBean = container.getComponentClassName();
// Create the endpoint
- Endpoint ep = newEndpoint(epBean);
+ Endpoint ep = this.deploymentModelFactory.newEndpoint(epBean);
ep.setShortName(ejbName);
String containName = container.getContainerName();
@@ -197,7 +201,7 @@
unit.addAttachment( Deployment.class, dep );
}
- private void newJAXRPCJSEDeployment( final DeploymentUnit unit )
+ private void newJaxrpcPojoDeployment( final DeploymentUnit unit )
{
ArchiveDeployment dep = newDeployment(unit);
dep.setRootFile(new VirtualFileAdaptor(((VFSDeploymentUnit)unit).getRoot()));
@@ -230,7 +234,7 @@
String targetBean = DeployerUtils.getTargetBean(servlet);
// Create the endpoint
- Endpoint ep = newEndpoint(targetBean);
+ Endpoint ep = this.deploymentModelFactory.newEndpoint(targetBean);
ep.setShortName(servletLink);
service.addEndpoint(ep);
}
@@ -240,7 +244,7 @@
unit.addAttachment( Deployment.class, dep );
}
- private void newJAXWSJSEDeployment( final DeploymentUnit unit )
+ private void newJaxwsPojoDeployment( final DeploymentUnit unit )
{
ArchiveDeployment dep = newDeployment(unit);
dep.setRootFile(new VirtualFileAdaptor(((VFSDeploymentUnit)unit).getRoot()));
@@ -262,7 +266,7 @@
String targetBean = DeployerUtils.getTargetBean(servlet);
// Create the endpoint
- Endpoint ep = newEndpoint(targetBean);
+ Endpoint ep = this.deploymentModelFactory.newEndpoint(targetBean);
ep.setShortName(servletName);
service.addEndpoint(ep);
}
@@ -287,12 +291,11 @@
{
try
{
- DeploymentModelFactory factory = getDeploymentModelFactory();
- ArchiveDeployment dep =
(ArchiveDeployment)factory.newDeployment(unit.getSimpleName(), unit.getClassLoader());
+ ArchiveDeployment dep =
(ArchiveDeployment)this.deploymentModelFactory.newDeployment(unit.getSimpleName(),
unit.getClassLoader());
if (unit instanceof VFSDeploymentUnit)
{
VFSDeploymentUnit vfsUnit = (VFSDeploymentUnit)unit;
- List<VirtualFile> virtualFiles =
vfsUnit.getMetaDataFiles(WS_FILEFILTER); //get all wsdl and xsd files
+ List<VirtualFile> virtualFiles =
vfsUnit.getMetaDataFiles(WS_FILE_FILTER); //get all wsdl and xsd files
Set<UnifiedVirtualFile> uVirtualFiles = new
HashSet<UnifiedVirtualFile>();
for (VirtualFile vf : virtualFiles)
{
@@ -305,7 +308,7 @@
if (unit.getParent() != null)
{
DeploymentUnit parentUnit = unit.getParent();
- ArchiveDeployment parentDep =
(ArchiveDeployment)factory.newDeployment(parentUnit.getSimpleName(),
parentUnit.getClassLoader());
+ ArchiveDeployment parentDep =
(ArchiveDeployment)this.deploymentModelFactory.newDeployment(parentUnit.getSimpleName(),
parentUnit.getClassLoader());
dep.setParent(parentDep);
}
return dep;
@@ -316,27 +319,4 @@
}
}
- private DeploymentModelFactory getDeploymentModelFactory()
- {
- if(null == deploymentModelFactory)
- {
- SPIProvider spiProvider = SPIProviderResolver.getInstance().getProvider();
- deploymentModelFactory = spiProvider.getSPI(DeploymentModelFactory.class);
- }
-
- return deploymentModelFactory;
- }
-
- private Endpoint newEndpoint(String targetBean)
- {
- try
- {
- return getDeploymentModelFactory().newEndpoint(targetBean);
- }
- catch (Exception ex)
- {
- throw new WSFDeploymentException("Cannot load spi.deployment.Endpoint
class", ex);
- }
- }
-
}
Show replies by date