[jboss-cvs] JBossAS SVN: r111195 - in projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers: fungal and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Apr 18 10:20:17 EDT 2011


Author: maeste
Date: 2011-04-18 10:20:17 -0400 (Mon, 18 Apr 2011)
New Revision: 111195

Modified:
   projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/common/AbstractDsDeployer.java
   projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/fungal/DsXmlDeployer.java
Log:
removing mdr dependency for AbstractDsDeployer

Modified: projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/common/AbstractDsDeployer.java
===================================================================
--- projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/common/AbstractDsDeployer.java	2011-04-18 13:45:14 UTC (rev 111194)
+++ projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/common/AbstractDsDeployer.java	2011-04-18 14:20:17 UTC (rev 111195)
@@ -36,7 +36,6 @@
 import org.jboss.jca.common.api.metadata.ra.Connector;
 import org.jboss.jca.common.api.metadata.ra.ResourceAdapter1516;
 import org.jboss.jca.common.api.metadata.ra.XsdString;
-import org.jboss.jca.common.metadata.merge.Merger;
 import org.jboss.jca.common.metadata.ra.common.ConfigPropertyImpl;
 import org.jboss.jca.core.api.connectionmanager.ccm.CachedConnectionManager;
 import org.jboss.jca.core.api.connectionmanager.pool.PoolConfiguration;
@@ -48,7 +47,7 @@
 import org.jboss.jca.core.connectionmanager.pool.api.PoolStrategy;
 import org.jboss.jca.core.connectionmanager.pool.api.PrefillPool;
 import org.jboss.jca.core.recovery.DefaultRecoveryPlugin;
-import org.jboss.jca.core.spi.mdr.MetadataRepository;
+import org.jboss.jca.core.spi.mdr.NotFoundException;
 import org.jboss.jca.core.spi.recovery.RecoveryPlugin;
 import org.jboss.jca.core.spi.statistics.Statistics;
 import org.jboss.jca.core.spi.transaction.TransactionIntegration;
@@ -84,9 +83,6 @@
    /** The transaction integration */
    protected TransactionIntegration transactionIntegration;
 
-   /** Metadata repository */
-   protected MetadataRepository mdr;
-
    /** xaResourceRecoveryRegistry */
    protected XAResourceRecoveryRegistry xaResourceRecoveryRegistry;
 
@@ -104,7 +100,6 @@
    {
       this.log = log;
       this.transactionIntegration = null;
-      this.mdr = null;
       this.ccm = null;
    }
 
@@ -127,26 +122,8 @@
    }
 
    /**
-    * Set the metadata repository
-    * @param value The value
-    */
-   public void setMetadataRepository(MetadataRepository value)
-   {
-      mdr = value;
-   }
-
-   /**
-    * Get the metadata repository
-    * @return The handle
-    */
-   public MetadataRepository getMetadataRepository()
-   {
-      return mdr;
-   }
-   
-   /**
     * Get the managementRepository.
-    * 
+    *
     * @return the managementRepository.
     */
    public ManagementRepository getManagementRepository()
@@ -156,7 +133,7 @@
 
    /**
     * Set the managementRepository.
-    * 
+    *
     * @param managementRepository The managementRepository to set.
     */
    public void setManagementRepository(ManagementRepository managementRepository)
@@ -248,11 +225,11 @@
                      {
                         org.jboss.jca.core.api.management.DataSource mgtDataSource =
                            new org.jboss.jca.core.api.management.DataSource(false);
-                        Object cf = deployDataSource(dataSource, jndiName, 
+                        Object cf = deployDataSource(dataSource, jndiName,
                                                      uniqueJdbcLocalId, mgtDataSource, jdbcLocalDeploymentCl);
 
                         bindConnectionFactory(deploymentName, jndiName, cf);
-                        
+
                         cfs.add(cf);
                         jndis.add(jndiName);
                         mgts.add(mgtDataSource);
@@ -294,7 +271,7 @@
                                                        recovery,
                                                        mgtDataSource,
                                                        jdbcXADeploymentCl);
-                        
+
                         recoveryModules.add(recovery);
 
                         bindConnectionFactory(deploymentName, jndiName, cf);
@@ -321,7 +298,7 @@
                                      jndis.toArray(new String[jndis.size()]),
                                      null, null,
                                      recoveryModules.toArray(new XAResourceRecovery[recoveryModules.size()]),
-                                     null, 
+                                     null,
                                      mgts.toArray(new org.jboss.jca.core.api.management.DataSource[mgts.size()]),
                                      parentClassLoader, log);
       }
@@ -369,11 +346,8 @@
    {
       log.debug("DataSource=" + ds);
 
-      Merger merger = new Merger();
+      Connector md = getMergedMetaData(ds, uniqueId);
 
-      Connector md = mdr.getResourceAdapter(uniqueId);
-      md = merger.mergeConnectorAndDs(ds, md);
-
       // Get the first connection definition as there is only one
       ResourceAdapter1516 ra1516 = (ResourceAdapter1516) md.getResourceadapter();
       List<ConnectionDefinition> cds = ra1516.getOutboundResourceadapter().getConnectionDefinitions();
@@ -433,7 +407,7 @@
       FlushStrategy flushStrategy = FlushStrategy.FAILING_CONNECTION_ONLY;
       if (ds.getPool() != null)
          flushStrategy = ds.getPool().getFlushStrategy();
-      
+
       // Select the correct connection manager
       TransactionSupportLevel tsl = TransactionSupportLevel.LocalTransaction;
       ConnectionManagerFactory cmf = new ConnectionManagerFactory();
@@ -511,6 +485,29 @@
    }
 
    /**
+    * getMerged metadata for ds and give uniqueID
+    *
+    * @param ds the ds
+    * @param uniqueId the uniqueId
+    * @return merged MD
+    * @throws NotFoundException in case uniqueId is not found
+    * @throws Exception in case of other errors
+    */
+   protected abstract Connector getMergedMetaData(DataSource ds, String uniqueId) throws NotFoundException, Exception;
+
+   /**
+    * getMerged metadata for xa-ds and give uniqueID
+    *
+    * @param ds the xa-ds
+    * @param uniqueId the uniqueId
+    * @return merged MD
+    * @throws NotFoundException in case uniqueId is not found
+    * @throws Exception in case of other errors
+    */
+   protected abstract Connector getMergedMetaData(XaDataSource ds, String uniqueId) throws NotFoundException,
+      Exception;
+
+   /**
     * Deploy an XA datasource
     * @param ds The datasource
     * @param jndiName The JNDI name
@@ -522,17 +519,14 @@
     * @exception Throwable Thrown if an error occurs during deployment
     */
    private Object deployXADataSource(XaDataSource ds, String jndiName, String uniqueId,
-                                     XAResourceRecovery recovery, 
+                                     XAResourceRecovery recovery,
                                      org.jboss.jca.core.api.management.DataSource mgtDs, ClassLoader cl)
       throws Throwable
    {
       log.debug("XaDataSource=" + ds);
 
-      Merger merger = new Merger();
+      Connector md = getMergedMetaData(ds, uniqueId);
 
-      Connector md = mdr.getResourceAdapter(uniqueId);
-      md = merger.mergeConnectorAndDs(ds, md);
-
       // Get the first connection definition as there is only one
       ResourceAdapter1516 ra1516 = (ResourceAdapter1516) md.getResourceadapter();
       List<ConnectionDefinition> cds = ra1516.getOutboundResourceadapter().getConnectionDefinitions();
@@ -610,7 +604,7 @@
       FlushStrategy flushStrategy = FlushStrategy.FAILING_CONNECTION_ONLY;
       if (ds.getXaPool() != null)
          flushStrategy = ds.getXaPool().getFlushStrategy();
-      
+
       // Select the correct connection manager
       TransactionSupportLevel tsl = TransactionSupportLevel.XATransaction;
       ConnectionManagerFactory cmf = new ConnectionManagerFactory();
@@ -745,7 +739,7 @@
             plugin = new DefaultRecoveryPlugin();
          }
 
-         recoveryImpl = 
+         recoveryImpl =
             getTransactionIntegration().createXAResourceRecovery(mcf,
                                                                  padXid,
                                                                  isSameRMOverride,

Modified: projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/fungal/DsXmlDeployer.java
===================================================================
--- projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/fungal/DsXmlDeployer.java	2011-04-18 13:45:14 UTC (rev 111194)
+++ projects/jboss-jca/trunk/deployers/src/main/java/org/jboss/jca/deployers/fungal/DsXmlDeployer.java	2011-04-18 14:20:17 UTC (rev 111195)
@@ -22,10 +22,16 @@
 
 package org.jboss.jca.deployers.fungal;
 
+import org.jboss.jca.common.api.metadata.ds.DataSource;
 import org.jboss.jca.common.api.metadata.ds.DataSources;
+import org.jboss.jca.common.api.metadata.ds.XaDataSource;
 import org.jboss.jca.common.api.metadata.ra.ConfigProperty;
+import org.jboss.jca.common.api.metadata.ra.Connector;
 import org.jboss.jca.common.metadata.ds.DsParser;
+import org.jboss.jca.common.metadata.merge.Merger;
 import org.jboss.jca.core.naming.ExplicitJndiStrategy;
+import org.jboss.jca.core.spi.mdr.MetadataRepository;
+import org.jboss.jca.core.spi.mdr.NotFoundException;
 import org.jboss.jca.core.spi.naming.JndiStrategy;
 import org.jboss.jca.deployers.common.AbstractDsDeployer;
 import org.jboss.jca.deployers.common.CommonDeployment;
@@ -70,6 +76,9 @@
    /** The kernel */
    private Kernel kernel;
 
+   /** Metadata repository */
+   protected MetadataRepository mdr;
+
    /**
     * Constructor
     */
@@ -368,24 +377,24 @@
             if (mgtDs.getPoolConfiguration() != null)
             {
                String dsPCName = baseName + ",type=PoolConfigutation";
-                  
+
                DynamicMBean dsPCDMB = JMX.createMBean(mgtDs.getPoolConfiguration(), "Pool configuration");
                ObjectName dsPCON = new ObjectName(dsPCName);
-               
+
                server.registerMBean(dsPCDMB, dsPCON);
-               
+
                ons.add(dsPCON);
             }
 
             if (mgtDs.getPool() != null)
             {
                String dsPName = baseName + ",type=Pool";
-                  
+
                DynamicMBean dsPDMB = JMX.createMBean(mgtDs.getPool(), "Pool");
                ObjectName dsPON = new ObjectName(dsPName);
 
                server.registerMBean(dsPDMB, dsPON);
-               
+
                ons.add(dsPON);
 
                if (mgtDs.getPool().getStatistics() != null)
@@ -404,7 +413,7 @@
                   ObjectName dsPSON = new ObjectName(dsPSName);
 
                   server.registerMBean(dsPSDMB, dsPSON);
-               
+
                   ons.add(dsPSON);
                }
             }
@@ -424,7 +433,7 @@
                ObjectName dsSON = new ObjectName(dsSName);
 
                server.registerMBean(dsSDMB, dsSON);
-               
+
                ons.add(dsSON);
             }
          }
@@ -432,4 +441,43 @@
 
       return ons;
    }
+
+   @Override
+   protected Connector getMergedMetaData(DataSource ds, String uniqueId) throws NotFoundException, Exception
+   {
+      Merger merger = new Merger();
+
+      Connector md = mdr.getResourceAdapter(uniqueId);
+      md = merger.mergeConnectorAndDs(ds, md);
+      return md;
+   }
+
+   @Override
+   protected  Connector getMergedMetaData(XaDataSource ds, String uniqueId) throws NotFoundException,
+   Exception {
+      Merger merger = new Merger();
+
+      Connector md = mdr.getResourceAdapter(uniqueId);
+      md = merger.mergeConnectorAndDs(ds, md);
+      return md;
+   }
+
+   /**
+    * Set the metadata repository
+    * @param value The value
+    */
+   public void setMetadataRepository(MetadataRepository value)
+   {
+      mdr = value;
+   }
+
+   /**
+    * Get the metadata repository
+    * @return The handle
+    */
+   public MetadataRepository getMetadataRepository()
+   {
+      return mdr;
+   }
+
 }



More information about the jboss-cvs-commits mailing list