Author: richard.opalka(a)jboss.com
Date: 2009-07-02 05:56:53 -0400 (Thu, 02 Jul 2009)
New Revision: 10289
Added:
container/jboss50/branches/ropalka-jboss510/src/main/java/org/jboss/wsf/container/jboss50/ASIntegrationHelper.java
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/deployment/metadata/ContainerMetaDataAdapter.java
Log:
[JBWS-2332][JBWS-2382] refactoring (WIP)
Added:
container/jboss50/branches/ropalka-jboss510/src/main/java/org/jboss/wsf/container/jboss50/ASIntegrationHelper.java
===================================================================
---
container/jboss50/branches/ropalka-jboss510/src/main/java/org/jboss/wsf/container/jboss50/ASIntegrationHelper.java
(rev 0)
+++
container/jboss50/branches/ropalka-jboss510/src/main/java/org/jboss/wsf/container/jboss50/ASIntegrationHelper.java 2009-07-02
09:56:53 UTC (rev 10289)
@@ -0,0 +1,136 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2009, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+package org.jboss.wsf.container.jboss50;
+
+import org.jboss.deployers.structure.spi.DeploymentUnit;
+import org.jboss.wsf.spi.deployment.Deployment.DeploymentType;
+
+/**
+ * JBoss AS integration helper class.
+ *
+ * @author <a href="ropalka(a)redhat.com">Richard Opalka</a>
+ */
+public final class ASIntegrationHelper
+{
+
+ /**
+ * Forbidden constructor.
+ */
+ private ASIntegrationHelper()
+ {
+ super();
+ }
+
+ public static boolean isWebServiceDeployment( final DeploymentUnit unit )
+ {
+ return unit.getAttachment( DeploymentType.class ) != null;
+ }
+
+ public static boolean isPojoDeployment( final DeploymentUnit unit )
+ {
+ if ( ASIntegrationHelper.isWebServiceDeployment( unit ) )
+ {
+ final DeploymentType deploymentType = unit.getAttachment( DeploymentType.class
);
+ final boolean isJaxrpcPojo = DeploymentType.JAXRPC_JSE.equals( deploymentType
);
+ final boolean isJaxwsPojo = DeploymentType.JAXWS_JSE.equals( deploymentType );
+
+ return isJaxwsPojo || isJaxrpcPojo;
+ }
+
+ return false;
+ }
+
+ public static boolean isEjbDeployment( final DeploymentUnit unit )
+ {
+ if ( ASIntegrationHelper.isWebServiceDeployment( unit ) )
+ {
+ final DeploymentType deploymentType = unit.getAttachment( DeploymentType.class
);
+ final boolean isJaxwsEjb3 = DeploymentType.JAXWS_EJB3.equals( deploymentType );
+ final boolean isJaxrpcEjb21 = DeploymentType.JAXRPC_EJB21.equals( deploymentType
);
+
+ return isJaxwsEjb3 || isJaxrpcEjb21;
+ }
+
+ return false;
+ }
+
+ public static boolean isJaxwsDeployment( final DeploymentUnit unit )
+ {
+ if ( ASIntegrationHelper.isWebServiceDeployment( unit ) )
+ {
+ final DeploymentType deploymentType = unit.getAttachment( DeploymentType.class
);
+ final boolean isJaxwsEjb3 = DeploymentType.JAXWS_EJB3.equals( deploymentType );
+ final boolean isJaxwsPojo = DeploymentType.JAXWS_JSE.equals( deploymentType );
+
+ return isJaxwsEjb3 || isJaxwsPojo;
+ }
+
+ return false;
+ }
+
+ public static boolean isJaxrpcDeployment( final DeploymentUnit unit )
+ {
+ if ( ASIntegrationHelper.isWebServiceDeployment( unit ) )
+ {
+ final DeploymentType deploymentType = unit.getAttachment( DeploymentType.class
);
+ final boolean isJaxrpcEjb21 = DeploymentType.JAXRPC_EJB21.equals( deploymentType
);
+ final boolean isJaxrpcPojo = DeploymentType.JAXRPC_JSE.equals( deploymentType
);
+
+ return isJaxrpcEjb21 || isJaxrpcPojo;
+ }
+
+ return false;
+ }
+
+ public static boolean isJaxrpcPojoDeployment( final DeploymentUnit unit )
+ {
+ final boolean isJaxrpc = ASIntegrationHelper.isJaxrpcDeployment( unit );
+ final boolean isPojo = ASIntegrationHelper.isPojoDeployment( unit );
+
+ return isPojo && isJaxrpc;
+ }
+
+ public static boolean isJaxwsPojoDeployment( final DeploymentUnit unit )
+ {
+ final boolean isJaxws = ASIntegrationHelper.isJaxwsDeployment( unit );
+ final boolean isPojo = ASIntegrationHelper.isPojoDeployment( unit );
+
+ return isPojo && isJaxws;
+ }
+
+ public static boolean isJaxrpcEjbDeployment( final DeploymentUnit unit )
+ {
+ final boolean isJaxrpc = ASIntegrationHelper.isJaxrpcDeployment( unit );
+ final boolean isEjb = ASIntegrationHelper.isEjbDeployment( unit );
+
+ return isEjb && isJaxrpc;
+ }
+
+ public static boolean isJaxwsEjbDeployment( final DeploymentUnit unit )
+ {
+ final boolean isJaxws = ASIntegrationHelper.isJaxwsDeployment( unit );
+ final boolean isEjb = ASIntegrationHelper.isEjbDeployment( unit );
+
+ return isEjb && isJaxws;
+ }
+
+}
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
09:09:19 UTC (rev 10288)
+++
container/jboss50/branches/ropalka-jboss510/src/main/java/org/jboss/wsf/container/jboss50/deployer/WSDeploymentDeployer.java 2009-07-02
09:56:53 UTC (rev 10289)
@@ -38,6 +38,7 @@
import org.jboss.metadata.web.jboss.JBossWebMetaData;
import org.jboss.metadata.web.spec.ServletMetaData;
import org.jboss.virtual.VirtualFile;
+import org.jboss.wsf.container.jboss50.ASIntegrationHelper;
import org.jboss.wsf.container.jboss50.invocation.InvocationHandlerEJB3;
import org.jboss.wsf.spi.SPIProvider;
import org.jboss.wsf.spi.SPIProviderResolver;
@@ -85,26 +86,22 @@
@Override
protected void internalDeploy( final DeploymentUnit unit ) throws DeploymentException
{
- final DeploymentType deploymentType = unit.getAttachment( DeploymentType.class );
- if ( deploymentType != null )
+ if ( ASIntegrationHelper.isJaxrpcEjbDeployment( unit ) )
{
- if ( DeploymentType.JAXRPC_EJB21.equals( deploymentType ) )
- {
- this.newJAXRPCEJB21Deployment( unit );
- }
- else if ( DeploymentType.JAXWS_EJB3.equals( deploymentType ) )
- {
- this.newJAXWSEJB3Deployment( unit );
- }
- else if ( DeploymentType.JAXRPC_JSE.equals( deploymentType ) )
- {
- this.newJAXRPCJSEDeployment( unit );
- }
- else if ( DeploymentType.JAXWS_JSE.equals( deploymentType ) )
- {
- this.newJAXWSJSEDeployment( unit );
- }
+ this.newJAXRPCEJB21Deployment( unit );
}
+ else if ( ASIntegrationHelper.isJaxwsEjbDeployment( unit ) )
+ {
+ this.newJAXWSEJB3Deployment( unit );
+ }
+ else if ( ASIntegrationHelper.isJaxrpcPojoDeployment( unit ) )
+ {
+ this.newJAXRPCJSEDeployment( unit );
+ }
+ else if ( ASIntegrationHelper.isJaxwsPojoDeployment( unit ) )
+ {
+ this.newJAXWSJSEDeployment( unit );
+ }
}
private void newJAXRPCEJB21Deployment( final DeploymentUnit unit )
Modified:
container/jboss50/branches/ropalka-jboss510/src/main/java/org/jboss/wsf/container/jboss50/deployment/metadata/ContainerMetaDataAdapter.java
===================================================================
---
container/jboss50/branches/ropalka-jboss510/src/main/java/org/jboss/wsf/container/jboss50/deployment/metadata/ContainerMetaDataAdapter.java 2009-07-02
09:09:19 UTC (rev 10288)
+++
container/jboss50/branches/ropalka-jboss510/src/main/java/org/jboss/wsf/container/jboss50/deployment/metadata/ContainerMetaDataAdapter.java 2009-07-02
09:56:53 UTC (rev 10289)
@@ -22,28 +22,19 @@
package org.jboss.wsf.container.jboss50.deployment.metadata;
import org.jboss.deployers.structure.spi.DeploymentUnit;
-import org.jboss.ejb3.Ejb3Deployment;
-import org.jboss.logging.Logger;
-import org.jboss.metadata.ejb.jboss.JBossMetaData;
-import org.jboss.metadata.web.jboss.JBossWebMetaData;
-import org.jboss.wsf.spi.deployment.ArchiveDeployment;
import org.jboss.wsf.spi.deployment.Deployment;
import org.jboss.wsf.spi.metadata.j2ee.EJBArchiveMetaData;
import org.jboss.wsf.spi.metadata.j2ee.JSEArchiveMetaData;
-import org.jboss.wsf.container.jboss50.deployment.tomcat.WebMetaDataModifier;
+import org.jboss.wsf.container.jboss50.ASIntegrationHelper;
-import java.net.URL;
-
/**
* Build container independent deployment info.
*
* @author Thomas.Diesler(a)jboss.org
- * @since 05-May-2006
+ * @author <a href="ropalka(a)redhat.com">Richard Opalka</a>
*/
public class ContainerMetaDataAdapter
{
- // logging support
- private static Logger log = Logger.getLogger(ContainerMetaDataAdapter.class);
private EJBArchiveMetaDataAdapterEJB3 ejbMetaDataAdapterEJB3 = new
EJBArchiveMetaDataAdapterEJB3();
private EJBArchiveMetaDataAdapterEJB21 ejbMetaDataAdapterEJB21 = new
EJBArchiveMetaDataAdapterEJB21();
@@ -66,38 +57,22 @@
public void buildContainerMetaData(Deployment dep, DeploymentUnit unit)
{
- dep.addAttachment(DeploymentUnit.class, unit);
-
try
{
- // JSE endpoints
- if (unit.getAttachment(JBossWebMetaData.class) != null)
+ if ( ASIntegrationHelper.isPojoDeployment( unit ) )
{
JSEArchiveMetaData webMetaData = webMetaDataAdapter.buildMetaData(dep,
unit);
- if (webMetaData != null)
- dep.addAttachment(JSEArchiveMetaData.class, webMetaData);
-
- if (dep instanceof ArchiveDeployment)
- {
- URL webURL = ((ArchiveDeployment)dep).getRootFile().toURL();
- dep.setProperty(WebMetaDataModifier.PROPERTY_WEBAPP_URL, webURL);
- }
+ dep.addAttachment(JSEArchiveMetaData.class, webMetaData);
}
-
- // EJB3 endpoints
- else if (unit.getAttachment(Ejb3Deployment.class) != null)
+ else if ( ASIntegrationHelper.isJaxwsEjbDeployment(unit) )
{
EJBArchiveMetaData ejbMetaData = ejbMetaDataAdapterEJB3.buildMetaData(dep,
unit);
- if (ejbMetaData != null)
- dep.addAttachment(EJBArchiveMetaData.class, ejbMetaData);
+ dep.addAttachment(EJBArchiveMetaData.class, ejbMetaData);
}
-
- // EJB21 endpoints
- else if (unit.getAttachment(JBossMetaData.class) != null)
+ else if ( ASIntegrationHelper.isJaxrpcEjbDeployment(unit) )
{
EJBArchiveMetaData ejbMetaData = ejbMetaDataAdapterEJB21.buildMetaData(dep,
unit);
- if (ejbMetaData != null)
- dep.addAttachment(EJBArchiveMetaData.class, ejbMetaData);
+ dep.addAttachment(EJBArchiveMetaData.class, ejbMetaData);
}
}
catch (RuntimeException rte)
@@ -109,4 +84,5 @@
throw new IllegalStateException(ex);
}
}
+
}