[jboss-cvs] JBossAS SVN: r110863 - projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Mar 9 04:00:04 EST 2011
Author: jeff.zhang
Date: 2011-03-09 04:00:03 -0500 (Wed, 09 Mar 2011)
New Revision: 110863
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/ConnImplCodeGen.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/McfCodeGen.java
Log:
[JBJCA-515] code generation improvement
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-03-09 06:52:57 UTC (rev 110862)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/CfCodeGen.java 2011-03-09 09:00:03 UTC (rev 110863)
@@ -71,7 +71,23 @@
out.write("private Reference reference;");
writeEol(out);
writeEol(out);
+
+ writeIndent(out, indent);
+ out.write("/** ManagedConnectionFactory */");
+ writeEol(out);
+ writeIndent(out, indent);
+ out.write("private " + def.getMcfClass() + " mcf;");
+ writeEol(out);
+ writeEol(out);
+ writeIndent(out, indent);
+ out.write("/** ConnectionManager */");
+ writeEol(out);
+ writeIndent(out, indent);
+ out.write("private ConnectionManager connectionManager;");
+ writeEol(out);
+ writeEol(out);
+
writeDefaultConstructor(def, out, indent);
//constructor
@@ -82,6 +98,9 @@
out.write(" * Default constructor");
writeEol(out);
writeIndent(out, indent);
+ out.write(" * @param mcf ManagedConnectionFactory");
+ writeEol(out);
+ writeIndent(out, indent);
out.write(" * @param cxManager ConnectionManager");
writeEol(out);
writeIndent(out, indent);
@@ -89,8 +108,13 @@
writeEol(out);
writeIndent(out, indent);
- out.write("public " + getClassName(def) + "(ConnectionManager cxManager)");
+ out.write("public " + getClassName(def) + "(" + def.getMcfClass() + " mcf, ConnectionManager cxManager)");
writeLeftCurlyBracket(out, indent);
+ writeIndent(out, indent + 1);
+ out.write("this.mcf = mcf;");
+ writeEol(out);
+ writeIndent(out, indent + 1);
+ out.write("this.connectionManager = cxManager;");
writeRightCurlyBracket(out, indent);
writeEol(out);
@@ -175,7 +199,7 @@
out.write("log.finest(\"getConnection()\");");
writeEol(out);
writeIndent(out, indent + 1);
- out.write("return new " + def.getConnImplClass() + "();");
+ out.write("return (" + def.getConnInterfaceClass() + ")connectionManager.allocateConnection(mcf, null);");
writeRightCurlyBracket(out, indent);
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-03-09 06:52:57 UTC (rev 110862)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/ConnImplCodeGen.java 2011-03-09 09:00:03 UTC (rev 110863)
@@ -58,8 +58,36 @@
writeEol(out);
writeEol(out);
- writeDefaultConstructor(def, out, indent);
+ writeIndent(out, indent);
+ out.write("/** ManagedConnectionFactory */");
+ writeEol(out);
+ writeIndent(out, indent);
+ out.write("private " + def.getMcfClass() + " mcf;");
+ writeEol(out);
+ writeEol(out);
+ //constructor
+ writeIndent(out, indent);
+ out.write("/**");
+ writeEol(out);
+ writeIndent(out, indent);
+ out.write(" * Default constructor");
+ writeEol(out);
+ writeIndent(out, indent);
+ out.write(" * @param mcf " + def.getMcfClass());
+ writeEol(out);
+ writeIndent(out, indent);
+ out.write(" */");
+ writeEol(out);
+
+ writeIndent(out, indent);
+ out.write("public " + getClassName(def) + "(" + def.getMcfClass() + " mcf)");
+ writeLeftCurlyBracket(out, indent);
+ writeIndent(out, indent + 1);
+ out.write("this.mcf = mcf;");
+ writeRightCurlyBracket(out, indent);
+ writeEol(out);
+
writeMethod(def, out, indent);
writeRightCurlyBracket(out, 0);
}
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-03-09 06:52:57 UTC (rev 110862)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/McCodeGen.java 2011-03-09 09:00:03 UTC (rev 110863)
@@ -65,8 +65,47 @@
writeEol(out);
writeEol(out);
- writeDefaultConstructor(def, out, indent);
+ writeIndent(out, indent);
+ out.write("/** ManagedConnectionFactory */");
+ writeEol(out);
+ writeIndent(out, indent);
+ out.write("private " + def.getMcfClass() + " mcf;");
+ writeEol(out);
+ writeEol(out);
+ writeIndent(out, indent);
+ out.write("/** Connection */");
+ writeEol(out);
+ writeIndent(out, indent);
+ out.write("private Object connection;");
+ writeEol(out);
+ writeEol(out);
+
+ //constructor
+ writeIndent(out, indent);
+ out.write("/**");
+ writeEol(out);
+ writeIndent(out, indent);
+ out.write(" * Default constructor");
+ writeEol(out);
+ writeIndent(out, indent);
+ out.write(" * @param mcf mcf");
+ writeEol(out);
+ writeIndent(out, indent);
+ out.write(" */");
+ writeEol(out);
+
+ writeIndent(out, indent);
+ out.write("public " + getClassName(def) + "(" + def.getMcfClass() + " mcf)");
+ writeLeftCurlyBracket(out, indent);
+ writeIndent(out, indent + 1);
+ out.write("this.mcf = mcf;");
+ writeEol(out);
+ writeIndent(out, indent + 1);
+ out.write("this.connection = null;");
+ writeRightCurlyBracket(out, indent);
+ writeEol(out);
+
writeConnection(def, out, indent);
writeLifecycle(def, out, indent);
writeConnectionEventListener(def, out, indent);
@@ -173,7 +212,10 @@
out.write("log.finest(\"getConnection()\");");
writeEol(out);
writeIndent(out, indent + 1);
- out.write("return null;");
+ out.write("connection = new " + def.getConnImplClass() + "(mcf);");
+ writeEol(out);
+ writeIndent(out, indent + 1);
+ out.write("return connection;");
writeRightCurlyBracket(out, indent);
writeEol(out);
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-03-09 06:52:57 UTC (rev 110862)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/code/McfCodeGen.java 2011-03-09 09:00:03 UTC (rev 110863)
@@ -256,10 +256,6 @@
writeIndent(out, indent);
out.write("public Object createConnectionFactory(ConnectionManager cxManager) throws ResourceException");
writeLeftCurlyBracket(out, indent);
- if (def.isImplRaAssociation())
- {
- writeIfRaNull(out, indent);
- }
writeIndent(out, indent + 1);
out.write("log.finest(\"createConnectionFactory()\");");
writeEol(out);
@@ -267,7 +263,7 @@
if (def.isUseCciConnection())
out.write("return new " + def.getCciConnFactoryClass() + "(cxManager);");
else
- out.write("return new " + def.getCfClass() + "(cxManager);");
+ out.write("return new " + def.getCfClass() + "(this, cxManager);");
writeRightCurlyBracket(out, indent);
writeEol(out);
@@ -295,33 +291,12 @@
writeIndent(out, indent);
out.write("public Object createConnectionFactory() throws ResourceException");
writeLeftCurlyBracket(out, indent);
- if (def.isImplRaAssociation())
- {
- writeIfRaNull(out, indent);
- }
-
writeIndent(out, indent + 1);
out.write("throw new ResourceException(\"This resource adapter doesn't support non-managed environments\");");
writeRightCurlyBracket(out, indent);
writeEol(out);
}
-
- /**
- * Output if (ra == null)
- * @param out Writer
- * @param indent space number
- * @throws IOException ioException
- */
- private void writeIfRaNull(Writer out, int indent) throws IOException
- {
- writeIndent(out, indent + 1);
- out.write("if (ra == null)");
- writeEol(out);
- writeIndent(out, indent + 2);
- out.write("throw new IllegalStateException(\"RA is null\");");
- writeEol(out);
- }
/**
* Output ConnectionFactory method
@@ -364,15 +339,11 @@
writeIndent(out, indent + 2);
out.write("ConnectionRequestInfo cxRequestInfo) throws ResourceException");
writeLeftCurlyBracket(out, indent);
- if (def.isImplRaAssociation())
- {
- writeIfRaNull(out, indent);
- }
writeIndent(out, indent + 1);
out.write("log.finest(\"createManagedConnection()\");");
writeEol(out);
writeIndent(out, indent + 1);
- out.write("return null;");
+ out.write("return new " + def.getMcClass() + "(this);");
writeRightCurlyBracket(out, indent);
writeEol(out);
@@ -411,10 +382,6 @@
writeIndent(out, indent + 2);
out.write("Subject subject, ConnectionRequestInfo cxRequestInfo) throws ResourceException");
writeLeftCurlyBracket(out, indent);
- if (def.isImplRaAssociation())
- {
- writeIfRaNull(out, indent);
- }
writeIndent(out, indent + 1);
out.write("log.finest(\"matchManagedConnections()\");");
writeEol(out);
More information about the jboss-cvs-commits
mailing list