[jboss-cvs] JBossAS SVN: r110407 - in projects/jboss-jca/trunk/codegenerator/src/main: resources and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Jan 18 19:16:37 EST 2011


Author: jeff.zhang
Date: 2011-01-18 19:16:35 -0500 (Tue, 18 Jan 2011)
New Revision: 110407

Modified:
   projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/xml/IronjacamarXmlGen.java
   projects/jboss-jca/trunk/codegenerator/src/main/resources/ironjacamar.xml.template
Log:
[JBJCA-456] add ra mcf and other properties into ironjacamar.xml

Modified: projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/xml/IronjacamarXmlGen.java
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/xml/IronjacamarXmlGen.java	2011-01-18 19:39:59 UTC (rev 110406)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/xml/IronjacamarXmlGen.java	2011-01-19 00:16:35 UTC (rev 110407)
@@ -21,6 +21,7 @@
  */
 package org.jboss.jca.codegenerator.xml;
 
+import org.jboss.jca.codegenerator.ConfigPropType;
 import org.jboss.jca.codegenerator.Definition;
 import org.jboss.jca.codegenerator.SimpleTemplate;
 import org.jboss.jca.codegenerator.Template;
@@ -30,6 +31,7 @@
 import java.io.Writer;
 import java.net.URL;
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -53,13 +55,44 @@
       URL buildFile = IronjacamarXmlGen.class.getResource("/ironjacamar.xml.template");
       String buildString = Utils.readFileIntoString(buildFile);
       
-
+      StringBuilder strRaProps = new StringBuilder();
+      List<ConfigPropType> raPropsList = def.getRaConfigProps();
+      getPropsString(strRaProps, raPropsList, 2);
+      
+      StringBuilder strMcfProps = new StringBuilder();
+      List<ConfigPropType> mcfPropsList = def.getMcfConfigProps();
+      getPropsString(strMcfProps, mcfPropsList, 6);
+      
       Map<String, String> map = new HashMap<String, String>();
+      map.put("ra.props", strRaProps.toString());
       map.put("transaction", def.getSupportTransaction());
-      map.put("mcf.class", def.getMcfClass());
+      map.put("mcf.class", def.getRaPackage() + "." + def.getMcfClass());
       map.put("jndi.name", "java:/eis/" + def.getDefaultValue());
       map.put("pool.name", def.getDefaultValue());
+      map.put("mcf.props", strMcfProps.toString());
       Template template = new SimpleTemplate(buildString);
       template.process(map, out);
    }
+
+   /**
+    * generate properties String
+    * 
+    * @param strProps
+    * @param propsList
+    * @param indent
+    */
+   private void getPropsString(StringBuilder strProps, List<ConfigPropType> propsList, int indent)
+   {
+      for (ConfigPropType raProps : propsList)
+      {
+         for (int i = 0; i < indent; i++)
+            strProps.append(" ");
+         strProps.append("<config-property name=\"");
+         strProps.append(raProps.getName());
+         strProps.append("\">");
+         strProps.append(raProps.getValue());
+         strProps.append("</config-property>");
+         strProps.append("\n");
+      }
+   }
 }

Modified: projects/jboss-jca/trunk/codegenerator/src/main/resources/ironjacamar.xml.template
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/resources/ironjacamar.xml.template	2011-01-18 19:39:59 UTC (rev 110406)
+++ projects/jboss-jca/trunk/codegenerator/src/main/resources/ironjacamar.xml.template	2011-01-19 00:16:35 UTC (rev 110407)
@@ -1,19 +1,59 @@
 <ironjacamar>
-    <transaction-support>${transaction}</transaction-support>
-    <connection-definitions>
-      <connection-definition class-name="${mcf.class}" enabled="true" jndi-name="${jndi.name}" pool-name="${pool.name}">
-        <config-property name="UserName"></config-property>
-        <config-property name="Password"></config-property>
-        <pool>
-          <min-pool-size>0</min-pool-size>
-          <max-pool-size>20</max-pool-size>
-        </pool>
-        <security>
-        </security>
-        <timeout>
-          <blocking-timeout-millis>5000</blocking-timeout-millis>
-          <idle-timeout-minutes>15</idle-timeout-minutes>
-        </timeout>
-      </connection-definition>
-    </connection-definitions>
+
+  <!--
+    Specifies bean validation group that should be used
+    <bean-validation-groups>
+      <bean-validation-group></bean-validation-group>
+    </bean-validation-groups>
+    -->
+    
+  <!--
+    Specifies the unique name of the bootstrap context that should be used
+    <bootstrap-context></bootstrap-context>
+  -->
+    
+  <!--
+    Resource adapter properties
+    <config-property name="ra_prop">ra_value</config-property>
+  -->
+${ra.props}
+  <transaction-support>${transaction}</transaction-support>
+  
+  <connection-definitions>
+    <connection-definition class-name="${mcf.class}" 
+      enabled="true" jndi-name="${jndi.name}" 
+      use-java-context="true" pool-name="${pool.name}">
+      
+      <!--
+        Managed connection faction properties
+        <config-property name="mcf_prop">mcf_value</config-property>
+      -->
+${mcf.props}
+      <pool>
+        <min-pool-size>5</min-pool-size>
+        <max-pool-size>20</max-pool-size>
+        <prefill>true</prefill>
+        <use-strict-min>false</use-strict-min>
+      </pool>
+      
+      <security>
+        <user-name></user-name>
+        <password></password>
+      </security>
+      
+      <timeout>
+        <blocking-timeout-millis>30000</blocking-timeout-millis>
+        <idle-timeout-minutes>15</idle-timeout-minutes>
+        <allocation-retry>0</allocation-retry>
+        <allocation-retry-wait-millis>5000</allocation-retry-wait-millis>
+      </timeout>
+      
+      <validation>
+        <background-validation>false</background-validation>
+        <background-validation-minutes>5</background-validation-minutes>
+        <use-fast-fail>false</use-fast-fail>
+      </validation>
+      
+    </connection-definition>
+  </connection-definitions>
 </ironjacamar>
\ No newline at end of file



More information about the jboss-cvs-commits mailing list