[jboss-cvs] JBossAS SVN: r111445 - in projects/jboss-jca/trunk/codegenerator/src/main: java/org/jboss/jca/codegenerator/code and 2 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed May 25 07:31:26 EDT 2011
Author: jeff.zhang
Date: 2011-05-25 07:31:26 -0400 (Wed, 25 May 2011)
New Revision: 111445
Added:
projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/McfDef.java
Modified:
projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/BaseProfile.java
projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/Definition.java
projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/Main.java
projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/AbstractCodeGen.java
projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/CciConnCodeGen.java
projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/CciConnFactoryCodeGen.java
projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/CfCodeGen.java
projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/CfInterfaceCodeGen.java
projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/ConnImplCodeGen.java
projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/ConnInterfaceCodeGen.java
projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/ConnMetaCodeGen.java
projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/ConnSpecCodeGen.java
projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/MbeanImplCodeGen.java
projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/MbeanInterfaceCodeGen.java
projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/McCodeGen.java
projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/McMetaCodeGen.java
projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/McfCodeGen.java
projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/TestCodeGen.java
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/Ra10XmlGen.java
projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/xml/RaXmlGen.java
projects/jboss-jca/trunk/codegenerator/src/main/resources/codegenerator.properties
Log:
[JBJCA-584] Support for multiple mcfs when JCA >= 1.5
Modified: projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/BaseProfile.java
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/BaseProfile.java 2011-05-24 23:27:14 UTC (rev 111444)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/BaseProfile.java 2011-05-25 11:31:26 UTC (rev 111445)
@@ -83,7 +83,7 @@
if (def.isSupportOutbound())
generateIronjacamarXml(def, def.getOutputDir());
- if (def.isGenMbean() && !def.isUseCciConnection())
+ if (def.isGenMbean() && !def.getMcfDefs().get(0).isUseCciConnection())
{
generateMBeanCode(def);
generateMbeanXml(def, def.getOutputDir());
@@ -100,6 +100,7 @@
if (def.isUseRa())
{
generateClassCode(def, "Ra");
+ generateClassCode(def, "RaMeta");
}
if (def.isGenAdminObject())
{
@@ -120,25 +121,30 @@
{
if (def.isSupportOutbound())
{
- generateClassCode(def, "Mcf");
- generateClassCode(def, "Mc");
- generateClassCode(def, "McMeta");
-
- if (!def.isUseCciConnection())
+ if (def.getMcfDefs() == null)
+ throw new IllegalStateException("Should define at least one mcf class");
+
+ for (int num = 0; num < def.getMcfDefs().size(); num++)
{
- generateClassCode(def, "CfInterface");
- generateClassCode(def, "Cf");
- generateClassCode(def, "ConnInterface");
- generateClassCode(def, "ConnImpl");
+ generateMultiMcfClassCode(def, "Mcf", num);
+ generateMultiMcfClassCode(def, "Mc", num);
+ generateMultiMcfClassCode(def, "McMeta", num);
+
+ if (!def.getMcfDefs().get(num).isUseCciConnection())
+ {
+ generateMultiMcfClassCode(def, "CfInterface", num);
+ generateMultiMcfClassCode(def, "Cf", num);
+ generateMultiMcfClassCode(def, "ConnInterface", num);
+ generateMultiMcfClassCode(def, "ConnImpl", num);
+ }
+ else
+ {
+ generateMultiMcfClassCode(def, "CciConn", num);
+ generateMultiMcfClassCode(def, "CciConnFactory", num);
+ generateMultiMcfClassCode(def, "ConnMeta", num);
+ generateMultiMcfClassCode(def, "ConnSpec", num);
+ }
}
- else
- {
- generateClassCode(def, "CciConn");
- generateClassCode(def, "CciConnFactory");
- generateClassCode(def, "ConnMeta");
- generateClassCode(def, "RaMeta");
- generateClassCode(def, "ConnSpec");
- }
}
}
@@ -224,6 +230,50 @@
}
/**
+ * generate multi mcf class code
+ * @param def Definition
+ * @param className class name
+ * @param num number of order
+ */
+ void generateMultiMcfClassCode(Definition def, String className, int num)
+ {
+ if (className == null || className.equals(""))
+ return;
+ if (num < 0 || num + 1 > def.getMcfDefs().size())
+ return;
+ try
+ {
+
+ String clazzName = this.getClass().getPackage().getName() + ".code." + className + "CodeGen";
+
+ String javaFile = (String)McfDef.class.getMethod(
+ "get" + className + "Class").invoke(def.getMcfDefs().get(num), (Object[])null) + ".java";
+ FileWriter fw = null;
+ if (def.getMcfDefs().size() == 1)
+ fw = Utils.createSrcFile(javaFile, def.getRaPackage(), def.getOutputDir());
+ else
+ fw = Utils.createSrcFile(javaFile, def.getRaPackage() + ".mcf" + num, def.getOutputDir());
+
+ Class<?> clazz = Class.forName(clazzName, true, Thread.currentThread().getContextClassLoader());
+ AbstractCodeGen codeGen = (AbstractCodeGen)clazz.newInstance();
+ codeGen.setNumOfMcf(num);
+
+ codeGen.generate(def, fw);
+
+ fw.flush();
+ fw.close();
+ }
+ catch (IOException ioe)
+ {
+ ioe.printStackTrace();
+ }
+ catch (Exception e)
+ {
+ e.printStackTrace();
+ }
+ }
+
+ /**
* generate multi admin object class code
* @param def Definition
* @param className class name
Modified: projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/Definition.java
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/Definition.java 2011-05-24 23:27:14 UTC (rev 111444)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/Definition.java 2011-05-25 11:31:26 UTC (rev 111445)
@@ -64,12 +64,8 @@
@XmlElement(name = "RaConfigProp")
private List<ConfigPropType> raConfigProps;
- /** managed connection factory class name */
- @XmlElement(name = "ManagedConnectionFactory")
- private String mcfClass;
- /** resource adapter configuration properties */
- @XmlElement(name = "McfConfigProp")
- private List<ConfigPropType> mcfConfigProps;
+ /** mcf list */
+ private List<McfDef> mcfDefs;
/** support transaction */
@XmlElement(name = "Transaction")
@@ -84,42 +80,6 @@
@XmlElement(name = "AuthenMechanism")
private List<AuthenMechanismType> authenMechanisms;
- /** managed connection class name */
- @XmlElement(name = "ManagedConnection")
- private String mcClass;
- /** connection interface name */
- @XmlElement(name = "ConnectionInterface")
- private String connInterfaceClass;
- /** connection impl class name */
- @XmlElement(name = "ConnectionImpl")
- private String connImplClass;
- /** connection factory interface name */
- @XmlElement(name = "ConnectionFactoryInterface")
- private String cfInterfaceClass;
- /** connection factory class name */
- @XmlElement(name = "ConnectionFactoryImpl")
- private String cfClass;
-
- /** ResourceAdapterAssociation optional */
- @XmlElement(name = "ImplRaAssociation")
- private boolean implRaAssociation;
- /** ResourceAdapterAssociation optional */
- @XmlElement(name = "UseCciConnection")
- private boolean useCciConnection;
-
- /** cci connection factory class name */
- private String cciConnFactoryClass;
- /** cci connection class name */
- private String cciConnClass;
- /** managed connection metadata class name */
- private String mcMetaClass;
- /** connection manage class name */
- private String cmClass;
-
- /** connection metadata class name */
- private String connMetaClass;
- /** connection spec class name */
- private String connSpecClass;
/** resource adapter metadata class name */
private String raMetaClass;
@@ -141,13 +101,6 @@
/** Activation class name */
@XmlElement(name = "Activation")
private String activationClass;
-
- /** support self defined method in connection class */
- @XmlElement(name = "DefineMethod")
- private boolean defineMethodInConnection;
- /** define methods */
- @XmlElement(name = "Method")
- private List<MethodForConnection> methods;
/** build */
@XmlElement(name = "build")
@@ -278,342 +231,26 @@
}
/**
- * Set the mcfClass.
+ * Set the mcfDefs.
*
- * @param mcfClass The mcfClass to set.
+ * @param mcfDefs The mcfDefs to set.
*/
- public void setMcfClass(String mcfClass)
+ public void setMcfDefs(List<McfDef> mcfDefs)
{
- this.mcfClass = mcfClass;
+ this.mcfDefs = mcfDefs;
}
/**
- * Get the mcfClass.
+ * Get the mcfDefs.
*
- * @return the mcfClass.
+ * @return the mcfDefs.
*/
- public String getMcfClass()
+ public List<McfDef> getMcfDefs()
{
- if (mcfClass == null || mcfClass.equals(""))
- {
- mcfClass = getDefaultValue() + "ManagedConnectionFactory";
- }
- return mcfClass;
+ return mcfDefs;
}
-
- /**
- * Set the mcClass.
- *
- * @param mcClass The mcClass to set.
- */
- public void setMcClass(String mcClass)
- {
- this.mcClass = mcClass;
- }
-
- /**
- * Get the mcClass.
- *
- * @return the mcClass.
- */
- public String getMcClass()
- {
- if (mcClass == null || mcClass.equals(""))
- {
- mcClass = getDefaultValue() + "ManagedConnection";
- }
- return mcClass;
- }
-
- /**
- * Set the connInterfaceClass.
- *
- * @param connInterfaceClass The connInterfaceClass to set.
- */
- public void setConnInterfaceClass(String connInterfaceClass)
- {
- this.connInterfaceClass = connInterfaceClass;
- }
-
- /**
- * Get the connInterfaceClass.
- *
- * @return the connInterfaceClass.
- */
- public String getConnInterfaceClass()
- {
- if (connInterfaceClass == null || connInterfaceClass.equals(""))
- {
- connInterfaceClass = getDefaultValue() + "Connection";
- }
- return connInterfaceClass;
- }
-
- /**
- * Set the connImplClass.
- *
- * @param connImplClass The connImplClass to set.
- */
- public void setConnImplClass(String connImplClass)
- {
- this.connImplClass = connImplClass;
- }
-
- /**
- * Get the connImplClass.
- *
- * @return the connImplClass.
- */
- public String getConnImplClass()
- {
- if (connImplClass == null || connImplClass.equals(""))
- {
- connImplClass = getDefaultValue() + "ConnectionImpl";
- }
- return connImplClass;
- }
-
- /**
- * Set the mcfConfigProps.
- *
- * @param mcfConfigProps The mcfConfigProps to set.
- */
- public void setMcfConfigProps(List<ConfigPropType> mcfConfigProps)
- {
- this.mcfConfigProps = mcfConfigProps;
- }
-
- /**
- * Get the mcfConfigProps.
- *
- * @return the mcfConfigProps.
- */
- public List<ConfigPropType> getMcfConfigProps()
- {
- return mcfConfigProps;
- }
-
- /**
- * Set the implRaAssociation.
- *
- * @param implRaAssociation The implRaAssociation to set.
- */
- public void setImplRaAssociation(boolean implRaAssociation)
- {
- this.implRaAssociation = implRaAssociation;
- }
-
- /**
- * Get the implRaAssociation.
- *
- * @return the implRaAssociation.
- */
- public boolean isImplRaAssociation()
- {
- return implRaAssociation;
- }
-
- /**
- * Set the useCciConnection.
- *
- * @param useCciConnection The useCciConnection to set.
- */
- public void setUseCciConnection(boolean useCciConnection)
- {
- this.useCciConnection = useCciConnection;
- }
-
- /**
- * Get the useCciConnection.
- *
- * @return the useCciConnection.
- */
- public boolean isUseCciConnection()
- {
- return useCciConnection;
- }
/**
- * Set the cciConnFactoryClass.
- *
- * @param cciConnFactoryClass The cciConnFactoryClass to set.
- */
- public void setCciConnFactoryClass(String cciConnFactoryClass)
- {
- this.cciConnFactoryClass = cciConnFactoryClass;
- }
-
- /**
- * Get the cciConnFactoryClass.
- *
- * @return the cciConnFactoryClass.
- */
- public String getCciConnFactoryClass()
- {
- if (cciConnFactoryClass == null || cciConnFactoryClass.equals(""))
- cciConnFactoryClass = getDefaultValue() + "CciConnectionFactory";
- return cciConnFactoryClass;
- }
-
- /**
- * Set the cciConnClass.
- *
- * @param cciConnClass The cciConnClass to set.
- */
- public void setCciConnClass(String cciConnClass)
- {
- this.cciConnClass = cciConnClass;
- }
-
- /**
- * Get the cciConnClass.
- *
- * @return the cciConnClass.
- */
- public String getCciConnClass()
- {
- if (cciConnClass == null || cciConnClass.equals(""))
- cciConnClass = getDefaultValue() + "CciConnection";
- return cciConnClass;
- }
-
- /**
- * Set the mcMetaClass.
- *
- * @param mcMetaClass The mcMetaClass to set.
- */
- public void setMcMetaClass(String mcMetaClass)
- {
- this.mcMetaClass = mcMetaClass;
- }
-
- /**
- * Get the mcMetaClass.
- *
- * @return the mcMetaClass.
- */
- public String getMcMetaClass()
- {
- if (mcMetaClass == null || mcMetaClass.equals(""))
- mcMetaClass = getDefaultValue() + "ManagedConnectionMetaData";
- return mcMetaClass;
- }
-
- /**
- * Set the cmClass.
- *
- * @param cmClass The cmClass to set.
- */
- public void setCmClass(String cmClass)
- {
- this.cmClass = cmClass;
- }
-
- /**
- * Get the cmClass.
- *
- * @return the cmClass.
- */
- public String getCmClass()
- {
- if (cmClass == null || cmClass.equals(""))
- cmClass = getDefaultValue() + "ConnectionManager";
- return cmClass;
- }
-
- /**
- * Set the cfClass.
- *
- * @param cfClass The cfClass to set.
- */
- public void setCfClass(String cfClass)
- {
- this.cfClass = cfClass;
- }
-
- /**
- * Get the cfClass.
- *
- * @return the cfClass.
- */
- public String getCfClass()
- {
- if (cfClass == null || cfClass.equals(""))
- {
- cfClass = getDefaultValue() + "ConnectionFactoryImpl";
- }
- return cfClass;
- }
-
- /**
- * Set the cfInterfaceClass.
- *
- * @param cfInterfaceClass The cfInterfaceClass to set.
- */
- public void setCfInterfaceClass(String cfInterfaceClass)
- {
- this.cfInterfaceClass = cfInterfaceClass;
- }
-
- /**
- * Get the cfInterfaceClass.
- *
- * @return the cfInterfaceClass.
- */
- public String getCfInterfaceClass()
- {
- if (cfInterfaceClass == null || cfInterfaceClass.equals(""))
- {
- cfInterfaceClass = getDefaultValue() + "ConnectionFactory";
- }
- return cfInterfaceClass;
- }
-
- /**
- * Set the connMetaClass.
- *
- * @param connMetaClass The connMetaClass to set.
- */
- public void setConnMetaClass(String connMetaClass)
- {
- this.connMetaClass = connMetaClass;
- }
-
- /**
- * Get the connMetaClass.
- *
- * @return the connMetaClass.
- */
- public String getConnMetaClass()
- {
- if (connMetaClass == null || connMetaClass.equals(""))
- connMetaClass = getDefaultValue() + "ConnectionMetaData";
- return connMetaClass;
- }
-
- /**
- * Set the connSpecClass.
- *
- * @param connSpecClass The connSpecClass to set.
- */
- public void setConnSpecClass(String connSpecClass)
- {
- this.connSpecClass = connSpecClass;
- }
-
- /**
- * Get the connSpecClass.
- *
- * @return the connSpecClass.
- */
- public String getConnSpecClass()
- {
- if (connSpecClass == null || connSpecClass.equals(""))
- connSpecClass = getDefaultValue() + "ConnectionSpec";
- return connSpecClass;
- }
-
- /**
* Set the raMetaClass.
*
* @param raMetaClass The raMetaClass to set.
@@ -828,46 +465,6 @@
}
/**
- * Set the defineMethodInConnection.
- *
- * @param defineMethodInConnection The defineMethodInConnection to set.
- */
- public void setDefineMethodInConnection(boolean defineMethodInConnection)
- {
- this.defineMethodInConnection = defineMethodInConnection;
- }
-
- /**
- * Get the defineMethodInConnection.
- *
- * @return the defineMethodInConnection.
- */
- public boolean isDefineMethodInConnection()
- {
- return defineMethodInConnection;
- }
-
- /**
- * Set the methods.
- *
- * @param methods The methods to set.
- */
- public void setMethods(List<MethodForConnection> methods)
- {
- this.methods = methods;
- }
-
- /**
- * Get the methods.
- *
- * @return the methods.
- */
- public List<MethodForConnection> getMethods()
- {
- return methods;
- }
-
- /**
* Set the defaultValue.
*
* @param defaultValue The defaultValue to set.
Modified: projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/Main.java
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/Main.java 2011-05-24 23:27:14 UTC (rev 111444)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/Main.java 2011-05-25 11:31:26 UTC (rev 111445)
@@ -300,94 +300,125 @@
//outbound
if (def.isSupportOutbound())
{
- System.out.print(rb.getString("mcf.class.name"));
- System.out.print("[" + def.getMcfClass() + "]: ");
- String mcfClassName = in.readLine();
- if (mcfClassName != null && !mcfClassName.equals(""))
+ List<McfDef> mcfDefs = new ArrayList<McfDef>();
+ def.setMcfDefs(mcfDefs);
+ int mcfID = 1;
+ boolean moreMcf;
+ do
{
- def.setMcfClass(mcfClassName);
- setDefaultValue(def, mcfClassName, "ManagedConnectionfactory");
- setDefaultValue(def, mcfClassName, "Mcf");
- }
-
- List<ConfigPropType> mcfProps = inputProperties("mcf", in, false);
- def.setMcfConfigProps(mcfProps);
-
- if (def.isUseRa())
- {
- System.out.print(rb.getString("mcf.impl.raa") + "[Y]: ");
- String raAssociation = in.readLine();
- if (raAssociation == null || raAssociation.equals(""))
- def.setImplRaAssociation(true);
+ McfDef mcfdef = new McfDef(mcfID, def);
+
+ System.out.print(rb.getString("mcf.class.name"));
+ System.out.print("[" + mcfdef.getMcfClass() + "]: ");
+ String mcfClassName = in.readLine();
+ if (mcfClassName != null && !mcfClassName.equals(""))
+ {
+ mcfdef.setMcfClass(mcfClassName);
+ setDefaultValue(def, mcfClassName, "ManagedConnectionfactory");
+ setDefaultValue(def, mcfClassName, "Mcf");
+ }
else
{
- if (raAssociation.equals("Y") || raAssociation.equals("y") || raAssociation.equals("Yes"))
- def.setImplRaAssociation(true);
+ if (mcfID > 1)
+ {
+ //make mcf classname different to make deployment successful
+ mcfdef.setMcfClass(def.getDefaultValue() + mcfID + "ManagedConnectionfactory");
+ }
+ }
+
+
+ List<ConfigPropType> mcfProps = inputProperties("mcf", in, false);
+ mcfdef.setMcfConfigProps(mcfProps);
+
+ if (def.isUseRa())
+ {
+ System.out.print(rb.getString("mcf.impl.raa") + "[Y]: ");
+ String raAssociation = in.readLine();
+ if (raAssociation == null || raAssociation.equals(""))
+ mcfdef.setImplRaAssociation(true);
else
- def.setImplRaAssociation(false);
+ {
+ if (raAssociation.equals("Y") || raAssociation.equals("y") || raAssociation.equals("Yes"))
+ mcfdef.setImplRaAssociation(true);
+ else
+ mcfdef.setImplRaAssociation(false);
+ }
}
- }
-
- System.out.print(rb.getString("mc.class.name"));
- System.out.print("[" + def.getMcClass() + "]: ");
- String mcClassName = in.readLine();
- if (mcClassName != null && !mcClassName.equals(""))
- def.setMcClass(mcClassName);
-
- System.out.print(rb.getString("mcf.use.cci") + "[N]: ");
- String useCciConnection = in.readLine();
- if (useCciConnection == null)
- def.setUseCciConnection(false);
- else
- {
- if (useCciConnection.equals("Y") || useCciConnection.equals("y") || useCciConnection.equals("Yes"))
- def.setUseCciConnection(true);
- else
- def.setUseCciConnection(false);
- }
-
- if (!def.isUseCciConnection())
- {
- System.out.print(rb.getString("cf.interface.name"));
- System.out.print("[" + def.getCfInterfaceClass() + "]: ");
- String cfInterfaceName = in.readLine();
- if (cfInterfaceName != null && !cfInterfaceName.equals(""))
- def.setCfInterfaceClass(cfInterfaceName);
- System.out.print(rb.getString("cf.class.name"));
- System.out.print("[" + def.getCfClass() + "]: ");
- String cfClassName = in.readLine();
- if (cfClassName != null && !cfClassName.equals(""))
- def.setCfClass(cfClassName);
-
- System.out.print(rb.getString("conn.interface.name"));
- System.out.print("[" + def.getConnInterfaceClass() + "]: ");
- String connInterfaceName = in.readLine();
- if (connInterfaceName != null && !connInterfaceName.equals(""))
- def.setConnInterfaceClass(connInterfaceName);
+ System.out.print(rb.getString("mc.class.name"));
+ System.out.print("[" + mcfdef.getMcClass() + "]: ");
+ String mcClassName = in.readLine();
+ if (mcClassName != null && !mcClassName.equals(""))
+ mcfdef.setMcClass(mcClassName);
- System.out.print(rb.getString("conn.class.name"));
- System.out.print("[" + def.getConnImplClass() + "]: ");
- String connImplName = in.readLine();
- if (connImplName != null && !connImplName.equals(""))
- def.setConnImplClass(connImplName);
-
- System.out.print(rb.getString("connection.method.support") + "[N]: ");
- String supportMethod = in.readLine();
- if (supportMethod == null)
- def.setDefineMethodInConnection(false);
+ System.out.print(rb.getString("mcf.use.cci") + "[N]: ");
+ String useCciConnection = in.readLine();
+ if (useCciConnection == null)
+ mcfdef.setUseCciConnection(false);
else
{
- if (supportMethod.equals("Y") || supportMethod.equals("y") || supportMethod.equals("Yes"))
- def.setDefineMethodInConnection(true);
+ if (useCciConnection.equals("Y") || useCciConnection.equals("y") || useCciConnection.equals("Yes"))
+ mcfdef.setUseCciConnection(true);
else
- def.setDefineMethodInConnection(false);
+ mcfdef.setUseCciConnection(false);
}
- if (def.isDefineMethodInConnection())
+
+ if (!mcfdef.isUseCciConnection())
{
- def.setMethods(inputMethod(in));
+ System.out.print(rb.getString("cf.interface.name"));
+ System.out.print("[" + mcfdef.getCfInterfaceClass() + "]: ");
+ String cfInterfaceName = in.readLine();
+ if (cfInterfaceName != null && !cfInterfaceName.equals(""))
+ mcfdef.setCfInterfaceClass(cfInterfaceName);
+
+ System.out.print(rb.getString("cf.class.name"));
+ System.out.print("[" + mcfdef.getCfClass() + "]: ");
+ String cfClassName = in.readLine();
+ if (cfClassName != null && !cfClassName.equals(""))
+ mcfdef.setCfClass(cfClassName);
+
+ System.out.print(rb.getString("conn.interface.name"));
+ System.out.print("[" + mcfdef.getConnInterfaceClass() + "]: ");
+ String connInterfaceName = in.readLine();
+ if (connInterfaceName != null && !connInterfaceName.equals(""))
+ mcfdef.setConnInterfaceClass(connInterfaceName);
+
+ System.out.print(rb.getString("conn.class.name"));
+ System.out.print("[" + mcfdef.getConnImplClass() + "]: ");
+ String connImplName = in.readLine();
+ if (connImplName != null && !connImplName.equals(""))
+ mcfdef.setConnImplClass(connImplName);
+
+ System.out.print(rb.getString("connection.method.support") + "[N]: ");
+ String supportMethod = in.readLine();
+ if (supportMethod == null)
+ mcfdef.setDefineMethodInConnection(false);
+ else
+ {
+ if (supportMethod.equals("Y") || supportMethod.equals("y") || supportMethod.equals("Yes"))
+ mcfdef.setDefineMethodInConnection(true);
+ else
+ mcfdef.setDefineMethodInConnection(false);
+ }
+ if (mcfdef.isDefineMethodInConnection())
+ {
+ mcfdef.setMethods(inputMethod(in));
+ }
}
+ mcfDefs.add(mcfdef);
+ mcfID++;
+ moreMcf = false;
+
+ if (def.getVersion().equals("1.5") || def.getVersion().equals("1.6"))
+ {
+ System.out.print(rb.getString("more.mcf") + "[N]: ");
+ String inputMoreMcf = in.readLine();
+ if (inputMoreMcf != null &&
+ (inputMoreMcf.equals("Y") || inputMoreMcf.equals("y") || inputMoreMcf.equals("Yes")))
+ moreMcf = true;
+ }
}
+ while (moreMcf);
}
//inbound
@@ -495,7 +526,7 @@
}
}
- if (!def.isUseCciConnection())
+ if (!def.getVersion().equals("1.0") && !def.getMcfDefs().get(0).isUseCciConnection())
{
//generate mbean classes
System.out.print(rb.getString("gen.mbean") + "[Y]: ");
Added: projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/McfDef.java
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/McfDef.java (rev 0)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/McfDef.java 2011-05-25 11:31:26 UTC (rev 111445)
@@ -0,0 +1,499 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2010, 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.jca.codegenerator;
+
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlElement;
+
+/**
+ * A Definition.
+ *
+ * @author Jeff Zhang</a>
+ * @version $Revision: $
+ */
+public class McfDef
+{
+ /** id */
+ private int id;
+ /** Definition */
+ private Definition def;
+
+ /** managed connection factory class name */
+ @XmlElement(name = "ManagedConnectionFactory")
+ private String mcfClass;
+ /** resource adapter configuration properties */
+ @XmlElement(name = "McfConfigProp")
+ private List<ConfigPropType> mcfConfigProps;
+
+ /** managed connection class name */
+ @XmlElement(name = "ManagedConnection")
+ private String mcClass;
+ /** connection interface name */
+ @XmlElement(name = "ConnectionInterface")
+ private String connInterfaceClass;
+ /** connection impl class name */
+ @XmlElement(name = "ConnectionImpl")
+ private String connImplClass;
+ /** connection factory interface name */
+ @XmlElement(name = "ConnectionFactoryInterface")
+ private String cfInterfaceClass;
+ /** connection factory class name */
+ @XmlElement(name = "ConnectionFactoryImpl")
+ private String cfClass;
+
+ /** ResourceAdapterAssociation optional */
+ @XmlElement(name = "ImplRaAssociation")
+ private boolean implRaAssociation;
+ /** ResourceAdapterAssociation optional */
+ @XmlElement(name = "UseCciConnection")
+ private boolean useCciConnection;
+
+ /** cci connection factory class name */
+ private String cciConnFactoryClass;
+ /** cci connection class name */
+ private String cciConnClass;
+ /** managed connection metadata class name */
+ private String mcMetaClass;
+ /** connection manage class name */
+ private String cmClass;
+
+ /** connection metadata class name */
+ private String connMetaClass;
+ /** connection spec class name */
+ private String connSpecClass;
+
+ /** support self defined method in connection class */
+ @XmlElement(name = "DefineMethod")
+ private boolean defineMethodInConnection;
+ /** define methods */
+ @XmlElement(name = "Method")
+ private List<MethodForConnection> methods;
+
+ /**
+ * Construct
+ *
+ * @param id MCF id
+ * @param def Definition
+ */
+ public McfDef(int id, Definition def)
+ {
+ this.id = id;
+ this.def = def;
+ }
+
+ /**
+ * getDefaultValue
+ *
+ * @return default name
+ */
+ private String getDefaultValue()
+ {
+ return def.getDefaultValue();
+ }
+
+ /**
+ * getMcfPackage
+ *
+ * @return default name
+ */
+ public String getMcfPackage()
+ {
+ return "mcf" + id;
+ }
+
+ /**
+ * Set the mcfClass.
+ *
+ * @param mcfClass The mcfClass to set.
+ */
+ public void setMcfClass(String mcfClass)
+ {
+ this.mcfClass = mcfClass;
+ }
+
+ /**
+ * Get the mcfClass.
+ *
+ * @return the mcfClass.
+ */
+ public String getMcfClass()
+ {
+ if (mcfClass == null || mcfClass.equals(""))
+ {
+ mcfClass = getDefaultValue() + "ManagedConnectionFactory";
+ }
+ return mcfClass;
+ }
+
+ /**
+ * Set the mcClass.
+ *
+ * @param mcClass The mcClass to set.
+ */
+ public void setMcClass(String mcClass)
+ {
+ this.mcClass = mcClass;
+ }
+
+ /**
+ * Get the mcClass.
+ *
+ * @return the mcClass.
+ */
+ public String getMcClass()
+ {
+ if (mcClass == null || mcClass.equals(""))
+ {
+ mcClass = getDefaultValue() + "ManagedConnection";
+ }
+ return mcClass;
+ }
+
+ /**
+ * Set the connInterfaceClass.
+ *
+ * @param connInterfaceClass The connInterfaceClass to set.
+ */
+ public void setConnInterfaceClass(String connInterfaceClass)
+ {
+ this.connInterfaceClass = connInterfaceClass;
+ }
+
+ /**
+ * Get the connInterfaceClass.
+ *
+ * @return the connInterfaceClass.
+ */
+ public String getConnInterfaceClass()
+ {
+ if (connInterfaceClass == null || connInterfaceClass.equals(""))
+ {
+ connInterfaceClass = getDefaultValue() + "Connection";
+ }
+ return connInterfaceClass;
+ }
+
+ /**
+ * Set the connImplClass.
+ *
+ * @param connImplClass The connImplClass to set.
+ */
+ public void setConnImplClass(String connImplClass)
+ {
+ this.connImplClass = connImplClass;
+ }
+
+ /**
+ * Get the connImplClass.
+ *
+ * @return the connImplClass.
+ */
+ public String getConnImplClass()
+ {
+ if (connImplClass == null || connImplClass.equals(""))
+ {
+ connImplClass = getDefaultValue() + "ConnectionImpl";
+ }
+ return connImplClass;
+ }
+
+ /**
+ * Set the mcfConfigProps.
+ *
+ * @param mcfConfigProps The mcfConfigProps to set.
+ */
+ public void setMcfConfigProps(List<ConfigPropType> mcfConfigProps)
+ {
+ this.mcfConfigProps = mcfConfigProps;
+ }
+
+ /**
+ * Get the mcfConfigProps.
+ *
+ * @return the mcfConfigProps.
+ */
+ public List<ConfigPropType> getMcfConfigProps()
+ {
+ return mcfConfigProps;
+ }
+
+ /**
+ * Set the implRaAssociation.
+ *
+ * @param implRaAssociation The implRaAssociation to set.
+ */
+ public void setImplRaAssociation(boolean implRaAssociation)
+ {
+ this.implRaAssociation = implRaAssociation;
+ }
+
+ /**
+ * Get the implRaAssociation.
+ *
+ * @return the implRaAssociation.
+ */
+ public boolean isImplRaAssociation()
+ {
+ return implRaAssociation;
+ }
+
+ /**
+ * Set the useCciConnection.
+ *
+ * @param useCciConnection The useCciConnection to set.
+ */
+ public void setUseCciConnection(boolean useCciConnection)
+ {
+ this.useCciConnection = useCciConnection;
+ }
+
+ /**
+ * Get the useCciConnection.
+ *
+ * @return the useCciConnection.
+ */
+ public boolean isUseCciConnection()
+ {
+ return useCciConnection;
+ }
+
+ /**
+ * Set the cciConnFactoryClass.
+ *
+ * @param cciConnFactoryClass The cciConnFactoryClass to set.
+ */
+ public void setCciConnFactoryClass(String cciConnFactoryClass)
+ {
+ this.cciConnFactoryClass = cciConnFactoryClass;
+ }
+
+ /**
+ * Get the cciConnFactoryClass.
+ *
+ * @return the cciConnFactoryClass.
+ */
+ public String getCciConnFactoryClass()
+ {
+ if (cciConnFactoryClass == null || cciConnFactoryClass.equals(""))
+ cciConnFactoryClass = getDefaultValue() + "CciConnectionFactory";
+ return cciConnFactoryClass;
+ }
+
+ /**
+ * Set the cciConnClass.
+ *
+ * @param cciConnClass The cciConnClass to set.
+ */
+ public void setCciConnClass(String cciConnClass)
+ {
+ this.cciConnClass = cciConnClass;
+ }
+
+ /**
+ * Get the cciConnClass.
+ *
+ * @return the cciConnClass.
+ */
+ public String getCciConnClass()
+ {
+ if (cciConnClass == null || cciConnClass.equals(""))
+ cciConnClass = getDefaultValue() + "CciConnection";
+ return cciConnClass;
+ }
+
+ /**
+ * Set the mcMetaClass.
+ *
+ * @param mcMetaClass The mcMetaClass to set.
+ */
+ public void setMcMetaClass(String mcMetaClass)
+ {
+ this.mcMetaClass = mcMetaClass;
+ }
+
+ /**
+ * Get the mcMetaClass.
+ *
+ * @return the mcMetaClass.
+ */
+ public String getMcMetaClass()
+ {
+ if (mcMetaClass == null || mcMetaClass.equals(""))
+ mcMetaClass = getDefaultValue() + "ManagedConnectionMetaData";
+ return mcMetaClass;
+ }
+
+ /**
+ * Set the cmClass.
+ *
+ * @param cmClass The cmClass to set.
+ */
+ public void setCmClass(String cmClass)
+ {
+ this.cmClass = cmClass;
+ }
+
+ /**
+ * Get the cmClass.
+ *
+ * @return the cmClass.
+ */
+ public String getCmClass()
+ {
+ if (cmClass == null || cmClass.equals(""))
+ cmClass = getDefaultValue() + "ConnectionManager";
+ return cmClass;
+ }
+
+ /**
+ * Set the cfClass.
+ *
+ * @param cfClass The cfClass to set.
+ */
+ public void setCfClass(String cfClass)
+ {
+ this.cfClass = cfClass;
+ }
+
+ /**
+ * Get the cfClass.
+ *
+ * @return the cfClass.
+ */
+ public String getCfClass()
+ {
+ if (cfClass == null || cfClass.equals(""))
+ {
+ cfClass = getDefaultValue() + "ConnectionFactoryImpl";
+ }
+ return cfClass;
+ }
+
+ /**
+ * Set the cfInterfaceClass.
+ *
+ * @param cfInterfaceClass The cfInterfaceClass to set.
+ */
+ public void setCfInterfaceClass(String cfInterfaceClass)
+ {
+ this.cfInterfaceClass = cfInterfaceClass;
+ }
+
+ /**
+ * Get the cfInterfaceClass.
+ *
+ * @return the cfInterfaceClass.
+ */
+ public String getCfInterfaceClass()
+ {
+ if (cfInterfaceClass == null || cfInterfaceClass.equals(""))
+ {
+ cfInterfaceClass = getDefaultValue() + "ConnectionFactory";
+ }
+ return cfInterfaceClass;
+ }
+
+ /**
+ * Set the connMetaClass.
+ *
+ * @param connMetaClass The connMetaClass to set.
+ */
+ public void setConnMetaClass(String connMetaClass)
+ {
+ this.connMetaClass = connMetaClass;
+ }
+
+ /**
+ * Get the connMetaClass.
+ *
+ * @return the connMetaClass.
+ */
+ public String getConnMetaClass()
+ {
+ if (connMetaClass == null || connMetaClass.equals(""))
+ connMetaClass = getDefaultValue() + "ConnectionMetaData";
+ return connMetaClass;
+ }
+
+ /**
+ * Set the connSpecClass.
+ *
+ * @param connSpecClass The connSpecClass to set.
+ */
+ public void setConnSpecClass(String connSpecClass)
+ {
+ this.connSpecClass = connSpecClass;
+ }
+
+ /**
+ * Get the connSpecClass.
+ *
+ * @return the connSpecClass.
+ */
+ public String getConnSpecClass()
+ {
+ if (connSpecClass == null || connSpecClass.equals(""))
+ connSpecClass = getDefaultValue() + "ConnectionSpec";
+ return connSpecClass;
+ }
+
+ /**
+ * Set the defineMethodInConnection.
+ *
+ * @param defineMethodInConnection The defineMethodInConnection to set.
+ */
+ public void setDefineMethodInConnection(boolean defineMethodInConnection)
+ {
+ this.defineMethodInConnection = defineMethodInConnection;
+ }
+
+ /**
+ * Get the defineMethodInConnection.
+ *
+ * @return the defineMethodInConnection.
+ */
+ public boolean isDefineMethodInConnection()
+ {
+ return defineMethodInConnection;
+ }
+
+ /**
+ * Set the methods.
+ *
+ * @param methods The methods to set.
+ */
+ public void setMethods(List<MethodForConnection> methods)
+ {
+ this.methods = methods;
+ }
+
+ /**
+ * Get the methods.
+ *
+ * @return the methods.
+ */
+ public List<MethodForConnection> getMethods()
+ {
+ return methods;
+ }
+}
Modified: projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/AbstractCodeGen.java
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/AbstractCodeGen.java 2011-05-24 23:27:14 UTC (rev 111444)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/AbstractCodeGen.java 2011-05-25 11:31:26 UTC (rev 111445)
@@ -36,6 +36,9 @@
*/
public abstract class AbstractCodeGen extends BaseGen
{
+ /** num of mcf */
+ private int numOfMcf = 0;
+
/**
* generate code
* @param def Definition
@@ -244,4 +247,26 @@
writeEol(out);
}
+
+ /**
+ * Set the numOfMcf.
+ *
+ * @param numOfMcf The numOfMcf to set.
+ */
+ public void setNumOfMcf(int numOfMcf)
+ {
+ this.numOfMcf = numOfMcf;
+ }
+
+
+ /**
+ * Get the numOfMcf.
+ *
+ * @return the numOfMcf.
+ */
+ public int getNumOfMcf()
+ {
+ return numOfMcf;
+ }
+
}
Modified: projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/CciConnCodeGen.java
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/CciConnCodeGen.java 2011-05-24 23:27:14 UTC (rev 111444)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/CciConnCodeGen.java 2011-05-25 11:31:26 UTC (rev 111445)
@@ -89,7 +89,10 @@
@Override
public void writeImport(Definition def, Writer out) throws IOException
{
- out.write("package " + def.getRaPackage() + ";");
+ if (def.getMcfDefs().size() == 1)
+ out.write("package " + def.getRaPackage() + ";");
+ else
+ out.write("package " + def.getRaPackage() + ".mcf" + getNumOfMcf() + ";");
writeEol(out);
writeEol(out);
out.write("import javax.resource.ResourceException;");
@@ -118,7 +121,7 @@
@Override
public String getClassName(Definition def)
{
- return def.getCciConnClass();
+ return def.getMcfDefs().get(getNumOfMcf()).getCciConnClass();
}
/**
@@ -281,7 +284,7 @@
writeLeftCurlyBracket(out, indent);
writeIndent(out, indent + 1);
- out.write("return new " + def.getConnMetaClass() + "();");
+ out.write("return new " + def.getMcfDefs().get(getNumOfMcf()).getConnMetaClass() + "();");
writeRightCurlyBracket(out, indent);
writeEol(out);
}
Modified: projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/CciConnFactoryCodeGen.java
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/CciConnFactoryCodeGen.java 2011-05-24 23:27:14 UTC (rev 111444)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/CciConnFactoryCodeGen.java 2011-05-25 11:31:26 UTC (rev 111445)
@@ -91,7 +91,10 @@
@Override
public void writeImport(Definition def, Writer out) throws IOException
{
- out.write("package " + def.getRaPackage() + ";");
+ if (def.getMcfDefs().size() == 1)
+ out.write("package " + def.getRaPackage() + ";");
+ else
+ out.write("package " + def.getRaPackage() + ".mcf" + getNumOfMcf() + ";");
writeEol(out);
writeEol(out);
out.write("import javax.naming.NamingException;");
@@ -114,6 +117,10 @@
out.write("import javax.resource.spi.ConnectionManager;");
writeEol(out);
writeEol(out);
+ if (def.getMcfDefs().size() != 1)
+ out.write("import " + def.getRaPackage() + ".*;");
+ writeEol(out);
+ writeEol(out);
}
/**
@@ -124,7 +131,7 @@
@Override
public String getClassName(Definition def)
{
- return def.getCciConnFactoryClass();
+ return def.getMcfDefs().get(getNumOfMcf()).getCciConnFactoryClass();
}
/**
@@ -163,7 +170,8 @@
writeLeftCurlyBracket(out, indent);
writeIndent(out, indent + 1);
- out.write("return new " + def.getCciConnClass() + "(new " + def.getConnSpecClass() + "());");
+ out.write("return new " + def.getMcfDefs().get(getNumOfMcf()).getCciConnClass()
+ + "(new " + def.getMcfDefs().get(getNumOfMcf()).getConnSpecClass() + "());");
writeRightCurlyBracket(out, indent);
writeEol(out);
@@ -198,7 +206,7 @@
writeLeftCurlyBracket(out, indent);
writeIndent(out, indent + 1);
- out.write("return new " + def.getCciConnClass() + "(connSpec);");
+ out.write("return new " + def.getMcfDefs().get(getNumOfMcf()).getCciConnClass() + "(connSpec);");
writeRightCurlyBracket(out, indent);
writeEol(out);
}
Modified: projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/CfCodeGen.java
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/CfCodeGen.java 2011-05-24 23:27:14 UTC (rev 111444)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/CfCodeGen.java 2011-05-25 11:31:26 UTC (rev 111445)
@@ -44,7 +44,8 @@
public void writeClassBody(Definition def, Writer out) throws IOException
{
- out.write("public class " + getClassName(def) + " implements " + def.getCfInterfaceClass());
+ out.write("public class " + getClassName(def) + " implements " +
+ def.getMcfDefs().get(getNumOfMcf()).getCfInterfaceClass());
writeLeftCurlyBracket(out, 0);
int indent = 1;
@@ -76,7 +77,7 @@
out.write("/** ManagedConnectionFactory */");
writeEol(out);
writeIndent(out, indent);
- out.write("private " + def.getMcfClass() + " mcf;");
+ out.write("private " + def.getMcfDefs().get(getNumOfMcf()).getMcfClass() + " mcf;");
writeEol(out);
writeEol(out);
@@ -108,7 +109,8 @@
writeEol(out);
writeIndent(out, indent);
- out.write("public " + getClassName(def) + "(" + def.getMcfClass() + " mcf, ConnectionManager cxManager)");
+ out.write("public " + getClassName(def) + "(" + def.getMcfDefs().get(getNumOfMcf()).getMcfClass() +
+ " mcf, ConnectionManager cxManager)");
writeLeftCurlyBracket(out, indent);
writeIndent(out, indent + 1);
out.write("this.mcf = mcf;");
@@ -132,7 +134,10 @@
@Override
public void writeImport(Definition def, Writer out) throws IOException
{
- out.write("package " + def.getRaPackage() + ";");
+ if (def.getMcfDefs().size() == 1)
+ out.write("package " + def.getRaPackage() + ";");
+ else
+ out.write("package " + def.getRaPackage() + ".mcf" + getNumOfMcf() + ";");
writeEol(out);
writeEol(out);
out.write("import java.util.logging.Logger;");
@@ -158,7 +163,7 @@
@Override
public String getClassName(Definition def)
{
- return def.getCfClass();
+ return def.getMcfDefs().get(getNumOfMcf()).getCfClass();
}
/**
@@ -180,7 +185,7 @@
out.write(" *");
writeEol(out);
writeIndent(out, indent);
- out.write(" * @return " + def.getConnInterfaceClass() + " instance");
+ out.write(" * @return " + def.getMcfDefs().get(getNumOfMcf()).getConnInterfaceClass() + " instance");
writeEol(out);
writeIndent(out, indent);
out.write(" * @exception ResourceException Thrown if a connection can't be obtained");
@@ -193,13 +198,15 @@
out.write("@Override");
writeEol(out);
writeIndent(out, indent);
- out.write("public " + def.getConnInterfaceClass() + " getConnection() throws ResourceException");
+ out.write("public " + def.getMcfDefs().get(getNumOfMcf()).getConnInterfaceClass() +
+ " getConnection() throws ResourceException");
writeLeftCurlyBracket(out, indent);
writeIndent(out, indent + 1);
out.write("log.finest(\"getConnection()\");");
writeEol(out);
writeIndent(out, indent + 1);
- out.write("return (" + def.getConnInterfaceClass() + ")connectionManager.allocateConnection(mcf, null);");
+ out.write("return (" + def.getMcfDefs().get(getNumOfMcf()).getConnInterfaceClass() +
+ ")connectionManager.allocateConnection(mcf, null);");
writeRightCurlyBracket(out, indent);
writeEol(out);
}
Modified: projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/CfInterfaceCodeGen.java
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/CfInterfaceCodeGen.java 2011-05-24 23:27:14 UTC (rev 111444)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/CfInterfaceCodeGen.java 2011-05-25 11:31:26 UTC (rev 111445)
@@ -61,7 +61,10 @@
@Override
public void writeImport(Definition def, Writer out) throws IOException
{
- out.write("package " + def.getRaPackage() + ";");
+ if (def.getMcfDefs().size() == 1)
+ out.write("package " + def.getRaPackage() + ";");
+ else
+ out.write("package " + def.getRaPackage() + ".mcf" + getNumOfMcf() + ";");
writeEol(out);
writeEol(out);
out.write("import java.io.Serializable;");
@@ -82,7 +85,7 @@
@Override
public String getClassName(Definition def)
{
- return def.getCfInterfaceClass();
+ return def.getMcfDefs().get(getNumOfMcf()).getCfInterfaceClass();
}
/**
@@ -104,7 +107,7 @@
out.write(" *");
writeEol(out);
writeIndent(out, indent);
- out.write(" * @return " + def.getConnInterfaceClass() + " instance");
+ out.write(" * @return " + def.getMcfDefs().get(getNumOfMcf()).getConnInterfaceClass() + " instance");
writeEol(out);
writeIndent(out, indent);
out.write(" * @exception ResourceException Thrown if a connection can't be obtained");
@@ -114,7 +117,8 @@
writeEol(out);
writeIndent(out, indent);
- out.write("public " + def.getConnInterfaceClass() + " getConnection() throws ResourceException;");
+ out.write("public " + def.getMcfDefs().get(getNumOfMcf()).getConnInterfaceClass() +
+ " getConnection() throws ResourceException;");
writeEol(out);
}
}
Modified: projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/ConnImplCodeGen.java
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/ConnImplCodeGen.java 2011-05-24 23:27:14 UTC (rev 111444)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/ConnImplCodeGen.java 2011-05-25 11:31:26 UTC (rev 111445)
@@ -47,7 +47,8 @@
public void writeClassBody(Definition def, Writer out) throws IOException
{
- out.write("public class " + getClassName(def) + " implements " + def.getConnInterfaceClass());
+ out.write("public class " + getClassName(def) + " implements " +
+ def.getMcfDefs().get(getNumOfMcf()).getConnInterfaceClass());
writeLeftCurlyBracket(out, 0);
int indent = 1;
writeIndent(out, indent);
@@ -62,7 +63,7 @@
out.write("/** ManagedConnection */");
writeEol(out);
writeIndent(out, indent);
- out.write("private " + def.getMcClass() + " mc;");
+ out.write("private " + def.getMcfDefs().get(getNumOfMcf()).getMcClass() + " mc;");
writeEol(out);
writeEol(out);
@@ -70,7 +71,7 @@
out.write("/** ManagedConnectionFactory */");
writeEol(out);
writeIndent(out, indent);
- out.write("private " + def.getMcfClass() + " mcf;");
+ out.write("private " + def.getMcfDefs().get(getNumOfMcf()).getMcfClass() + " mcf;");
writeEol(out);
writeEol(out);
@@ -82,10 +83,10 @@
out.write(" * Default constructor");
writeEol(out);
writeIndent(out, indent);
- out.write(" * @param mc " + def.getMcClass());
+ out.write(" * @param mc " + def.getMcfDefs().get(getNumOfMcf()).getMcClass());
writeEol(out);
writeIndent(out, indent);
- out.write(" * @param mcf " + def.getMcfClass());
+ out.write(" * @param mcf " + def.getMcfDefs().get(getNumOfMcf()).getMcfClass());
writeEol(out);
writeIndent(out, indent);
out.write(" */");
@@ -93,7 +94,8 @@
writeIndent(out, indent);
out.write("public " + getClassName(def) + "(" +
- def.getMcClass() + " mc, " + def.getMcfClass() + " mcf)");
+ def.getMcfDefs().get(getNumOfMcf()).getMcClass() + " mc, " +
+ def.getMcfDefs().get(getNumOfMcf()).getMcfClass() + " mcf)");
writeLeftCurlyBracket(out, indent);
writeIndent(out, indent + 1);
out.write("this.mc = mc;");
@@ -116,7 +118,10 @@
@Override
public void writeImport(Definition def, Writer out) throws IOException
{
- out.write("package " + def.getRaPackage() + ";");
+ if (def.getMcfDefs().size() == 1)
+ out.write("package " + def.getRaPackage() + ";");
+ else
+ out.write("package " + def.getRaPackage() + ".mcf" + getNumOfMcf() + ";");
writeEol(out);
writeEol(out);
out.write("import java.util.logging.Logger;");
@@ -132,7 +137,7 @@
@Override
public String getClassName(Definition def)
{
- return def.getConnImplClass();
+ return def.getMcfDefs().get(getNumOfMcf()).getConnImplClass();
}
/**
@@ -144,11 +149,11 @@
*/
private void writeMethod(Definition def, Writer out, int indent) throws IOException
{
- if (def.isDefineMethodInConnection())
+ if (def.getMcfDefs().get(getNumOfMcf()).isDefineMethodInConnection())
{
- if (def.getMethods().size() > 0)
+ if (def.getMcfDefs().get(getNumOfMcf()).getMethods().size() > 0)
{
- for (MethodForConnection method : def.getMethods())
+ for (MethodForConnection method : def.getMcfDefs().get(getNumOfMcf()).getMethods())
{
writeIndent(out, indent);
out.write("/**");
Modified: projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/ConnInterfaceCodeGen.java
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/ConnInterfaceCodeGen.java 2011-05-24 23:27:14 UTC (rev 111444)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/ConnInterfaceCodeGen.java 2011-05-25 11:31:26 UTC (rev 111445)
@@ -51,11 +51,11 @@
out.write("public interface " + getClassName(def));
writeLeftCurlyBracket(out, 0);
- if (def.isDefineMethodInConnection())
+ if (def.getMcfDefs().get(getNumOfMcf()).isDefineMethodInConnection())
{
- if (def.getMethods().size() > 0)
+ if (def.getMcfDefs().get(getNumOfMcf()).getMethods().size() > 0)
{
- for (MethodForConnection method : def.getMethods())
+ for (MethodForConnection method : def.getMcfDefs().get(getNumOfMcf()).getMethods())
{
writeIndent(out, indent);
out.write("/**");
@@ -157,7 +157,10 @@
@Override
public void writeImport(Definition def, Writer out) throws IOException
{
- out.write("package " + def.getRaPackage() + ";");
+ if (def.getMcfDefs().size() == 1)
+ out.write("package " + def.getRaPackage() + ";");
+ else
+ out.write("package " + def.getRaPackage() + ".mcf" + getNumOfMcf() + ";");
writeEol(out);
writeEol(out);
}
@@ -170,6 +173,6 @@
@Override
public String getClassName(Definition def)
{
- return def.getConnInterfaceClass();
+ return def.getMcfDefs().get(getNumOfMcf()).getConnInterfaceClass();
}
}
Modified: projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/ConnMetaCodeGen.java
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/ConnMetaCodeGen.java 2011-05-24 23:27:14 UTC (rev 111444)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/ConnMetaCodeGen.java 2011-05-25 11:31:26 UTC (rev 111445)
@@ -65,7 +65,10 @@
@Override
public void writeImport(Definition def, Writer out) throws IOException
{
- out.write("package " + def.getRaPackage() + ";");
+ if (def.getMcfDefs().size() == 1)
+ out.write("package " + def.getRaPackage() + ";");
+ else
+ out.write("package " + def.getRaPackage() + ".mcf" + getNumOfMcf() + ";");
writeEol(out);
writeEol(out);
out.write("import javax.resource.ResourceException;");
@@ -84,7 +87,7 @@
@Override
public String getClassName(Definition def)
{
- return def.getConnMetaClass();
+ return def.getMcfDefs().get(getNumOfMcf()).getConnMetaClass();
}
/**
Modified: projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/ConnSpecCodeGen.java
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/ConnSpecCodeGen.java 2011-05-24 23:27:14 UTC (rev 111444)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/ConnSpecCodeGen.java 2011-05-25 11:31:26 UTC (rev 111445)
@@ -62,7 +62,10 @@
@Override
public void writeImport(Definition def, Writer out) throws IOException
{
- out.write("package " + def.getRaPackage() + ";");
+ if (def.getMcfDefs().size() == 1)
+ out.write("package " + def.getRaPackage() + ";");
+ else
+ out.write("package " + def.getRaPackage() + ".mcf" + getNumOfMcf() + ";");
writeEol(out);
writeEol(out);
out.write("import javax.resource.cci.ConnectionSpec ;");
@@ -78,7 +81,7 @@
@Override
public String getClassName(Definition def)
{
- return def.getConnSpecClass();
+ return def.getMcfDefs().get(getNumOfMcf()).getConnSpecClass();
}
}
Modified: projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/MbeanImplCodeGen.java
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/MbeanImplCodeGen.java 2011-05-24 23:27:14 UTC (rev 111444)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/MbeanImplCodeGen.java 2011-05-25 11:31:26 UTC (rev 111445)
@@ -120,11 +120,12 @@
writeEol(out);
writeEol(out);
- out.write("import " + def.getRaPackage() + "." + def.getConnInterfaceClass() + ";");
+ if (def.getMcfDefs().size() == 1)
+ out.write("import " + def.getRaPackage() + ".*;");
+ else
+ out.write("import " + def.getRaPackage() + ".mcf0.*;");
writeEol(out);
- out.write("import " + def.getRaPackage() + "." + def.getCfInterfaceClass() + ";");
writeEol(out);
- writeEol(out);
}
/**
@@ -197,11 +198,11 @@
*/
private void writeMethods(Definition def, Writer out, int indent) throws IOException
{
- if (def.isDefineMethodInConnection())
+ if (def.getMcfDefs().get(0).isDefineMethodInConnection())
{
- if (def.getMethods().size() > 0)
+ if (def.getMcfDefs().get(0).getMethods().size() > 0)
{
- for (MethodForConnection method : def.getMethods())
+ for (MethodForConnection method : def.getMcfDefs().get(0).getMethods())
{
writeIndent(out, indent);
out.write("/**");
@@ -301,8 +302,8 @@
*/
private void writeGetConnection(Definition def, Writer out, int indent) throws IOException
{
- String connInterface = def.getConnInterfaceClass();
- String cfInterface = def.getCfInterfaceClass();
+ String connInterface = def.getMcfDefs().get(0).getConnInterfaceClass();
+ String cfInterface = def.getMcfDefs().get(0).getCfInterfaceClass();
writeIndent(out, indent);
out.write("/**");
Modified: projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/MbeanInterfaceCodeGen.java
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/MbeanInterfaceCodeGen.java 2011-05-24 23:27:14 UTC (rev 111444)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/MbeanInterfaceCodeGen.java 2011-05-25 11:31:26 UTC (rev 111445)
@@ -50,11 +50,11 @@
out.write("public interface " + getClassName(def));
writeLeftCurlyBracket(out, 0);
- if (def.isDefineMethodInConnection())
+ if (def.getMcfDefs().get(0).isDefineMethodInConnection())
{
- if (def.getMethods().size() > 0)
+ if (def.getMcfDefs().get(0).getMethods().size() > 0)
{
- for (MethodForConnection method : def.getMethods())
+ for (MethodForConnection method : def.getMcfDefs().get(0).getMethods())
{
writeIndent(out, indent);
out.write("/**");
Modified: projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/McCodeGen.java
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/McCodeGen.java 2011-05-24 23:27:14 UTC (rev 111444)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/McCodeGen.java 2011-05-25 11:31:26 UTC (rev 111445)
@@ -69,7 +69,7 @@
out.write("/** ManagedConnectionFactory */");
writeEol(out);
writeIndent(out, indent);
- out.write("private " + def.getMcfClass() + " mcf;");
+ out.write("private " + def.getMcfDefs().get(getNumOfMcf()).getMcfClass() + " mcf;");
writeEol(out);
writeEol(out);
@@ -104,7 +104,7 @@
writeEol(out);
writeIndent(out, indent);
- out.write("public " + getClassName(def) + "(" + def.getMcfClass() + " mcf)");
+ out.write("public " + getClassName(def) + "(" + def.getMcfDefs().get(getNumOfMcf()).getMcfClass() + " mcf)");
writeLeftCurlyBracket(out, indent);
writeIndent(out, indent + 1);
out.write("this.mcf = mcf;");
@@ -139,7 +139,10 @@
@Override
public void writeImport(Definition def, Writer out) throws IOException
{
- out.write("package " + def.getRaPackage() + ";");
+ if (def.getMcfDefs().size() == 1)
+ out.write("package " + def.getRaPackage() + ";");
+ else
+ out.write("package " + def.getRaPackage() + ".mcf" + getNumOfMcf() + ";");
writeEol(out);
writeEol(out);
out.write("import java.io.PrintWriter;");
@@ -182,7 +185,7 @@
@Override
public String getClassName(Definition def)
{
- return def.getMcClass();
+ return def.getMcfDefs().get(getNumOfMcf()).getMcClass();
}
/**
@@ -232,7 +235,10 @@
out.write("log.finest(\"getConnection()\");");
writeEol(out);
writeIndent(out, indent + 1);
- out.write("connection = new " + def.getConnImplClass() + "(this, mcf);");
+ if (def.getMcfDefs().get(getNumOfMcf()).isUseCciConnection())
+ out.write("connection = new " + def.getMcfDefs().get(getNumOfMcf()).getCciConnClass() + "();");
+ else
+ out.write("connection = new " + def.getMcfDefs().get(getNumOfMcf()).getConnImplClass() + "(this, mcf);");
writeEol(out);
writeIndent(out, indent + 1);
out.write("return connection;");
@@ -420,7 +426,11 @@
out.write(" */");
writeEol(out);
writeIndent(out, indent);
- out.write("public void closeHandle(" + def.getConnInterfaceClass() + " handle)");
+ out.write("public void closeHandle(");
+ if (def.getMcfDefs().get(getNumOfMcf()).isUseCciConnection())
+ out.write(def.getMcfDefs().get(getNumOfMcf()).getCciConnClass() + " handle)");
+ else
+ out.write(def.getMcfDefs().get(getNumOfMcf()).getConnInterfaceClass() + " handle)");
writeLeftCurlyBracket(out, indent);
writeIndent(out, indent + 1);
out.write("ConnectionEvent event = new ConnectionEvent(this, ConnectionEvent.CONNECTION_CLOSED);");
@@ -614,7 +624,7 @@
writeEol(out);
writeIndent(out, indent + 1);
- out.write("return new " + def.getMcMetaClass() + "();");
+ out.write("return new " + def.getMcfDefs().get(getNumOfMcf()).getMcMetaClass() + "();");
writeRightCurlyBracket(out, indent);
writeEol(out);
Modified: projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/McMetaCodeGen.java
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/McMetaCodeGen.java 2011-05-24 23:27:14 UTC (rev 111444)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/McMetaCodeGen.java 2011-05-25 11:31:26 UTC (rev 111445)
@@ -74,7 +74,10 @@
@Override
public void writeImport(Definition def, Writer out) throws IOException
{
- out.write("package " + def.getRaPackage() + ";");
+ if (def.getMcfDefs().size() == 1)
+ out.write("package " + def.getRaPackage() + ";");
+ else
+ out.write("package " + def.getRaPackage() + ".mcf" + getNumOfMcf() + ";");
writeEol(out);
writeEol(out);
out.write("import java.util.logging.Logger;");
@@ -96,7 +99,7 @@
@Override
public String getClassName(Definition def)
{
- return def.getMcMetaClass();
+ return def.getMcfDefs().get(getNumOfMcf()).getMcMetaClass();
}
/**
Modified: projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/McfCodeGen.java
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/McfCodeGen.java 2011-05-24 23:27:14 UTC (rev 111444)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/McfCodeGen.java 2011-05-25 11:31:26 UTC (rev 111445)
@@ -49,18 +49,19 @@
int indent = 1;
if (def.isUseAnnotation())
{
- if (!def.isUseCciConnection())
+ if (!def.getMcfDefs().get(getNumOfMcf()).isUseCciConnection())
{
- out.write("@ConnectionDefinition(connectionFactory = " + def.getCfInterfaceClass() + ".class,");
+ out.write("@ConnectionDefinition(connectionFactory = " +
+ def.getMcfDefs().get(getNumOfMcf()).getCfInterfaceClass() + ".class,");
writeEol(out);
writeIndent(out, indent);
- out.write("connectionFactoryImpl = " + def.getCfClass() + ".class,");
+ out.write("connectionFactoryImpl = " + def.getMcfDefs().get(getNumOfMcf()).getCfClass() + ".class,");
writeEol(out);
writeIndent(out, indent);
- out.write("connection = " + def.getConnInterfaceClass() + ".class,");
+ out.write("connection = " + def.getMcfDefs().get(getNumOfMcf()).getConnInterfaceClass() + ".class,");
writeEol(out);
writeIndent(out, indent);
- out.write("connectionImpl = " + def.getConnImplClass() + ".class)");
+ out.write("connectionImpl = " + def.getMcfDefs().get(getNumOfMcf()).getConnImplClass() + ".class)");
writeEol(out);
}
else
@@ -68,20 +69,21 @@
out.write("@ConnectionDefinition(connectionFactory = ConnectionFactory.class,");
writeEol(out);
writeIndent(out, indent);
- out.write("connectionFactoryImpl = " + def.getCciConnFactoryClass() + ".class,");
+ out.write("connectionFactoryImpl = " +
+ def.getMcfDefs().get(getNumOfMcf()).getCciConnFactoryClass() + ".class,");
writeEol(out);
writeIndent(out, indent);
out.write("connection = Connection.class,");
writeEol(out);
writeIndent(out, indent);
- out.write("connectionImpl = " + def.getCciConnClass() + ".class)");
+ out.write("connectionImpl = " + def.getMcfDefs().get(getNumOfMcf()).getCciConnClass() + ".class)");
writeEol(out);
}
}
out.write("public class " + getClassName(def) + " implements ManagedConnectionFactory");
- if (def.isImplRaAssociation())
+ if (def.getMcfDefs().get(getNumOfMcf()).isImplRaAssociation())
{
out.write(", ResourceAdapterAssociation");
}
@@ -103,7 +105,7 @@
out.write("private static Logger log = Logger.getLogger(\"" + getClassName(def) + "\");");
writeEol(out);
writeEol(out);
- if (def.isImplRaAssociation())
+ if (def.getMcfDefs().get(getNumOfMcf()).isImplRaAssociation())
{
writeIndent(out, indent);
out.write("/** The resource adapter */");
@@ -130,7 +132,7 @@
writeConnectionFactory(def, out, indent);
writeManagedConnection(def, out, indent);
writeLogWriter(def, out, indent);
- if (def.isImplRaAssociation())
+ if (def.getMcfDefs().get(getNumOfMcf()).isImplRaAssociation())
{
writeResourceAdapter(def, out, indent);
}
@@ -150,7 +152,10 @@
@Override
public void writeImport(Definition def, Writer out) throws IOException
{
- out.write("package " + def.getRaPackage() + ";");
+ if (def.getMcfDefs().size() == 1)
+ out.write("package " + def.getRaPackage() + ";");
+ else
+ out.write("package " + def.getRaPackage() + ".mcf" + getNumOfMcf() + ";");
writeEol(out);
writeEol(out);
out.write("import java.io.PrintWriter;");
@@ -167,7 +172,7 @@
out.write("import javax.resource.ResourceException;");
writeEol(out);
- if (def.isUseCciConnection())
+ if (def.getMcfDefs().get(getNumOfMcf()).isUseCciConnection())
{
out.write("import javax.resource.cci.Connection;");
writeEol(out);
@@ -208,7 +213,7 @@
@Override
public String getClassName(Definition def)
{
- return def.getMcfClass();
+ return def.getMcfDefs().get(getNumOfMcf()).getMcfClass();
}
/**
@@ -219,7 +224,7 @@
@Override
public List<ConfigPropType> getConfigProps(Definition def)
{
- return def.getMcfConfigProps();
+ return def.getMcfDefs().get(getNumOfMcf()).getMcfConfigProps();
}
/**
@@ -262,10 +267,10 @@
out.write("log.finest(\"createConnectionFactory()\");");
writeEol(out);
writeIndent(out, indent + 1);
- if (def.isUseCciConnection())
- out.write("return new " + def.getCciConnFactoryClass() + "(cxManager);");
+ if (def.getMcfDefs().get(getNumOfMcf()).isUseCciConnection())
+ out.write("return new " + def.getMcfDefs().get(getNumOfMcf()).getCciConnFactoryClass() + "(cxManager);");
else
- out.write("return new " + def.getCfClass() + "(this, cxManager);");
+ out.write("return new " + def.getMcfDefs().get(getNumOfMcf()).getCfClass() + "(this, cxManager);");
writeRightCurlyBracket(out, indent);
writeEol(out);
@@ -345,7 +350,7 @@
out.write("log.finest(\"createManagedConnection()\");");
writeEol(out);
writeIndent(out, indent + 1);
- out.write("return new " + def.getMcClass() + "(this);");
+ out.write("return new " + def.getMcfDefs().get(getNumOfMcf()).getMcClass() + "(this);");
writeRightCurlyBracket(out, indent);
writeEol(out);
@@ -400,7 +405,7 @@
out.write("ManagedConnection mc = (ManagedConnection)it.next();");
writeEol(out);
writeIndent(out, indent + 2);
- out.write("if (mc instanceof " + def.getMcClass() + ")");
+ out.write("if (mc instanceof " + def.getMcfDefs().get(getNumOfMcf()).getMcClass() + ")");
writeLeftCurlyBracket(out, indent + 2);
writeIndent(out, indent + 3);
out.write("result = mc;");
Modified: projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/TestCodeGen.java
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/TestCodeGen.java 2011-05-24 23:27:14 UTC (rev 111444)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/TestCodeGen.java 2011-05-25 11:31:26 UTC (rev 111445)
@@ -64,7 +64,7 @@
writeDeployment(def, out, indent);
writeResource(def, out, indent);
- if (def.isDefineMethodInConnection())
+ if (def.getMcfDefs().get(0).isDefineMethodInConnection())
{
writeTestMethod(def, out, indent);
}
@@ -94,7 +94,7 @@
out.write("import javax.annotation.Resource;");
writeEol(out);
writeEol(out);
- out.write("import org.jboss.arquillian.api.Deployment;");
+ out.write("import org.jboss.arquillian.container.test.api.Deployment;");
writeEol(out);
out.write("import org.jboss.arquillian.junit.Arquillian;");
writeEol(out);
@@ -113,7 +113,12 @@
out.write("import static org.junit.Assert.*;");
writeEol(out);
writeEol(out);
+ if (def.getMcfDefs().size() == 1)
+ out.write("import " + def.getRaPackage() + ".*;");
+ else
+ out.write("import " + def.getRaPackage() + ".mcf0.*;");
writeEol(out);
+ writeEol(out);
}
/**
@@ -175,17 +180,21 @@
{
out.write(def.getRaClass() + ".class, ");
}
- out.write(def.getMcfClass() + ".class, " + def.getMcClass() + ".class, ");
- if (def.isUseCciConnection())
+ out.write(def.getMcfDefs().get(0).getMcfClass() + ".class, " +
+ def.getMcfDefs().get(0).getMcClass() + ".class, ");
+ if (def.getMcfDefs().get(0).isUseCciConnection())
{
- out.write(def.getCciConnFactoryClass() + ".class, " + def.getCciConnFactoryClass() + ".class, " +
- def.getConnMetaClass() + ".class, " + def.getRaMetaClass() + ".class, " +
- def.getConnSpecClass() + ".class");
+ out.write(def.getMcfDefs().get(0).getCciConnFactoryClass() + ".class, " +
+ def.getMcfDefs().get(0).getCciConnFactoryClass() + ".class, " +
+ def.getMcfDefs().get(0).getConnMetaClass() + ".class, " + def.getRaMetaClass() + ".class, " +
+ def.getMcfDefs().get(0).getConnSpecClass() + ".class");
}
else
{
- out.write(def.getCfInterfaceClass() + ".class, " + def.getCfClass() + ".class, " +
- def.getConnInterfaceClass() + ".class, " + def.getConnImplClass() + ".class");
+ out.write(def.getMcfDefs().get(0).getCfInterfaceClass() + ".class, " +
+ def.getMcfDefs().get(0).getCfClass() + ".class, " +
+ def.getMcfDefs().get(0).getConnInterfaceClass() + ".class, " +
+ def.getMcfDefs().get(0).getConnImplClass() + ".class");
}
out.write(");");
@@ -224,7 +233,10 @@
out.write("@Resource(mappedName = \"java:/eis/" + getClassName(def) + "\")");
writeEol(out);
writeIndent(out, indent);
- out.write("private " + def.getCfInterfaceClass() + " connectionFactory;");
+ if (def.getMcfDefs().get(0).isUseCciConnection())
+ out.write("private javax.resource.cci.ConnectionFactory connectionFactory;");
+ else
+ out.write("private " + def.getMcfDefs().get(0).getCfInterfaceClass() + " connectionFactory;");
writeEol(out);
writeEol(out);
}
@@ -264,7 +276,11 @@
out.write("assertNotNull(connectionFactory);");
writeEol(out);
writeIndent(out, indent + 1);
- out.write(def.getConnInterfaceClass() + " connection = connectionFactory.getConnection();");
+ if (def.getMcfDefs().get(0).isUseCciConnection())
+ out.write("javax.resource.cci.Connection");
+ else
+ out.write(def.getMcfDefs().get(0).getConnInterfaceClass());
+ out.write(" connection = connectionFactory.getConnection();");
writeEol(out);
writeIndent(out, indent + 1);
out.write("assertNotNull(connection);");
@@ -283,7 +299,7 @@
*/
private void writeTestMethod(Definition def, Writer out, int indent) throws IOException
{
- for (MethodForConnection method : def.getMethods())
+ for (MethodForConnection method : def.getMcfDefs().get(0).getMethods())
{
writeIndent(out, indent);
out.write("/**");
@@ -327,7 +343,11 @@
out.write("assertNotNull(connectionFactory);");
writeEol(out);
writeIndent(out, indent + 1);
- out.write(def.getConnInterfaceClass() + " connection = connectionFactory.getConnection();");
+ if (def.getMcfDefs().get(0).isUseCciConnection())
+ out.write("javax.resource.cci.Connection");
+ else
+ out.write(def.getMcfDefs().get(0).getConnInterfaceClass());
+ out.write(" connection = connectionFactory.getConnection();");
writeEol(out);
writeIndent(out, indent + 1);
out.write("assertNotNull(connection);");
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-05-24 23:27:14 UTC (rev 111444)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/xml/IronjacamarXmlGen.java 2011-05-25 11:31:26 UTC (rev 111445)
@@ -60,7 +60,7 @@
getPropsString(strRaProps, raPropsList, 2);
StringBuilder strMcfProps = new StringBuilder();
- List<ConfigPropType> mcfPropsList = def.getMcfConfigProps();
+ List<ConfigPropType> mcfPropsList = def.getMcfDefs().get(0).getMcfConfigProps();
getPropsString(strMcfProps, mcfPropsList, 6);
StringBuilder strAo = new StringBuilder();
@@ -85,7 +85,10 @@
Map<String, String> map = new HashMap<String, String>();
map.put("ra.props", strRaProps.toString());
map.put("transaction", def.getSupportTransaction());
- map.put("mcf.class", def.getRaPackage() + "." + def.getMcfClass());
+ if (def.getMcfDefs().size() == 1)
+ map.put("mcf.class", def.getRaPackage() + "." + def.getMcfDefs().get(0).getMcfClass());
+ else
+ map.put("mcf.class", def.getRaPackage() + ".mcf0." + def.getMcfDefs().get(0).getMcfClass());
map.put("jndi.name", "java:/eis/" + def.getDefaultValue());
map.put("pool.name", def.getDefaultValue());
map.put("mcf.props", strMcfProps.toString());
Modified: projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/xml/Ra10XmlGen.java
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/xml/Ra10XmlGen.java 2011-05-24 23:27:14 UTC (rev 111444)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/xml/Ra10XmlGen.java 2011-05-25 11:31:26 UTC (rev 111445)
@@ -115,27 +115,27 @@
{
writeIndent(out, indent);
out.write("<managedconnectionfactory-class>" + def.getRaPackage() + "." +
- def.getMcfClass() + "</managedconnectionfactory-class>");
+ def.getMcfDefs().get(0).getMcfClass() + "</managedconnectionfactory-class>");
writeEol(out);
writeEol(out);
- if (!def.isUseCciConnection())
+ if (!def.getMcfDefs().get(0).isUseCciConnection())
{
writeIndent(out, indent);
out.write("<connectionfactory-interface>" + def.getRaPackage() + "." +
- def.getCfInterfaceClass() + "</connectionfactory-interface>");
+ def.getMcfDefs().get(0).getCfInterfaceClass() + "</connectionfactory-interface>");
writeEol(out);
writeIndent(out, indent);
out.write("<connectionfactory-impl-class>" + def.getRaPackage() + "." +
- def.getCfClass() + "</connectionfactory-impl-class>");
+ def.getMcfDefs().get(0).getCfClass() + "</connectionfactory-impl-class>");
writeEol(out);
writeIndent(out, indent);
out.write("<connection-interface>" + def.getRaPackage() + "." +
- def.getConnInterfaceClass() + "</connection-interface>");
+ def.getMcfDefs().get(0).getConnInterfaceClass() + "</connection-interface>");
writeEol(out);
writeIndent(out, indent);
out.write("<connection-impl-class>" + def.getRaPackage() + "." +
- def.getConnImplClass() + "</connection-impl-class>");
+ def.getMcfDefs().get(0).getConnImplClass() + "</connection-impl-class>");
writeEol(out);
}
else
@@ -145,14 +145,14 @@
writeEol(out);
writeIndent(out, indent);
out.write("<connectionfactory-impl-class>" + def.getRaPackage() + "." +
- def.getCciConnFactoryClass() + "</connectionfactory-impl-class>");
+ def.getMcfDefs().get(0).getCciConnFactoryClass() + "</connectionfactory-impl-class>");
writeEol(out);
writeIndent(out, indent);
out.write("<connection-interface>javax.resource.cci.Connection</connection-interface>");
writeEol(out);
writeIndent(out, indent);
out.write("<connection-impl-class>" + def.getRaPackage() + "." +
- def.getCciConnClass() + "</connection-impl-class>");
+ def.getMcfDefs().get(0).getCciConnClass() + "</connection-impl-class>");
writeEol(out);
}
@@ -161,7 +161,7 @@
out.write("<transaction-support>" + def.getSupportTransaction() + "</transaction-support>");
writeEol(out);
- writeConfigPropsXml(def.getMcfConfigProps(), out, indent, false);
+ writeConfigPropsXml(def.getMcfDefs().get(0).getMcfConfigProps(), out, indent, false);
writeIndent(out, indent);
out.write("<reauthentication-support>" + def.isSupportReauthen() + "</reauthentication-support>");
Modified: projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/xml/RaXmlGen.java
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/xml/RaXmlGen.java 2011-05-24 23:27:14 UTC (rev 111444)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/xml/RaXmlGen.java 2011-05-25 11:31:26 UTC (rev 111445)
@@ -251,55 +251,61 @@
writeIndent(out, indent);
out.write("<outbound-resourceadapter>");
writeEol(out);
- writeIndent(out, indent + 1);
- out.write("<connection-definition>");
- writeEol(out);
- writeIndent(out, indent + 2);
- out.write("<managedconnectionfactory-class>" + def.getRaPackage() + "." +
- def.getMcfClass() + "</managedconnectionfactory-class>");
- writeEol(out);
- writeConfigPropsXml(def.getMcfConfigProps(), out, indent + 2, false);
-
- if (!def.isUseCciConnection())
+ String mcfPackage;
+ for (int num = 0; num < def.getMcfDefs().size(); num++)
{
- writeIndent(out, indent + 2);
- out.write("<connectionfactory-interface>" + def.getRaPackage() + "." +
- def.getCfInterfaceClass() + "</connectionfactory-interface>");
+ mcfPackage = def.getMcfDefs().size() == 1 ? "" : "mcf" + num + ".";
+ writeIndent(out, indent + 1);
+ out.write("<connection-definition>");
writeEol(out);
writeIndent(out, indent + 2);
- out.write("<connectionfactory-impl-class>" + def.getRaPackage() + "." +
- def.getCfClass() + "</connectionfactory-impl-class>");
+ out.write("<managedconnectionfactory-class>" + def.getRaPackage() + "." + mcfPackage +
+ def.getMcfDefs().get(num).getMcfClass() + "</managedconnectionfactory-class>");
writeEol(out);
- writeIndent(out, indent + 2);
- out.write("<connection-interface>" + def.getRaPackage() + "." +
- def.getConnInterfaceClass() + "</connection-interface>");
+ writeConfigPropsXml(def.getMcfDefs().get(num).getMcfConfigProps(), out, indent + 2, false);
+
+ if (!def.getMcfDefs().get(num).isUseCciConnection())
+ {
+ writeIndent(out, indent + 2);
+ out.write("<connectionfactory-interface>" + def.getRaPackage() + "." + mcfPackage +
+ def.getMcfDefs().get(num).getCfInterfaceClass() + "</connectionfactory-interface>");
+ writeEol(out);
+ writeIndent(out, indent + 2);
+ out.write("<connectionfactory-impl-class>" + def.getRaPackage() + "." + mcfPackage +
+ def.getMcfDefs().get(num).getCfClass() + "</connectionfactory-impl-class>");
+ writeEol(out);
+ writeIndent(out, indent + 2);
+ out.write("<connection-interface>" + def.getRaPackage() + "." + mcfPackage +
+ def.getMcfDefs().get(num).getConnInterfaceClass() + "</connection-interface>");
+ writeEol(out);
+ writeIndent(out, indent + 2);
+ out.write("<connection-impl-class>" + def.getRaPackage() + "." + mcfPackage +
+ def.getMcfDefs().get(num).getConnImplClass() + "</connection-impl-class>");
+ writeEol(out);
+ }
+ else
+ {
+ writeIndent(out, indent + 2);
+ out.write("<connectionfactory-interface>javax.resource.cci.ConnectionFactory" +
+ "</connectionfactory-interface>");
+ writeEol(out);
+ writeIndent(out, indent + 2);
+ out.write("<connectionfactory-impl-class>" + def.getRaPackage() + "." + mcfPackage +
+ def.getMcfDefs().get(num).getCciConnFactoryClass() + "</connectionfactory-impl-class>");
+ writeEol(out);
+ writeIndent(out, indent + 2);
+ out.write("<connection-interface>javax.resource.cci.Connection</connection-interface>");
+ writeEol(out);
+ writeIndent(out, indent + 2);
+ out.write("<connection-impl-class>" + def.getRaPackage() + "." + mcfPackage +
+ def.getMcfDefs().get(num).getCciConnClass() + "</connection-impl-class>");
+ writeEol(out);
+ }
+ writeIndent(out, indent + 1);
+ out.write("</connection-definition>");
writeEol(out);
- writeIndent(out, indent + 2);
- out.write("<connection-impl-class>" + def.getRaPackage() + "." +
- def.getConnImplClass() + "</connection-impl-class>");
- writeEol(out);
}
- else
- {
- writeIndent(out, indent + 2);
- out.write("<connectionfactory-interface>javax.resource.cci.ConnectionFactory</connectionfactory-interface>");
- writeEol(out);
- writeIndent(out, indent + 2);
- out.write("<connectionfactory-impl-class>" + def.getRaPackage() + "." +
- def.getCciConnFactoryClass() + "</connectionfactory-impl-class>");
- writeEol(out);
- writeIndent(out, indent + 2);
- out.write("<connection-interface>javax.resource.cci.Connection</connection-interface>");
- writeEol(out);
- writeIndent(out, indent + 2);
- out.write("<connection-impl-class>" + def.getRaPackage() + "." +
- def.getCciConnClass() + "</connection-impl-class>");
- writeEol(out);
- }
writeIndent(out, indent + 1);
- out.write("</connection-definition>");
- writeEol(out);
- writeIndent(out, indent + 1);
out.write("<transaction-support>" + def.getSupportTransaction() + "</transaction-support>");
writeEol(out);
Modified: projects/jboss-jca/trunk/codegenerator/src/main/resources/codegenerator.properties
===================================================================
--- projects/jboss-jca/trunk/codegenerator/src/main/resources/codegenerator.properties 2011-05-24 23:27:14 UTC (rev 111444)
+++ projects/jboss-jca/trunk/codegenerator/src/main/resources/codegenerator.properties 2011-05-25 11:31:26 UTC (rev 111445)
@@ -19,6 +19,7 @@
config.properties.required=Required (Y/Yes/N/No)
mcf.impl.raa=Use ResourceAdapterAssociation (Y/Yes/N/No)
mcf.use.cci=Use CCI (Y/Yes/N/No)
+more.mcf=More Managed connection factory (Y/Yes/N/No)
ml.interface.name=MessageListener interface name
as.class.name=ActivationSpec class name
as.config.properties=ActivationSpec config properties [enter to quit]:
More information about the jboss-cvs-commits
mailing list