[jboss-cvs] JBossAS SVN: r106228 - projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Jun 22 22:20:30 EDT 2010
Author: jeff.zhang
Date: 2010-06-22 22:20:30 -0400 (Tue, 22 Jun 2010)
New Revision: 106228
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/Main.java
Log:
[JBJCA-365] Generator proper default values for inputs
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 2010-06-23 00:26:12 UTC (rev 106227)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/Definition.java 2010-06-23 02:20:30 UTC (rev 106228)
@@ -38,6 +38,8 @@
/** resource adapter package name */
private String raPackage;
+ /** default value for proper input */
+ private String defaultValue = "Acme";
/** use annotation or ra.xml */
private boolean useAnnotation;
@@ -183,6 +185,10 @@
*/
public String getRaClass()
{
+ if (raClass == null || raClass.equals(""))
+ {
+ raClass = getDefaultValue() + "ResourceAdpater";
+ }
return raClass;
}
@@ -223,6 +229,10 @@
*/
public String getMcfClass()
{
+ if (mcfClass == null || mcfClass.equals(""))
+ {
+ mcfClass = getDefaultValue() + "ManagedConnectionFactory";
+ }
return mcfClass;
}
@@ -243,6 +253,10 @@
*/
public String getMcClass()
{
+ if (mcClass == null || mcClass.equals(""))
+ {
+ mcClass = getDefaultValue() + "ManagedConnection";
+ }
return mcClass;
}
@@ -263,6 +277,10 @@
*/
public String getConnInterfaceClass()
{
+ if (connInterfaceClass == null || connInterfaceClass.equals(""))
+ {
+ connInterfaceClass = getDefaultValue() + "ConnectionInterface";
+ }
return connInterfaceClass;
}
@@ -283,6 +301,10 @@
*/
public String getConnImplClass()
{
+ if (connImplClass == null || connImplClass.equals(""))
+ {
+ connImplClass = getDefaultValue() + "ConnectionImpl";
+ }
return connImplClass;
}
@@ -451,6 +473,10 @@
*/
public String getCfClass()
{
+ if (cfClass == null || cfClass.equals(""))
+ {
+ cfClass = getDefaultValue() + "ConnectionFactory";
+ }
return cfClass;
}
@@ -471,6 +497,10 @@
*/
public String getCfInterfaceClass()
{
+ if (cfInterfaceClass == null || cfInterfaceClass.equals(""))
+ {
+ cfInterfaceClass = getDefaultValue() + "ConnectionFactoryInterface";
+ }
return cfInterfaceClass;
}
@@ -617,6 +647,10 @@
*/
public String getMlClass()
{
+ if (mlClass == null || mlClass.equals(""))
+ {
+ mlClass = getDefaultValue() + "MessageListener";
+ }
return mlClass;
}
@@ -637,6 +671,10 @@
*/
public String getAsClass()
{
+ if (asClass == null || asClass.equals(""))
+ {
+ asClass = getDefaultValue() + "ActivationSpec";
+ }
return asClass;
}
@@ -697,6 +735,10 @@
*/
public String getActivationClass()
{
+ if (activationClass == null || activationClass.equals(""))
+ {
+ activationClass = getDefaultValue() + "Activation";
+ }
return activationClass;
}
@@ -760,4 +802,24 @@
return methods;
}
+ /**
+ * Set the defaultValue.
+ *
+ * @param defaultValue The defaultValue to set.
+ */
+ public void setDefaultValue(String defaultValue)
+ {
+ this.defaultValue = defaultValue;
+ }
+
+ /**
+ * Get the defaultValue.
+ *
+ * @return the defaultValue.
+ */
+ public String getDefaultValue()
+ {
+ return defaultValue;
+ }
+
}
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 2010-06-23 00:26:12 UTC (rev 106227)
+++ projects/jboss-jca/trunk/codegenerator/src/main/java/org/jboss/jca/codegenerator/Main.java 2010-06-23 02:20:30 UTC (rev 106228)
@@ -40,6 +40,9 @@
{
private static final int OTHER = 2;
+ /** ResourceBundle */
+ private static ResourceBundle rb = ResourceBundle.getBundle("codegenerator", Locale.getDefault());
+
/**
* Code generator stand alone tool
*
@@ -79,250 +82,309 @@
{
File out = new File(outputDir);
Utils.recursiveDelete(out);
+
+ inputFromCommandLine(outputDir);
- ResourceBundle dbconf = ResourceBundle.getBundle("codegenerator", Locale.getDefault());
+ copyAllJars(outputDir);
+
+ System.out.println(rb.getString("code.wrote"));
+ }
+ catch (IOException e)
+ {
+ e.printStackTrace();
+ }
+ }
- BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
- Definition def = new Definition();
-
- //profile version
- String version = null;
- do
+ /**
+ * input from command line
+ *
+ * @param outputDir output directory
+ * @throws IOException ioException
+ */
+ private static void inputFromCommandLine(String outputDir) throws IOException
+ {
+ BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
+ Definition def = new Definition();
+
+ //profile version
+ String version = null;
+ do
+ {
+ System.out.print(rb.getString("profile.version"));
+ version = in.readLine();
+ if (version == null || version.equals(""))
+ version = "1.6";
+ }
+ while (!(version.equals("1.6") || version.equals("1.5") || version.equals("1.0")));
+ def.setVersion(version);
+
+ //by default, support outbound, but not inbound
+ def.setSupportOutbound(true);
+ def.setSupportInbound(false);
+
+ //bound
+ if (!version.equals("1.0"))
+ {
+ System.out.print(rb.getString("support.bound"));
+ String bound = in.readLine();
+ if (bound == null || bound.equals("") || bound.equals("O") || bound.equals("o") || bound.equals("Outbound"))
{
- System.out.print(dbconf.getString("profile.version"));
- version = in.readLine();
- if (version == null || version.equals(""))
- version = "1.6";
+ //keep default bound
}
- while (!(version.equals("1.6") || version.equals("1.5") || version.equals("1.0")));
- def.setVersion(version);
-
- //by default, support outbound, but not inbound
- def.setSupportOutbound(true);
- def.setSupportInbound(false);
-
- //bound
- if (!version.equals("1.0"))
+ else if (bound.equals("I") || bound.equals("i") || bound.equals("Inbound"))
{
- System.out.print(dbconf.getString("support.bound"));
- String bound = in.readLine();
- if (bound == null || bound.equals("") || bound.equals("O") || bound.equals("o") || bound.equals("Outbound"))
- {
- //keep default bound
- }
- else if (bound.equals("I") || bound.equals("i") || bound.equals("Inbound"))
- {
- def.setSupportOutbound(false);
- def.setSupportInbound(true);
- }
- else if (bound.equals("B") || bound.equals("b") || bound.equals("Bidirectional"))
- {
- def.setSupportOutbound(true);
- def.setSupportInbound(true);
- }
+ def.setSupportOutbound(false);
+ def.setSupportInbound(true);
}
-
- //transaction
- if (def.isSupportOutbound())
+ else if (bound.equals("B") || bound.equals("b") || bound.equals("Bidirectional"))
{
- System.out.print(dbconf.getString("support.transaction"));
- String trans = in.readLine();
- if (trans == null || trans.equals(""))
- def.setSupportTransaction("NoTransaction");
- else if (trans.equals("L") || trans.equals("l") || trans.equals("LocalTransaction"))
- {
- def.setSupportTransaction("LocalTransaction");
- }
- else if (trans.equals("X") || trans.equals("x") || trans.equals("XATransaction"))
- {
- def.setSupportTransaction("XATransaction");
- }
- else
- {
- def.setSupportTransaction("NoTransaction");
- }
+ def.setSupportOutbound(true);
+ def.setSupportInbound(true);
}
-
- //package name
- System.out.print(dbconf.getString("package.name"));
- String packageName = in.readLine();
- def.setRaPackage(packageName);
-
- //support annotation
- if (version.equals("1.6"))
+ }
+
+ //transaction
+ if (def.isSupportOutbound())
+ {
+ System.out.print(rb.getString("support.transaction"));
+ String trans = in.readLine();
+ if (trans == null || trans.equals(""))
+ def.setSupportTransaction("NoTransaction");
+ else if (trans.equals("L") || trans.equals("l") || trans.equals("LocalTransaction"))
{
- System.out.print(dbconf.getString("use.annotation"));
- String useAnnotation = in.readLine();
- if (useAnnotation == null)
- def.setUseAnnotation(true);
- else
- {
- if (useAnnotation.equals("N") || useAnnotation.equals("n") || useAnnotation.equals("No"))
- def.setUseAnnotation(false);
- else
- def.setUseAnnotation(true);
- }
+ def.setSupportTransaction("LocalTransaction");
}
+ else if (trans.equals("X") || trans.equals("x") || trans.equals("XATransaction"))
+ {
+ def.setSupportTransaction("XATransaction");
+ }
else
{
- def.setUseAnnotation(false);
+ def.setSupportTransaction("NoTransaction");
}
-
- //use resource adapter
- if (def.isSupportOutbound() && !def.isSupportInbound() && (version.equals("1.6") || version.equals("1.5")))
+ }
+
+ //package name
+ System.out.print(rb.getString("package.name"));
+ String packageName = in.readLine();
+ def.setRaPackage(packageName);
+
+ //support annotation
+ if (version.equals("1.6"))
+ {
+ System.out.print(rb.getString("use.annotation"));
+ String useAnnotation = in.readLine();
+ if (useAnnotation == null)
+ def.setUseAnnotation(true);
+ else
{
- System.out.print(dbconf.getString("use.ra"));
- String useRa = in.readLine();
- if (useRa == null)
- def.setUseRa(true);
+ if (useAnnotation.equals("N") || useAnnotation.equals("n") || useAnnotation.equals("No"))
+ def.setUseAnnotation(false);
else
- {
- if (useRa.equals("N") || useRa.equals("n") || useRa.equals("No"))
- def.setUseRa(false);
- else
- def.setUseRa(true);
- }
+ def.setUseAnnotation(true);
}
- else if (version.equals("1.0"))
- {
- def.setUseRa(false);
- }
+ }
+ else
+ {
+ def.setUseAnnotation(false);
+ }
+
+ //use resource adapter
+ if (def.isSupportOutbound() && !def.isSupportInbound() && (version.equals("1.6") || version.equals("1.5")))
+ {
+ System.out.print(rb.getString("use.ra"));
+ String useRa = in.readLine();
+ if (useRa == null)
+ def.setUseRa(true);
else
{
- def.setUseRa(true);
+ if (useRa.equals("N") || useRa.equals("n") || useRa.equals("No"))
+ def.setUseRa(false);
+ else
+ def.setUseRa(true);
}
-
- //input ra class name
- if (def.isUseRa() || def.isSupportInbound())
+ }
+ else if (version.equals("1.0"))
+ {
+ def.setUseRa(false);
+ }
+ else
+ {
+ def.setUseRa(true);
+ }
+
+ //input ra class name
+ if (def.isUseRa() || def.isSupportInbound())
+ {
+ System.out.print(rb.getString("ra.class.name"));
+ System.out.print("[" + def.getRaClass() + "] ");
+ String raClassName = in.readLine();
+ if (raClassName != null && !raClassName.equals(""))
{
- System.out.print(dbconf.getString("ra.class.name"));
- String raClassName = in.readLine();
def.setRaClass(raClassName);
-
- List<ConfigPropType> raProps = inputProperties("ra", dbconf, in, false);
- def.setRaConfigProps(raProps);
+ setDefaultValue(def, raClassName, "ResourceAdpater");
+ setDefaultValue(def, raClassName, "Ra");
}
- //outbound
- if (def.isSupportOutbound())
+ List<ConfigPropType> raProps = inputProperties("ra", in, false);
+ def.setRaConfigProps(raProps);
+ }
+
+ //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(""))
{
- System.out.print(dbconf.getString("mcf.class.name"));
- String mcfClassName = in.readLine();
def.setMcfClass(mcfClassName);
-
- List<ConfigPropType> mcfProps = inputProperties("mcf", dbconf, in, false);
- def.setMcfConfigProps(mcfProps);
+ setDefaultValue(def, mcfClassName, "ManagedConnectionfactory");
+ setDefaultValue(def, mcfClassName, "Mcf");
+ }
+
+ List<ConfigPropType> mcfProps = inputProperties("mcf", in, false);
+ def.setMcfConfigProps(mcfProps);
- if (def.isUseRa())
+ if (def.isUseRa())
+ {
+ System.out.print(rb.getString("mcf.impl.raa"));
+ String raAssociation = in.readLine();
+ if (raAssociation == null)
+ def.setImplRaAssociation(false);
+ else
{
- System.out.print(dbconf.getString("mcf.impl.raa"));
- String raAssociation = in.readLine();
- if (raAssociation == null)
+ if (raAssociation.equals("Y") || raAssociation.equals("y") || raAssociation.equals("Yes"))
+ def.setImplRaAssociation(true);
+ else
def.setImplRaAssociation(false);
- else
- {
- if (raAssociation.equals("Y") || raAssociation.equals("y") || raAssociation.equals("Yes"))
- def.setImplRaAssociation(true);
- else
- def.setImplRaAssociation(false);
- }
}
-
- System.out.print(dbconf.getString("mc.class.name"));
- String mcClassName = in.readLine();
+ }
+
+ 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(dbconf.getString("mcf.use.cci"));
- String useCciConnection = in.readLine();
- if (useCciConnection == null)
+
+ System.out.print(rb.getString("mcf.use.cci"));
+ 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);
- 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);
- if (!def.isUseCciConnection())
- {
- System.out.print(dbconf.getString("cf.interface.name"));
- String cfInterfaceName = in.readLine();
- def.setCfInterfaceClass(cfInterfaceName);
- System.out.print(dbconf.getString("cf.class.name"));
- String cfClassName = in.readLine();
+ 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(dbconf.getString("conn.interface.name"));
- String connInterfaceName = in.readLine();
+
+ 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(dbconf.getString("conn.class.name"));
- String connImplName = in.readLine();
+
+ 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(dbconf.getString("connection.method.support"));
- String supportMethod = in.readLine();
- if (supportMethod == null)
+
+ System.out.print(rb.getString("connection.method.support"));
+ String supportMethod = in.readLine();
+ if (supportMethod == null)
+ def.setDefineMethodInConnection(false);
+ else
+ {
+ if (supportMethod.equals("Y") || supportMethod.equals("y") || supportMethod.equals("Yes"))
+ def.setDefineMethodInConnection(true);
+ else
def.setDefineMethodInConnection(false);
- else
- {
- if (supportMethod.equals("Y") || supportMethod.equals("y") || supportMethod.equals("Yes"))
- def.setDefineMethodInConnection(true);
- else
- def.setDefineMethodInConnection(false);
- }
- if (def.isDefineMethodInConnection())
- {
- def.setMethods(inputMethod(dbconf, in));
- }
}
+ if (def.isDefineMethodInConnection())
+ {
+ def.setMethods(inputMethod(in));
+ }
}
-
+ }
+
- //inbound
- if (def.isSupportInbound())
+ //inbound
+ if (def.isSupportInbound())
+ {
+ System.out.print(rb.getString("ml.interface.name"));
+ System.out.print("[" + def.getMlClass() + "] ");
+ String mlClassName = in.readLine();
+ if (mlClassName != null && !mlClassName.equals(""))
{
- System.out.print(dbconf.getString("ml.interface.name"));
- String mlClassName = in.readLine();
def.setMlClass(mlClassName);
- System.out.print(dbconf.getString("as.class.name"));
- String asClassName = in.readLine();
- def.setAsClass(asClassName);
- List<ConfigPropType> asProps = inputProperties("as", dbconf, in, true);
- def.setAsConfigProps(asProps);
- System.out.print(dbconf.getString("acti.class.name"));
- String actiClassName = in.readLine();
- def.setActivationClass(actiClassName);
+ setDefaultValue(def, mlClassName, "MessageListener");
+ setDefaultValue(def, mlClassName, "Ml");
}
- def.setOutputDir(outputDir);
-
- Profile profile;
- if (version.equals("1.6"))
- {
- profile = new JCA16Profile();
- }
- else if (version.equals("1.5"))
- {
- profile = new JCA15Profile();
- }
- else
- {
- profile = new JCA10Profile();
- }
- profile.generate(def);
+ System.out.print(rb.getString("as.class.name"));
+ System.out.print("[" + def.getAsClass() + "] ");
+ String asClassName = in.readLine();
+ if (asClassName != null && !asClassName.equals(""))
+ def.setAsClass(asClassName);
- copyAllJars(outputDir);
+ List<ConfigPropType> asProps = inputProperties("as", in, true);
+ def.setAsConfigProps(asProps);
- System.out.println(dbconf.getString("code.wrote"));
+ System.out.print(rb.getString("acti.class.name"));
+ System.out.print("[" + def.getActivationClass() + "] ");
+ String actiClassName = in.readLine();
+ if (actiClassName != null && !actiClassName.equals(""))
+ def.setActivationClass(actiClassName);
}
- catch (IOException e)
+
+ def.setOutputDir(outputDir);
+
+ Profile profile;
+ if (version.equals("1.6"))
{
- e.printStackTrace();
+ profile = new JCA16Profile();
}
+ else if (version.equals("1.5"))
+ {
+ profile = new JCA15Profile();
+ }
+ else
+ {
+ profile = new JCA10Profile();
+ }
+ profile.generate(def);
}
/**
+ * check defalut value and set it
+ *
+ * @param def definition
+ * @param className
+ * @param stringvalue TODO
+ */
+ private static void setDefaultValue(Definition def, String className, String stringvalue)
+ {
+ if (className.endsWith(stringvalue))
+ def.setDefaultValue(className.substring(0, className.length() - stringvalue.length()));
+ }
+
+ /**
* copy all jars
* @param outputDir output directory
* @throws IOException ioException
@@ -345,39 +407,38 @@
/**
* Input Properties
* @param classname belong to which java class
- * @param dbconf ResourceBundle
* @param in BufferedReader
* @param supportRequired need input required property
* @return List<ConfigPropType> list of properties
* @throws IOException ioException
*/
private static List<ConfigPropType> inputProperties(String classname,
- ResourceBundle dbconf, BufferedReader in, boolean supportRequired)
+ BufferedReader in, boolean supportRequired)
throws IOException
{
List<ConfigPropType> props = new ArrayList<ConfigPropType>();
while (true)
{
- System.out.println(dbconf.getString(classname + ".config.properties"));
- System.out.print(" " + dbconf.getString("config.properties.name"));
+ System.out.println(rb.getString(classname + ".config.properties"));
+ System.out.print(" " + rb.getString("config.properties.name"));
String name = in.readLine();
if (name == null || name.equals(""))
break;
- System.out.print(" " + dbconf.getString("config.properties.type"));
+ System.out.print(" " + rb.getString("config.properties.type"));
String type = in.readLine();
if (!BasicType.isBasicType(type))
{
- System.out.print(dbconf.getString("config.properties.type.tip") + " [");
+ System.out.print(rb.getString("config.properties.type.tip") + " [");
System.out.println(BasicType.allBasicType() + "]");
continue;
}
- System.out.print(" " + dbconf.getString("config.properties.value"));
+ System.out.print(" " + rb.getString("config.properties.value"));
String value = in.readLine();
boolean required = false;
if (supportRequired)
{
- System.out.print(" " + dbconf.getString("config.properties.required"));
+ System.out.print(" " + rb.getString("config.properties.required"));
String propRequired = in.readLine();
if (propRequired == null)
required = false;
@@ -399,41 +460,40 @@
/**
* Input Methods
- * @param dbconf ResourceBundle
* @param in BufferedReader
* @return List<MethodForConnection> list of properties
* @throws IOException ioException
*/
- private static List<MethodForConnection> inputMethod(ResourceBundle dbconf, BufferedReader in)
+ private static List<MethodForConnection> inputMethod(BufferedReader in)
throws IOException
{
List<MethodForConnection> methods = new ArrayList<MethodForConnection>();
while (true)
{
- System.out.print(" " + dbconf.getString("connection.method.name"));
+ System.out.print(" " + rb.getString("connection.method.name"));
String methodName = in.readLine();
if (methodName == null || methodName.equals(""))
break;
MethodForConnection method = new MethodForConnection();
method.setMethodName(methodName);
- System.out.print(" " + dbconf.getString("connection.method.return"));
+ System.out.print(" " + rb.getString("connection.method.return"));
String methodReturn = in.readLine();
if (!(methodReturn == null || methodReturn.equals("")))
method.setReturnType(methodReturn);
while (true)
{
- System.out.print(" " + dbconf.getString("connection.method.param.name"));
+ System.out.print(" " + rb.getString("connection.method.param.name"));
String paramName = in.readLine();
if (paramName == null || paramName.equals(""))
break;
String paramType = null;
while (true)
{
- System.out.print(" " + dbconf.getString("connection.method.param.type"));
+ System.out.print(" " + rb.getString("connection.method.param.type"));
paramType = in.readLine();
if (BasicType.isBasicType(paramType) || BasicType.isPrimitiveType(paramType))
break;
- System.out.print(dbconf.getString("config.properties.type.tip") + " [");
+ System.out.print(rb.getString("config.properties.type.tip") + " [");
System.out.println(BasicType.allType() + "]");
}
@@ -443,7 +503,7 @@
while (true)
{
- System.out.print(" " + dbconf.getString("connection.method.exception"));
+ System.out.print(" " + rb.getString("connection.method.exception"));
String exceptions = in.readLine();
if (exceptions == null || exceptions.equals(""))
break;
More information about the jboss-cvs-commits
mailing list