You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jo...@apache.org on 2006/11/20 23:43:26 UTC

svn commit: r477382 - in /maven/sandbox/maven-shared-jar/src/main/java/org/apache/maven/shared/jar/classes: JarClasses.java JarClassesAnalysis.java

Author: joakime
Date: Mon Nov 20 14:43:25 2006
New Revision: 477382

URL: http://svn.apache.org/viewvc?view=rev&rev=477382
Log:
Added ability to scrape the method names from all of the classes in the jar file.  Hope to use it in the index for archiva.

Modified:
    maven/sandbox/maven-shared-jar/src/main/java/org/apache/maven/shared/jar/classes/JarClasses.java
    maven/sandbox/maven-shared-jar/src/main/java/org/apache/maven/shared/jar/classes/JarClassesAnalysis.java

Modified: maven/sandbox/maven-shared-jar/src/main/java/org/apache/maven/shared/jar/classes/JarClasses.java
URL: http://svn.apache.org/viewvc/maven/sandbox/maven-shared-jar/src/main/java/org/apache/maven/shared/jar/classes/JarClasses.java?view=diff&rev=477382&r1=477381&r2=477382
==============================================================================
--- maven/sandbox/maven-shared-jar/src/main/java/org/apache/maven/shared/jar/classes/JarClasses.java (original)
+++ maven/sandbox/maven-shared-jar/src/main/java/org/apache/maven/shared/jar/classes/JarClasses.java Mon Nov 20 14:43:25 2006
@@ -32,7 +32,7 @@
 
     private List classNames;
     
-    private List methodNames;
+    private List methods;
 
     private boolean isDebugPresent;
 
@@ -47,6 +47,7 @@
         imports = SetUniqueList.decorate( new ArrayList() );
         packages = SetUniqueList.decorate( new ArrayList() );
         classNames = SetUniqueList.decorate( new ArrayList() );
+        methods = SetUniqueList.decorate( new ArrayList() );
     }
 
     public void addClassName( String name )
@@ -135,14 +136,19 @@
     {
         this.jdkRevision = jdkRevision;
     }
+    
+    public void addMethod( String method )
+    {
+        this.methods.add( method );
+    }
 
-    public List getMethodNames()
+    public List getMethods()
     {
-        return methodNames;
+        return methods;
     }
 
-    public void setMethodNames( List methodNames )
+    public void setMethods( List methods )
     {
-        this.methodNames = methodNames;
+        this.methods = methods;
     }
 }

Modified: maven/sandbox/maven-shared-jar/src/main/java/org/apache/maven/shared/jar/classes/JarClassesAnalysis.java
URL: http://svn.apache.org/viewvc/maven/sandbox/maven-shared-jar/src/main/java/org/apache/maven/shared/jar/classes/JarClassesAnalysis.java?view=diff&rev=477382&r1=477381&r2=477382
==============================================================================
--- maven/sandbox/maven-shared-jar/src/main/java/org/apache/maven/shared/jar/classes/JarClassesAnalysis.java (original)
+++ maven/sandbox/maven-shared-jar/src/main/java/org/apache/maven/shared/jar/classes/JarClassesAnalysis.java Mon Nov 20 14:43:25 2006
@@ -61,7 +61,7 @@
                 String classname = entry.getName();
 
                 ClassParser classParser = new ClassParser( jarfilename, classname );
-
+                
                 JavaClass javaClass;
                 try
                 {
@@ -73,6 +73,8 @@
                     continue;
                 }
 
+                String classSignature = javaClass.getClassName();
+                
                 if ( !classes.isDebugPresent() )
                 {
                     if ( hasDebugSymbols( javaClass ) )
@@ -91,10 +93,16 @@
                 {
                     maxVersion = classVersion;
                 }
+                
+                Method methods[] = javaClass.getMethods();
+                for ( int i = 0; i < methods.length; i++ )
+                {
+                    classes.addMethod( classSignature + "." + methods[i].getName() + methods[i].getSignature() );
+                }
 
                 String classPackageName = javaClass.getPackageName();
 
-                classes.addClassName( javaClass.getClassName() );
+                classes.addClassName( classSignature );
                 classes.addPackage( classPackageName );
 
                 ImportVisitor importVisitor = new ImportVisitor( javaClass );