[jboss-cvs] JBossAS SVN: r112391 - projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Oct 31 04:11:29 EDT 2011


Author: jeff.zhang
Date: 2011-10-31 04:11:28 -0400 (Mon, 31 Oct 2011)
New Revision: 112391

Modified:
   projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/CommonXa.java
   projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/ConnectionFactory.java
   projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/DataSource.java
   projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/LegacyCfParser.java
   projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/LegacyConnectionFactoryImp.java
   projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/LegacyDsParser.java
   projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/LocalTxDataSource.java
   projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/NoTxConnectionFactory.java
   projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/NoTxDataSource.java
   projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/TxConnectionFactory.java
   projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/XaDataSource.java
Log:
[JBJCA-679] handle tags: security, jndiname, track-connection-by-tx, and set some default values

Modified: projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/CommonXa.java
===================================================================
--- projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/CommonXa.java	2011-10-31 06:59:48 UTC (rev 112390)
+++ projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/CommonXa.java	2011-10-31 08:11:28 UTC (rev 112391)
@@ -68,7 +68,7 @@
       /**
       * xaDatasourceProperty tag
       */
-      TRACK_CONNECTION_BY_TX("track_connection-by_tx"),
+      TRACK_CONNECTION_BY_TX("track_connection-by-tx"),
       /**
       * xaDatasourceClass tag
       */

Modified: projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/ConnectionFactory.java
===================================================================
--- projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/ConnectionFactory.java	2011-10-31 06:59:48 UTC (rev 112390)
+++ projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/ConnectionFactory.java	2011-10-31 08:11:28 UTC (rev 112391)
@@ -136,6 +136,10 @@
        */
       SECURITY_DOMAIN("security-domain"),
       /**
+       * security-domain-and-application tag
+       */
+      SECURITY_DOMAIN_AND_APPLICATION("security-domain-and-application"),
+      /**
        * min-pool-size tag
        */
       MIN_POOL_SIZE("min-pool-size"),

Modified: projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/DataSource.java
===================================================================
--- projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/DataSource.java	2011-10-31 06:59:48 UTC (rev 112390)
+++ projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/DataSource.java	2011-10-31 08:11:28 UTC (rev 112391)
@@ -193,6 +193,10 @@
        */
       SECURITY_DOMAIN("security-domain"),
       /**
+       * security-domain-and-application tag
+       */
+      SECURITY_DOMAIN_AND_APPLICATION("security-domain-and-application"),
+      /**
        * min-pool-size tag
        */
       MIN_POOL_SIZE("min-pool-size"),

Modified: projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/LegacyCfParser.java
===================================================================
--- projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/LegacyCfParser.java	2011-10-31 06:59:48 UTC (rev 112390)
+++ projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/LegacyCfParser.java	2011-10-31 08:11:28 UTC (rev 112391)
@@ -94,7 +94,7 @@
                continue;
          }
       }
-      log.info("Skip parse " + reader.getLocalName());
+      log.info("Skipping: " + reader.getLocalName());
       //System.out.println("Skip parse " + reader.getLocalName());
    }
    
@@ -219,6 +219,9 @@
       Boolean backgroundValidation = Defaults.BACKGROUND_VALIDATION;
       Long backgroundValidationMillis = null;
       Boolean useFastFail = Defaults.USE_FAST_FAIL;
+      String securityDomainManaged = "";
+      String securityDomainAndApplicationManaged = "";
+      boolean applicationManaged = true;
       
       //elements reading
       while (reader.hasNext())
@@ -233,8 +236,10 @@
                         connectionDefinition, configProperty, TransactionSupportEnum.NoTransaction);
                   cfImpl.buildTimeOut(blockingTimeoutMillis, idleTimeoutMinutes, allocationRetry,
                         allocationRetryWaitMillis, null);
+                  cfImpl.buildSecurity(securityDomainManaged, securityDomainAndApplicationManaged, applicationManaged);
                   cfImpl.buildValidation(backgroundValidation, backgroundValidationMillis, useFastFail);
-                  cfImpl.buildCommonPool(minPoolSize, maxPoolSize, prefill, Defaults.NO_TX_SEPARATE_POOL);
+                  cfImpl.buildCommonPool(minPoolSize, maxPoolSize, prefill, Defaults.NO_TX_SEPARATE_POOL, 
+                        Defaults.INTERLEAVING);
                   cfImpl.buildResourceAdapterImpl();
                   return cfImpl;
                }
@@ -250,6 +255,16 @@
             case START_ELEMENT : {
                switch (NoTxConnectionFactory.Tag.forName(reader.getLocalName()))
                {
+                  case SECURITY_DOMAIN : {
+                     securityDomainManaged = elementAsString(reader);
+                     applicationManaged = false;
+                     break;
+                  }
+                  case SECURITY_DOMAIN_AND_APPLICATION : {
+                     securityDomainAndApplicationManaged = elementAsString(reader);
+                     applicationManaged = false;
+                     break;
+                  }
                   case CONFIG_PROPERTY : {
                      configProperty.put(attributeAsString(reader, "name"), elementAsString(reader));
                      break;
@@ -265,7 +280,10 @@
                   }
                   case JNDI_NAME : {
                      poolName = elementAsString(reader);
-                     jndiName = "java:jboss/datasources/" + poolName;
+                     if (poolName.startsWith("java:"))
+                        poolName = poolName.substring(5);
+
+                     jndiName = "java:jboss/" + poolName;
                      break;
                   }
                   case MAX_POOL_SIZE : {
@@ -349,6 +367,11 @@
       
       TransactionSupportEnum transactionSupport = TransactionSupportEnum.LocalTransaction;
       Boolean noTxSeparatePool = Defaults.NO_TX_SEPARATE_POOL;
+      Boolean interleaving = Defaults.INTERLEAVING;
+
+      String securityDomainManaged = "";
+      String securityDomainAndApplicationManaged = "";
+      boolean applicationManaged = true;
       
       //elements reading
       while (reader.hasNext())
@@ -363,8 +386,9 @@
                         connectionDefinition, configProperty, transactionSupport);
                   cfImpl.buildTimeOut(blockingTimeoutMillis, idleTimeoutMinutes, allocationRetry,
                         allocationRetryWaitMillis, xaResourceTimeout);
+                  cfImpl.buildSecurity(securityDomainManaged, securityDomainAndApplicationManaged, applicationManaged);
                   cfImpl.buildValidation(backgroundValidation, backgroundValidationMillis, useFastFail);
-                  cfImpl.buildCommonPool(minPoolSize, maxPoolSize, prefill, noTxSeparatePool);
+                  cfImpl.buildCommonPool(minPoolSize, maxPoolSize, prefill, noTxSeparatePool, interleaving);
                   cfImpl.buildResourceAdapterImpl();
                   return cfImpl;
                }
@@ -380,6 +404,16 @@
             case START_ELEMENT : {
                switch (TxConnectionFactory.Tag.forName(reader.getLocalName()))
                {
+                  case SECURITY_DOMAIN : {
+                     securityDomainManaged = elementAsString(reader);
+                     applicationManaged = false;
+                     break;
+                  }
+                  case SECURITY_DOMAIN_AND_APPLICATION : {
+                     securityDomainAndApplicationManaged = elementAsString(reader);
+                     applicationManaged = false;
+                     break;
+                  }
                   case CONFIG_PROPERTY : {
                      configProperty.put(attributeAsString(reader, "name"), elementAsString(reader));
                      break;
@@ -395,7 +429,10 @@
                   }
                   case JNDI_NAME : {
                      poolName = elementAsString(reader);
-                     jndiName = "java:jboss/datasources/" + poolName;
+                     if (poolName.startsWith("java:"))
+                        poolName = poolName.substring(5);
+
+                     jndiName = "java:jboss/" + poolName;
                      break;
                   }
                   case MAX_POOL_SIZE : {
@@ -454,6 +491,10 @@
                      xaResourceTimeout = elementAsInteger(reader);
                      break;
                   }
+                  case TRACK_CONNECTION_BY_TX : {
+                     interleaving = false;
+                     break;
+                  }
                   default :
                      skipParse(reader);
 

Modified: projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/LegacyConnectionFactoryImp.java
===================================================================
--- projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/LegacyConnectionFactoryImp.java	2011-10-31 06:59:48 UTC (rev 112390)
+++ projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/LegacyConnectionFactoryImp.java	2011-10-31 08:11:28 UTC (rev 112391)
@@ -27,6 +27,7 @@
 import org.jboss.jca.common.api.metadata.common.TransactionSupportEnum;
 import org.jboss.jca.common.metadata.common.CommonConnDefImpl;
 import org.jboss.jca.common.metadata.common.CommonPoolImpl;
+import org.jboss.jca.common.metadata.common.CommonSecurityImpl;
 import org.jboss.jca.common.metadata.common.CommonTimeOutImpl;
 import org.jboss.jca.common.metadata.common.CommonValidationImpl;
 import org.jboss.jca.common.metadata.resourceadapter.ResourceAdapterImpl;
@@ -55,7 +56,9 @@
 
 
    private CommonTimeOutImpl timeOut;
-
+   
+   private CommonSecurityImpl security;
+   
    private CommonValidationImpl validation;
 
    private CommonPool pool;
@@ -67,7 +70,7 @@
    private Map<String, String> configProperty;
    
    private Boolean noTxSeparatePool;
-   
+   private Boolean interleaving;
 
    /**
     * create a LegacyConnectionFactoryImp
@@ -105,7 +108,7 @@
    public void buildResourceAdapterImpl()  throws Exception
    {
       CommonConnDefImpl connDef = new CommonConnDefImpl(configProperty, connectionDefinition, jndiName, poolName, 
-            Defaults.ENABLED, Defaults.USE_JAVA_CONTEXT, Defaults.USE_CCM, pool, timeOut, validation, null, null);
+            Defaults.ENABLED, Defaults.USE_JAVA_CONTEXT, Defaults.USE_CCM, pool, timeOut, validation, security, null);
       connectionDefinitions = new ArrayList<CommonConnDef>();
       connectionDefinitions.add(connDef);
       raImpl = new ResourceAdapterImpl(rarName, transactionSupport, connectionDefinitions, null,
@@ -161,17 +164,35 @@
     * @param maxPoolSize maxPoolSize
     * @param prefill prefill
     * @param noTxSeparatePool noTxSeparatePool
+    * @param interleaving interleaving
     * @return this
     * @throws Exception exception
     */
    public LegacyConnectionFactoryImp buildCommonPool(Integer minPoolSize, Integer maxPoolSize, 
-         Boolean prefill, Boolean noTxSeparatePool) throws Exception
+         Boolean prefill, Boolean noTxSeparatePool, Boolean interleaving) throws Exception
    {
       pool = new CommonPoolImpl(minPoolSize, maxPoolSize, prefill, Defaults.USE_STRICT_MIN, Defaults.FLUSH_STRATEGY);
       this.noTxSeparatePool = noTxSeparatePool;
+      this.interleaving = interleaving;
       return this;
    }
    
+   /** 
+    * build security part
+    * 
+    * @param securityDomainManaged securityDomainManaged
+    * @param securityDomainAndApplicationManaged securityDomainAndApplicationManaged
+    * @param applicationManaged applicationManagedS
+    * @return this
+    * @throws Exception exception
+    */
+   public LegacyConnectionFactoryImp buildSecurity(String securityDomainManaged,
+         String securityDomainAndApplicationManaged, boolean applicationManaged) throws Exception
+   {
+      security = new CommonSecurityImpl(securityDomainManaged, securityDomainAndApplicationManaged, applicationManaged);
+      return this;
+   }
+   
    /**
     * build other properties
     * 

Modified: projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/LegacyDsParser.java
===================================================================
--- projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/LegacyDsParser.java	2011-10-31 06:59:48 UTC (rev 112390)
+++ projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/LegacyDsParser.java	2011-10-31 08:11:28 UTC (rev 112391)
@@ -97,7 +97,7 @@
                continue;
          }
       }
-      log.info("Skip parse " + reader.getLocalName());
+      log.info("Skipping: " + reader.getLocalName());
       //System.out.println("Skip parse " + reader.getLocalName());
    }
    
@@ -303,6 +303,11 @@
             case START_ELEMENT : {
                switch (XaDataSource.Tag.forName(reader.getLocalName()))
                {
+                  case SECURITY_DOMAIN :
+                  case SECURITY_DOMAIN_AND_APPLICATION : {
+                     securityDomain = elementAsString(reader);
+                     break;
+                  }
                   case XA_DATASOURCE_PROPERTY : {
                      xaDataSourceProperty.put(attributeAsString(reader, "name"), elementAsString(reader));
                      break;
@@ -348,6 +353,10 @@
                      wrapXaDataSource = elementAsBoolean(reader);
                      break;
                   }
+                  case TRACK_CONNECTION_BY_TX : {
+                     interleaving = false;
+                     break;
+                  }
                   
                   case VALID_CONNECTION_CHECKER : {
                      String classname = elementAsString(reader);
@@ -367,6 +376,9 @@
 
                   case JNDI_NAME : {
                      poolName = elementAsString(reader);
+                     if (poolName.startsWith("java:"))
+                        poolName = poolName.substring(5);
+
                      jndiName = "java:jboss/datasources/" + poolName;
                      break;
                   }
@@ -578,6 +590,11 @@
                      staleConnectionChecker = new Extension(classname, null);
                      break;
                   }
+                  case SECURITY_DOMAIN :
+                  case SECURITY_DOMAIN_AND_APPLICATION : {
+                     securityDomain = elementAsString(reader);
+                     break;
+                  }
                   
                   case CONNECTION_PROPERTY : {
                      connectionProperties.put(attributeAsString(reader, "name"), elementAsString(reader));
@@ -609,6 +626,9 @@
                   }
                   case JNDI_NAME : {
                      poolName = elementAsString(reader);
+                     if (poolName.startsWith("java:"))
+                        poolName = poolName.substring(5);
+
                      jndiName = "java:jboss/datasources/" + poolName;
                      break;
                   }

Modified: projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/LocalTxDataSource.java
===================================================================
--- projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/LocalTxDataSource.java	2011-10-31 06:59:48 UTC (rev 112390)
+++ projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/LocalTxDataSource.java	2011-10-31 08:11:28 UTC (rev 112391)
@@ -109,6 +109,10 @@
        */
       SECURITY_DOMAIN("security-domain"),
       /**
+       * security-domain-and-application tag
+       */
+      SECURITY_DOMAIN_AND_APPLICATION("security-domain-and-application"),
+      /**
        * min-pool-size tag
        */
       MIN_POOL_SIZE("min-pool-size"),

Modified: projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/NoTxConnectionFactory.java
===================================================================
--- projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/NoTxConnectionFactory.java	2011-10-31 06:59:48 UTC (rev 112390)
+++ projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/NoTxConnectionFactory.java	2011-10-31 08:11:28 UTC (rev 112391)
@@ -89,6 +89,10 @@
        */
       SECURITY_DOMAIN("security-domain"),
       /**
+       * security-domain-and-application tag
+       */
+      SECURITY_DOMAIN_AND_APPLICATION("security-domain-and-application"),
+      /**
        * min-pool-size tag
        */
       MIN_POOL_SIZE("min-pool-size"),

Modified: projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/NoTxDataSource.java
===================================================================
--- projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/NoTxDataSource.java	2011-10-31 06:59:48 UTC (rev 112390)
+++ projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/NoTxDataSource.java	2011-10-31 08:11:28 UTC (rev 112391)
@@ -107,6 +107,10 @@
        */
       SECURITY_DOMAIN("security-domain"),
       /**
+       * security-domain-and-application tag
+       */
+      SECURITY_DOMAIN_AND_APPLICATION("security-domain-and-application"),
+      /**
        * min-pool-size tag
        */
       MIN_POOL_SIZE("min-pool-size"),

Modified: projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/TxConnectionFactory.java
===================================================================
--- projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/TxConnectionFactory.java	2011-10-31 06:59:48 UTC (rev 112390)
+++ projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/TxConnectionFactory.java	2011-10-31 08:11:28 UTC (rev 112391)
@@ -58,7 +58,7 @@
       /**
        * xaDatasourceProperty tag
        */
-      TRACK_CONNECTION_BY_TX("track_connection-by_tx"),
+      TRACK_CONNECTION_BY_TX("track_connection-by-tx"),
       /**
       * xaDatasourceClass tag
       */
@@ -98,6 +98,10 @@
        */
       SECURITY_DOMAIN("security-domain"),
       /**
+       * security-domain-and-application tag
+       */
+      SECURITY_DOMAIN_AND_APPLICATION("security-domain-and-application"),
+      /**
        * min-pool-size tag
        */
       MIN_POOL_SIZE("min-pool-size"),

Modified: projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/XaDataSource.java
===================================================================
--- projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/XaDataSource.java	2011-10-31 06:59:48 UTC (rev 112390)
+++ projects/jboss-jca/trunk/as/src/main/java/org/jboss/jca/as/converters/XaDataSource.java	2011-10-31 08:11:28 UTC (rev 112391)
@@ -119,7 +119,7 @@
       /**
        * xaDatasourceProperty tag
        */
-      TRACK_CONNECTION_BY_TX("track_connection-by_tx"),
+      TRACK_CONNECTION_BY_TX("track_connection-by-tx"),
       /**
       * xaDatasourceClass tag
       */
@@ -158,6 +158,10 @@
        */
       SECURITY_DOMAIN("security-domain"),
       /**
+       * security-domain-and-application tag
+       */
+      SECURITY_DOMAIN_AND_APPLICATION("security-domain-and-application"),
+      /**
        * min-pool-size tag
        */
       MIN_POOL_SIZE("min-pool-size"),



More information about the jboss-cvs-commits mailing list