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;

       }

   }

  
  
  

Reply via email to