You are viewing a plain text version of this content. The canonical link for it is here.
Posted to wsif-dev@ws.apache.org by hc...@apache.org on 2005/03/15 01:04:32 UTC
cvs commit: ws-wsif/swingWsInvoker/src/org/apache/wsif/wsinvoker/grammar/java JavaParseTree.java
hchan 2005/03/14 16:04:32
Modified: swingWsInvoker/src/org/apache/commons/logging Log.java
LogConfigurationException.java LogFactory.java
LogSource.java
swingWsInvoker/src/org/apache/commons/logging/impl
Jdk13LumberjackLogger.java Jdk14Logger.java
Log4JCategoryLog.java Log4JLogger.java
LogFactoryImpl.java NoOpLog.java SimpleLog.java
swingWsInvoker/src/org/apache/wsif/wsinvoker
ComplexTypeTextArea.java InvokeActionListener.java
InvokePanel.java SimpleTypeTextField.java
WSInvoker.java
swingWsInvoker/src/org/apache/wsif/wsinvoker/grammar/java
JavaParseTree.java
Log:
fixed array bug
Revision Changes Path
1.2 +0 -0 ws-wsif/swingWsInvoker/src/org/apache/commons/logging/Log.java
1.2 +0 -0 ws-wsif/swingWsInvoker/src/org/apache/commons/logging/LogConfigurationException.java
1.2 +0 -0 ws-wsif/swingWsInvoker/src/org/apache/commons/logging/LogFactory.java
1.2 +0 -0 ws-wsif/swingWsInvoker/src/org/apache/commons/logging/LogSource.java
1.2 +0 -0 ws-wsif/swingWsInvoker/src/org/apache/commons/logging/impl/Jdk13LumberjackLogger.java
1.2 +0 -0 ws-wsif/swingWsInvoker/src/org/apache/commons/logging/impl/Jdk14Logger.java
1.2 +0 -0 ws-wsif/swingWsInvoker/src/org/apache/commons/logging/impl/Log4JCategoryLog.java
1.2 +0 -0 ws-wsif/swingWsInvoker/src/org/apache/commons/logging/impl/Log4JLogger.java
1.2 +0 -0 ws-wsif/swingWsInvoker/src/org/apache/commons/logging/impl/LogFactoryImpl.java
1.2 +0 -0 ws-wsif/swingWsInvoker/src/org/apache/commons/logging/impl/NoOpLog.java
1.2 +0 -0 ws-wsif/swingWsInvoker/src/org/apache/commons/logging/impl/SimpleLog.java
1.2 +49 -27 ws-wsif/swingWsInvoker/src/org/apache/wsif/wsinvoker/ComplexTypeTextArea.java
Index: ComplexTypeTextArea.java
===================================================================
RCS file: /home/cvs/ws-wsif/swingWsInvoker/src/org/apache/wsif/wsinvoker/ComplexTypeTextArea.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- ComplexTypeTextArea.java 20 Feb 2005 00:54:30 -0000 1.1
+++ ComplexTypeTextArea.java 15 Mar 2005 00:04:32 -0000 1.2
@@ -93,45 +93,67 @@
private ClassLoader classLoader = null;
public ComplexTypeTextArea(Class clazz, WSInvoker wsinvoker) {
- super();
+ super();
this.clazz = clazz;
this.wsinvoker = wsinvoker;
scrollPane = new JScrollPane();
- textArea = new JTextArea(0, 0);
- setDefaultText();
+ textArea = new JTextArea(0, 0);
+ setDefaultText();
saveJavaFile();
scrollPane.setViewportView(textArea);
this.add(scrollPane);
+
}
/**
*
*/
private void setDefaultText() {
- String classShortName = clazz.getName();
-
- String generatedClassName = getNextGeneratedClassName();
-
- int indexOfLastDot = classShortName.lastIndexOf('.');
- if (indexOfLastDot != -1) {
- classShortName = classShortName.substring(indexOfLastDot + 1);
- }
- String packageName = clazz.getName().substring(0, clazz.getName().lastIndexOf('.'));
- String classShortNameMixedUCase = classShortName;
- String firstChar = classShortNameMixedUCase.substring(0,1);
- classShortNameMixedUCase = classShortNameMixedUCase.replaceFirst(firstChar, firstChar.toUpperCase());
- methodName = "get" + classShortNameMixedUCase;
- textArea.setText("package " + GENERATED_PACKAGENAME + ";\n");
- textArea.append("import " + packageName + ".*;\n\n");
- textArea.append("public class " + generatedClassName + " {\n");
- textArea.append("\t// this method is used to create the SOAP request parameter used in this operation\n");
- textArea.append("\tpublic static " + classShortName + " " + methodName + " () {\n");
- textArea.append("\t\t" + classShortName + " retval = null;\n");
- textArea.append("\t\treturn retval;\n");
- textArea.append("\t}\n");
- createJavaGetters();
- textArea.append("}\n");
- textArea.setCaretPosition(0);
+ String classShortName = null;
+ String generatedClassName = getNextGeneratedClassName();
+ String packageName = null;
+
+ if (!clazz.isArray()) {
+ packageName = clazz.getName().substring(0, clazz.getName().lastIndexOf('.'));
+ classShortName = clazz.getName();
+ } else {
+ String componentTypeName = clazz.getComponentType().getName();
+ try {
+ packageName = componentTypeName.substring(0, componentTypeName.lastIndexOf('.'));
+ } catch (StringIndexOutOfBoundsException e) {
+ // ignore
+ }
+ classShortName = componentTypeName + "[]";
+ }
+ int indexOfLastDot = classShortName.lastIndexOf('.');
+ if (indexOfLastDot != -1) {
+ classShortName = classShortName.substring(indexOfLastDot + 1);
+ }
+
+ String classShortNameMixedUCase = null;
+ if (!clazz.isArray()) {
+ classShortNameMixedUCase = classShortName;
+ } else {
+ classShortNameMixedUCase = classShortName.substring(0, classShortName.length() - 2);
+ }
+ String firstChar = classShortNameMixedUCase.substring(0,1);
+
+ classShortNameMixedUCase = classShortNameMixedUCase.replaceFirst(firstChar, firstChar.toUpperCase());
+ methodName = "get" + classShortNameMixedUCase;
+ textArea.setText("package " + GENERATED_PACKAGENAME + ";\n");
+ if (packageName != null) {
+ textArea.append("import " + packageName + ".*;\n\n");
+ }
+
+ textArea.append("public class " + generatedClassName + " {\n");
+ textArea.append("\t// this method is used to create the SOAP request parameter used in this operation\n");
+ textArea.append("\tpublic static " + classShortName + " " + methodName + " () {\n");
+ textArea.append("\t\t" + classShortName + " retval = null;\n");
+ textArea.append("\t\treturn retval;\n");
+ textArea.append("\t}\n");
+ createJavaGetters();
+ textArea.append("}\n");
+ textArea.setCaretPosition(0);
}
/**
1.2 +1 -1 ws-wsif/swingWsInvoker/src/org/apache/wsif/wsinvoker/InvokeActionListener.java
Index: InvokeActionListener.java
===================================================================
RCS file: /home/cvs/ws-wsif/swingWsInvoker/src/org/apache/wsif/wsinvoker/InvokeActionListener.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- InvokeActionListener.java 20 Feb 2005 00:54:30 -0000 1.1
+++ InvokeActionListener.java 15 Mar 2005 00:04:32 -0000 1.2
@@ -248,7 +248,7 @@
private Object[] getInvokeArgs(Method method, Object[] args) throws ParseException, IllegalArgumentException, CompileException, ClassNotFoundException, InstantiationException, IllegalAccessException, InvocationTargetException {
Class[] paramTypes = method.getParameterTypes();
Object[] retval = new Object[paramTypes.length];
- for (int i = 0; i < paramTypes.length; i++) {
+ for (int i = 0; i < paramTypes.length; i++) {
if (args[i] instanceof SimpleTypeTextField) {
SimpleTypeTextField sttf = (SimpleTypeTextField)args[i];
retval[i] = sttf.getSimpleObject();
1.2 +8 -3 ws-wsif/swingWsInvoker/src/org/apache/wsif/wsinvoker/InvokePanel.java
Index: InvokePanel.java
===================================================================
RCS file: /home/cvs/ws-wsif/swingWsInvoker/src/org/apache/wsif/wsinvoker/InvokePanel.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- InvokePanel.java 20 Feb 2005 00:54:30 -0000 1.1
+++ InvokePanel.java 15 Mar 2005 00:04:32 -0000 1.2
@@ -118,7 +118,12 @@
Class clazz = params[i];
int gap = 5;
String inputParamName = "";
- String inputParamType = clazz.getName();
+ String inputParamType = "";
+ if (clazz.isArray()) {
+ inputParamType = clazz.getComponentType() + "[]";
+ } else {
+ inputParamType = clazz.getName();
+ }
String labelStr = " " + inputParamType + " " + inputParamName;
if (labelStr.length() > retColSize) {
@@ -127,13 +132,13 @@
JLabel inputParamLabel = getInputParamLabel(labelStr, method, i);
JComponent inputParamField = null;
- if (SimpleTypeTextField.isSimpleType(clazz)) {
+ if (SimpleTypeTextField.isSimpleType(clazz)) {
SimpleTypeTextField sttf = new SimpleTypeTextField(clazz);
if (canPopWithDefault) {
sttf.populateWithDefault();
}
inputParamField = sttf;
- } else {
+ } else {
ComplexTypeTextArea ctta = new ComplexTypeTextArea(clazz, wsinvoker);
inputParamField = ctta;
}
1.2 +6 -4 ws-wsif/swingWsInvoker/src/org/apache/wsif/wsinvoker/SimpleTypeTextField.java
Index: SimpleTypeTextField.java
===================================================================
RCS file: /home/cvs/ws-wsif/swingWsInvoker/src/org/apache/wsif/wsinvoker/SimpleTypeTextField.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- SimpleTypeTextField.java 20 Feb 2005 00:54:30 -0000 1.1
+++ SimpleTypeTextField.java 15 Mar 2005 00:04:32 -0000 1.2
@@ -80,13 +80,13 @@
this.clazz = clazz;
}
- public static boolean isSimpleType (Class clazz){
+ public static boolean isSimpleType (Class clazz){
boolean retval = false;
if (
(clazz == String.class) ||
(clazz.isPrimitive()) ||
(clazz == Calendar.class) ||
- (clazz == BigDecimal.class)
+ (clazz == BigDecimal.class)
) {
retval = true;
}
@@ -116,7 +116,7 @@
}
return retval;
}
-
+
private Object getPrimitiveValue(Class primitiveClass, String str) {
Object retval = null;
//Boolean.TYPE, Character.TYPE, Byte.TYPE, Short.TYPE, Integer.TYPE,
@@ -144,7 +144,9 @@
} else if (primitiveClass == double.class) {
retval = new Double(str);
} else if (primitiveClass == void.class) {
- retval = null;
+ retval = null;
+ } else {
+ System.err.println("Unknown primitive class: " + primitiveClass.getName());
}
return retval;
}
1.2 +1 -0 ws-wsif/swingWsInvoker/src/org/apache/wsif/wsinvoker/WSInvoker.java
Index: WSInvoker.java
===================================================================
RCS file: /home/cvs/ws-wsif/swingWsInvoker/src/org/apache/wsif/wsinvoker/WSInvoker.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- WSInvoker.java 20 Feb 2005 00:54:30 -0000 1.1
+++ WSInvoker.java 15 Mar 2005 00:04:32 -0000 1.2
@@ -302,6 +302,7 @@
}
private static void displayFrame(JFrame frame) {
+ // TODO may want to redo without SpringLayout
frame.pack();
frame.setSize(800, 300);
1.2 +35 -27 ws-wsif/swingWsInvoker/src/org/apache/wsif/wsinvoker/grammar/java/JavaParseTree.java
Index: JavaParseTree.java
===================================================================
RCS file: /home/cvs/ws-wsif/swingWsInvoker/src/org/apache/wsif/wsinvoker/grammar/java/JavaParseTree.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- JavaParseTree.java 20 Feb 2005 00:54:30 -0000 1.1
+++ JavaParseTree.java 15 Mar 2005 00:04:32 -0000 1.2
@@ -30,7 +30,9 @@
public static void main(String args[]) throws Exception {
- JavaParseTree jpt = new JavaParseTree("C:\\temp\\FileClassLoader.java");
+ JavaParseTree jpt = new JavaParseTree("/home/hchan/.wsinvoker/tmp/classes/mancom/Webservices.java");
+
+ //C:\\temp\\FileClassLoader.java");
}
public String toString() {
@@ -66,32 +68,38 @@
this.methodNodes = methodNodes;
}
-
+
public MethodNode getMethodNode(Method method) {
- MethodNode retval = null;
- boolean foundMatch = false;
- for (int i = 0; i < methodNodes.size(); i++) {
- MethodNode methodNode = (MethodNode)methodNodes.elementAt(i);
- //System.out.println(methodNode.toString());
- if (method.getName().equals(methodNode.getMethodDeclarator())) {
- foundMatch = true;
- Class[] paramTypes = method.getParameterTypes();
- Vector types = methodNode.getTypes();
- for (int j = 0; j < paramTypes.length; j++) {
- Class clazz = paramTypes[j];
- String type = (String)types.elementAt(j);
- //System.out.println(clazz.getName() + ":" + type);
- if (!clazz.getName().equals(type)) {
- foundMatch = false;
- break;
- }
- }
- if (foundMatch) {
- retval = methodNode;
- break;
- }
- }
- }
- return retval;
+ MethodNode retval = null;
+ boolean foundMatch = false;
+ for (int i = 0; i < methodNodes.size(); i++) {
+ MethodNode methodNode = (MethodNode)methodNodes.elementAt(i);
+ //System.out.println(methodNode.toString());
+ if (method.getName().equals(methodNode.getMethodDeclarator())) {
+ foundMatch = true;
+ Class[] paramTypes = method.getParameterTypes();
+ Vector types = methodNode.getTypes();
+ for (int j = 0; j < paramTypes.length; j++) {
+ Class clazz = paramTypes[j];
+ String type = (String)types.elementAt(j);
+
+ if (clazz.isArray()) {
+ Class compType = clazz.getComponentType();
+ if (!compType.getName().equals(type)) {
+ foundMatch = false;
+ break;
+ }
+ } else if (!clazz.getName().equals(type)) {
+ foundMatch = false;
+ break;
+ }
+ }
+ if (foundMatch) {
+ retval = methodNode;
+ break;
+ }
+ }
+ }
+ return retval;
}
}