Author: jochen
Date: Thu Nov  2 13:29:39 2006
New Revision: 470530

URL: http://svn.apache.org/viewvc?view=rev&rev=470530
Log:
The Java parser does now support wildcards in import statements.
PR: JAXME-77
Submitted-by: Kenney Westerhof, [EMAIL PROTECTED]

Modified:
    webservices/jaxme/branches/MAVEN/projects/js/project.xml
    
webservices/jaxme/branches/MAVEN/projects/js/src/main/java/org/apache/ws/jaxme/js/util/JavaParser.java
    
webservices/jaxme/branches/MAVEN/projects/js/src/test/java/org/apache/ws/jaxme/js/junit/AntlrTest.java
    webservices/jaxme/branches/MAVEN/status.xml
    
webservices/jaxme/branches/b0_5/src/js/org/apache/ws/jaxme/js/junit/AntlrTest.java
    
webservices/jaxme/branches/b0_5/src/js/org/apache/ws/jaxme/js/util/JavaParser.java
    webservices/jaxme/branches/b0_5/status.xml

Modified: webservices/jaxme/branches/MAVEN/projects/js/project.xml
URL: 
http://svn.apache.org/viewvc/webservices/jaxme/branches/MAVEN/projects/js/project.xml?view=diff&rev=470530&r1=470529&r2=470530
==============================================================================
--- webservices/jaxme/branches/MAVEN/projects/js/project.xml (original)
+++ webservices/jaxme/branches/MAVEN/projects/js/project.xml Thu Nov  2 
13:29:39 2006
@@ -33,6 +33,10 @@
         <contributor>
             <name>Byn Choi</name>
             <email>[EMAIL PROTECTED]</email>
+        </contributor>
+        <contributor>
+            <name>Kenney Westerhof</name>
+            <email>[EMAIL PROTECTED]</email>
         </contributor>
     </contributors>
     <dependencies>

Modified: 
webservices/jaxme/branches/MAVEN/projects/js/src/main/java/org/apache/ws/jaxme/js/util/JavaParser.java
URL: 
http://svn.apache.org/viewvc/webservices/jaxme/branches/MAVEN/projects/js/src/main/java/org/apache/ws/jaxme/js/util/JavaParser.java?view=diff&rev=470530&r1=470529&r2=470530
==============================================================================
--- 
webservices/jaxme/branches/MAVEN/projects/js/src/main/java/org/apache/ws/jaxme/js/util/JavaParser.java
 (original)
+++ 
webservices/jaxme/branches/MAVEN/projects/js/src/main/java/org/apache/ws/jaxme/js/util/JavaParser.java
 Thu Nov  2 13:29:39 2006
@@ -5,6 +5,7 @@
 import java.io.FileReader;
 import java.io.Reader;
 import java.util.ArrayList;
+import java.util.Iterator;
 import java.util.List;
 import java.util.StringTokenizer;
 
@@ -156,6 +157,7 @@
                        sb.append(pAST.getText());
                    break;
                case JavaTokenTypes.IDENT:
+            case JavaTokenTypes.STAR:
                        sb.append(pAST.getText());
                    break;
                case JavaTokenTypes.DOT:
@@ -200,6 +202,9 @@
             String packageName = getPackageName();
             JavaQName qName = JavaQNameImpl.getInstance(packageName, 
className);
             JavaSource js = factory.newJavaSource(qName, 
JavaSource.DEFAULT_PROTECTION);
+            for (Iterator it = importStatements.iterator();  it.hasNext();  ) {
+                js.addImport((JavaQName) it.next());
+            }
             generatedClasses.add(js);
             return js;
         } else {

Modified: 
webservices/jaxme/branches/MAVEN/projects/js/src/test/java/org/apache/ws/jaxme/js/junit/AntlrTest.java
URL: 
http://svn.apache.org/viewvc/webservices/jaxme/branches/MAVEN/projects/js/src/test/java/org/apache/ws/jaxme/js/junit/AntlrTest.java?view=diff&rev=470530&r1=470529&r2=470530
==============================================================================
--- 
webservices/jaxme/branches/MAVEN/projects/js/src/test/java/org/apache/ws/jaxme/js/junit/AntlrTest.java
 (original)
+++ 
webservices/jaxme/branches/MAVEN/projects/js/src/test/java/org/apache/ws/jaxme/js/junit/AntlrTest.java
 Thu Nov  2 13:29:39 2006
@@ -16,13 +16,21 @@
  */
 package org.apache.ws.jaxme.js.junit;
 
+import java.io.StringReader;
+import java.util.List;
+
+import org.apache.ws.jaxme.js.JavaSource;
+import org.apache.ws.jaxme.js.JavaSourceFactory;
+import org.apache.ws.jaxme.js.util.JavaParser;
+
+import antlr.RecognitionException;
+import antlr.TokenStreamException;
 import junit.framework.TestCase;
 
 /**
  * Test for JavaParser.
  */
 public class AntlrTest extends TestCase {
-
        /**
         * Tests the JavaParser.
         */
@@ -31,5 +39,17 @@
                        + 
"/org/apache/ws/jaxme/sqls/impl/SQLGeneratorImpl.java";
                org.apache.ws.jaxme.js.util.JavaParser.main(new String[]{path});
        }
-       
+
+    /** Tests, whether imports may use wildcards.
+     */
+       public void testStarImport() throws RecognitionException, 
TokenStreamException {
+           JavaSourceFactory jsf = new JavaSourceFactory();
+           JavaParser parser = new JavaParser(jsf);
+           List a = parser.parse(new StringReader("package foo;\nimport 
java.util.*;\n\npublic class Test {}\n"));
+
+           assertEquals("Expecting 1 Java source", 1, a.size());
+           JavaSource js = (JavaSource) a.get(0);
+           assertEquals("Expecting 1 import", 1, js.getImports().length);
+           assertEquals("java.util.*", js.getImports()[0].toString());
+       }
 }

Modified: webservices/jaxme/branches/MAVEN/status.xml
URL: 
http://svn.apache.org/viewvc/webservices/jaxme/branches/MAVEN/status.xml?view=diff&rev=470530&r1=470529&r2=470530
==============================================================================
--- webservices/jaxme/branches/MAVEN/status.xml (original)
+++ webservices/jaxme/branches/MAVEN/status.xml Thu Nov  2 13:29:39 2006
@@ -52,6 +52,10 @@
         used, failed on IBM JDK 1.3.1.
         (Vincent Reviol, [EMAIL PROTECTED])
       </action>
+      <action dev="JW" type="fix" context="js">
+        The Java parser does now support wildcard imports.
+        (Kenney Westerhof, [EMAIL PROTECTED], JAXME-77)
+      </action>
     </release>
     <release version="0.5.2" date="25-Oct-2006">
       <action dev="JW" type="enhancement" context="generator">

Modified: 
webservices/jaxme/branches/b0_5/src/js/org/apache/ws/jaxme/js/junit/AntlrTest.java
URL: 
http://svn.apache.org/viewvc/webservices/jaxme/branches/b0_5/src/js/org/apache/ws/jaxme/js/junit/AntlrTest.java?view=diff&rev=470530&r1=470529&r2=470530
==============================================================================
--- 
webservices/jaxme/branches/b0_5/src/js/org/apache/ws/jaxme/js/junit/AntlrTest.java
 (original)
+++ 
webservices/jaxme/branches/b0_5/src/js/org/apache/ws/jaxme/js/junit/AntlrTest.java
 Thu Nov  2 13:29:39 2006
@@ -16,13 +16,21 @@
  */
 package org.apache.ws.jaxme.js.junit;
 
+import java.io.StringReader;
+import java.util.List;
+
+import org.apache.ws.jaxme.js.JavaSource;
+import org.apache.ws.jaxme.js.JavaSourceFactory;
+import org.apache.ws.jaxme.js.util.JavaParser;
+
+import antlr.RecognitionException;
+import antlr.TokenStreamException;
 import junit.framework.TestCase;
 
 /**
  * Test for JavaParser.
  */
 public class AntlrTest extends TestCase {
-
        /**
         * Tests the JavaParser.
         */
@@ -31,5 +39,17 @@
                        + 
"/org/apache/ws/jaxme/sqls/impl/SQLGeneratorImpl.java";
                org.apache.ws.jaxme.js.util.JavaParser.main(new String[]{path});
        }
-       
+
+    /** Tests, whether imports may use wildcards.
+     */
+       public void testStarImport() throws RecognitionException, 
TokenStreamException {
+           JavaSourceFactory jsf = new JavaSourceFactory();
+           JavaParser parser = new JavaParser(jsf);
+           List a = parser.parse(new StringReader("package foo;\nimport 
java.util.*;\n\npublic class Test {}\n"));
+
+           assertEquals("Expecting 1 Java source", 1, a.size());
+           JavaSource js = (JavaSource) a.get(0);
+           assertEquals("Expecting 1 import", 1, js.getImports().length);
+           assertEquals("java.util.*", js.getImports()[0].toString());
+       }
 }

Modified: 
webservices/jaxme/branches/b0_5/src/js/org/apache/ws/jaxme/js/util/JavaParser.java
URL: 
http://svn.apache.org/viewvc/webservices/jaxme/branches/b0_5/src/js/org/apache/ws/jaxme/js/util/JavaParser.java?view=diff&rev=470530&r1=470529&r2=470530
==============================================================================
--- 
webservices/jaxme/branches/b0_5/src/js/org/apache/ws/jaxme/js/util/JavaParser.java
 (original)
+++ 
webservices/jaxme/branches/b0_5/src/js/org/apache/ws/jaxme/js/util/JavaParser.java
 Thu Nov  2 13:29:39 2006
@@ -5,6 +5,7 @@
 import java.io.FileReader;
 import java.io.Reader;
 import java.util.ArrayList;
+import java.util.Iterator;
 import java.util.List;
 import java.util.StringTokenizer;
 
@@ -156,6 +157,7 @@
                        sb.append(pAST.getText());
                    break;
                case JavaTokenTypes.IDENT:
+            case JavaTokenTypes.STAR:
                        sb.append(pAST.getText());
                    break;
                case JavaTokenTypes.DOT:
@@ -200,6 +202,9 @@
             String packageName = getPackageName();
             JavaQName qName = JavaQNameImpl.getInstance(packageName, 
className);
             JavaSource js = factory.newJavaSource(qName, 
JavaSource.DEFAULT_PROTECTION);
+            for (Iterator it = importStatements.iterator();  it.hasNext();  ) {
+                js.addImport((JavaQName) it.next());
+            }
             generatedClasses.add(js);
             return js;
         } else {

Modified: webservices/jaxme/branches/b0_5/status.xml
URL: 
http://svn.apache.org/viewvc/webservices/jaxme/branches/b0_5/status.xml?view=diff&rev=470530&r1=470529&r2=470530
==============================================================================
--- webservices/jaxme/branches/b0_5/status.xml (original)
+++ webservices/jaxme/branches/b0_5/status.xml Thu Nov  2 13:29:39 2006
@@ -36,6 +36,10 @@
         used, failed on IBM JDK 1.3.1.
         (Vincent Reviol, [EMAIL PROTECTED])
       </action>
+      <action dev="JW" type="fix" context="js">
+        The Java parser does now support wildcard imports.
+        (Kenney Westerhof, [EMAIL PROTECTED], JAXME-77)
+      </action>
     </release>
     <release version="0.5.2" date="25-Oct-2006">
       <action dev="JW" type="enhancement" context="generator">



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to