[jboss-cvs] JBossAS SVN: r75881 - trunk/connector/src/main/org/jboss/resource/deployers.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Jul 16 05:57:50 EDT 2008
Author: alesj
Date: 2008-07-16 05:57:50 -0400 (Wed, 16 Jul 2008)
New Revision: 75881
Modified:
trunk/connector/src/main/org/jboss/resource/deployers/RARParserDeployer.java
Log:
Fix the deployer's AltDD usage.
Modified: trunk/connector/src/main/org/jboss/resource/deployers/RARParserDeployer.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/deployers/RARParserDeployer.java 2008-07-16 09:47:53 UTC (rev 75880)
+++ trunk/connector/src/main/org/jboss/resource/deployers/RARParserDeployer.java 2008-07-16 09:57:50 UTC (rev 75881)
@@ -21,9 +21,9 @@
*/
package org.jboss.resource.deployers;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import java.util.HashMap;
import org.jboss.deployers.vfs.spi.deployer.MultipleObjectModelFactoryDeployer;
import org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit;
@@ -38,25 +38,23 @@
/**
* RARParserDeployer.
- *
+ *
* @author <a href="adrian at jboss.com">Adrian Brock</a>
* @author <a href="vicky.kak at jboss.com">Vicky Kak</a>
+ * @author <a href="ales.justin at jboss.com">Ales Justin</a>
* @version $Revision: 1.1 $
*/
public class RARParserDeployer extends MultipleObjectModelFactoryDeployer<RARDeploymentMetaData>
{
/** The metadata repsoitory */
private JCAMetaDataRepository metaDataRepository;
- /** */
-
+
/** JEE specific RAR DD name */
private static String jeeSpecRarDD = "ra.xml";
-
+
/** Jboss specific RAR DD name */
private static String jbossRarDD = "jboss-ra.xml";
-
- private JBossRAMetaData jbossSpecificMetaData;
-
+
private static Map<String, Class<?>> getCustomMappings()
{
Map<String, Class<?>> mappings = new HashMap<String, Class<?>>();
@@ -64,16 +62,55 @@
mappings.put(jbossRarDD, JBossRAMetaData.class);
return mappings;
}
-
+
/**
* Create a new RARParserDeployer.
*/
public RARParserDeployer()
- {
- super(RARDeploymentMetaData.class, getCustomMappings());
+ {
+ super(RARDeploymentMetaData.class, getCustomMappings());
}
-
+ protected <U> ObjectModelFactory getObjectModelFactory(Class<U> expectedType, String fileName, U root)
+ {
+ if (ConnectorMetaData.class.equals(expectedType))
+ {
+ return new ResourceAdapterObjectModelFactory();
+ }
+ else if (JBossRAMetaData.class.equals(expectedType))
+ {
+ return new JBossRAObjectModelFactory();
+ }
+ else
+ {
+ throw new IllegalArgumentException("Cannot match arguments: expectedClass=" + expectedType + ", fileName=" + fileName);
+ }
+ }
+
+ protected RARDeploymentMetaData mergeMetaData(VFSDeploymentUnit unit, Map<Class<?>, List<Object>> metadata) throws Exception
+ {
+ RARDeploymentMetaData deployment = new RARDeploymentMetaData();
+
+ ConnectorMetaData cmd = getInstance(metadata, ConnectorMetaData.class);
+ if (cmd != null)
+ deployment.setConnectorMetaData(cmd);
+
+ JBossRAMetaData jrmd = getInstance(metadata, JBossRAMetaData.class);
+ if (jrmd != null)
+ deployment.setRaXmlMetaData(jrmd);
+
+ VFSDeploymentUnit parent = unit.getParent();
+ String name = unit.getSimpleName();
+ if (parent != null)
+ name = parent.getSimpleName() + "#" + name;
+
+ VirtualFile file = unit.getMetaDataFile(jeeSpecRarDD);
+ deployment.getConnectorMetaData().setURL(file.toURL());
+ metaDataRepository.addConnectorMetaData(name, deployment.getConnectorMetaData());
+
+ return deployment;
+ }
+
public JCAMetaDataRepository getMetaDataRepository()
{
return metaDataRepository;
@@ -83,46 +120,4 @@
{
this.metaDataRepository = metaDataRepository;
}
-
-
- protected <U> ObjectModelFactory getObjectModelFactory(Class<U> expectedType, String fileName, U root)
- {
- if(jeeSpecRarDD.equals(fileName))
- {
- return new ResourceAdapterObjectModelFactory();
- }
- else if(jbossRarDD.equals(fileName))
- {
- return new JBossRAObjectModelFactory();
- }
- else
- {
- return null;
- }
- }
-
- protected RARDeploymentMetaData mergeMetaData(VFSDeploymentUnit unit, Map<Class<?>, List<Object>> metadata) throws Exception
- {
- RARDeploymentMetaData deployment = new RARDeploymentMetaData();
-
- // Getting the List of MetaData Objects
- List<Object> cmdInstances = metadata.get(ConnectorMetaData.class);
- if(cmdInstances != null && !cmdInstances.isEmpty())
- deployment.setConnectorMetaData(ConnectorMetaData.class.cast(cmdInstances.get(0)));
-
- List<Object> jmdInstances = metadata.get(JBossRAMetaData.class);
- if(jmdInstances != null && !jmdInstances.isEmpty())
- deployment.setRaXmlMetaData(JBossRAMetaData.class.cast(jmdInstances.get(0)));
-
-
- VFSDeploymentUnit parent = unit.getParent();
- String name = unit.getSimpleName();
- if( parent != null )
- name = parent.getSimpleName() + "#" + name;
-
- VirtualFile file = unit.getMetaDataFile(jeeSpecRarDD);
- deployment.getConnectorMetaData().setURL(file.toURL());
- metaDataRepository.addConnectorMetaData(name, deployment.getConnectorMetaData());
- return deployment;
- }
}
More information about the jboss-cvs-commits
mailing list