You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by ej...@apache.org on 2012/01/27 19:56:46 UTC

svn commit: r1236822 - in /aries/trunk: versioning/versioning-checker/ versioning/versioning-checker/src/main/java/org/apache/aries/versioning/utils/ web/web-itests/ web/web-itests/src/test/java/org/apache/aries/web/converter/itest/ web/web-urlhandler/...

Author: ejiang
Date: Fri Jan 27 18:56:45 2012
New Revision: 1236822

URL: http://svn.apache.org/viewvc?rev=1236822&view=rev
Log:
ARIES-817: Upgrade to ASM4 

Modified:
    aries/trunk/versioning/versioning-checker/pom.xml
    aries/trunk/versioning/versioning-checker/src/main/java/org/apache/aries/versioning/utils/EmptyClassVisitor.java
    aries/trunk/versioning/versioning-checker/src/main/java/org/apache/aries/versioning/utils/SemanticVersioningClassVisitor.java
    aries/trunk/versioning/versioning-checker/src/main/java/org/apache/aries/versioning/utils/SemanticVersioningUtils.java
    aries/trunk/versioning/versioning-checker/src/main/java/org/apache/aries/versioning/utils/SerialVersionClassVisitor.java
    aries/trunk/web/web-itests/pom.xml
    aries/trunk/web/web-itests/src/test/java/org/apache/aries/web/converter/itest/WabConverterITest.java
    aries/trunk/web/web-urlhandler/pom.xml
    aries/trunk/web/web-urlhandler/src/main/java/org/apache/aries/web/converter/impl/PackageFinder.java

Modified: aries/trunk/versioning/versioning-checker/pom.xml
URL: http://svn.apache.org/viewvc/aries/trunk/versioning/versioning-checker/pom.xml?rev=1236822&r1=1236821&r2=1236822&view=diff
==============================================================================
--- aries/trunk/versioning/versioning-checker/pom.xml (original)
+++ aries/trunk/versioning/versioning-checker/pom.xml Fri Jan 27 18:56:45 2012
@@ -81,10 +81,10 @@
             <scope>test</scope>
         </dependency>
         <dependency>
-            <groupId>asm</groupId>
+            <groupId>org.ow2.asm</groupId>
             <artifactId>asm-all</artifactId>
             <optional>true</optional>
-            <version>3.3.1</version>
+            <version>4.0</version>
         </dependency>
         <dependency>
             <groupId>org.osgi</groupId>

Modified: aries/trunk/versioning/versioning-checker/src/main/java/org/apache/aries/versioning/utils/EmptyClassVisitor.java
URL: http://svn.apache.org/viewvc/aries/trunk/versioning/versioning-checker/src/main/java/org/apache/aries/versioning/utils/EmptyClassVisitor.java?rev=1236822&r1=1236821&r2=1236822&view=diff
==============================================================================
--- aries/trunk/versioning/versioning-checker/src/main/java/org/apache/aries/versioning/utils/EmptyClassVisitor.java (original)
+++ aries/trunk/versioning/versioning-checker/src/main/java/org/apache/aries/versioning/utils/EmptyClassVisitor.java Fri Jan 27 18:56:45 2012
@@ -24,7 +24,13 @@ import org.objectweb.asm.ClassVisitor;
 import org.objectweb.asm.FieldVisitor;
 import org.objectweb.asm.MethodVisitor;
 
-public class EmptyClassVisitor implements ClassVisitor {
+public class EmptyClassVisitor extends ClassVisitor {
+
+    public EmptyClassVisitor()
+  {
+    super(SemanticVersioningUtils.ASM4);
+    
+  }
 
     @Override
     public void visit(int arg0, int arg1, String arg2, String arg3, String arg4, String[] arg5) {

Modified: aries/trunk/versioning/versioning-checker/src/main/java/org/apache/aries/versioning/utils/SemanticVersioningClassVisitor.java
URL: http://svn.apache.org/viewvc/aries/trunk/versioning/versioning-checker/src/main/java/org/apache/aries/versioning/utils/SemanticVersioningClassVisitor.java?rev=1236822&r1=1236821&r2=1236822&view=diff
==============================================================================
--- aries/trunk/versioning/versioning-checker/src/main/java/org/apache/aries/versioning/utils/SemanticVersioningClassVisitor.java (original)
+++ aries/trunk/versioning/versioning-checker/src/main/java/org/apache/aries/versioning/utils/SemanticVersioningClassVisitor.java Fri Jan 27 18:56:45 2012
@@ -27,7 +27,7 @@ import org.objectweb.asm.ClassVisitor;
 import org.objectweb.asm.FieldVisitor;
 import org.objectweb.asm.MethodVisitor;
 
-public class SemanticVersioningClassVisitor implements ClassVisitor {
+public class SemanticVersioningClassVisitor extends ClassVisitor {
 
     private ClassDeclaration classDeclaration;
     private boolean needVisit = false;
@@ -35,12 +35,14 @@ public class SemanticVersioningClassVisi
     private SerialVersionClassVisitor cv = null;
 
     public SemanticVersioningClassVisitor(URLClassLoader newJarLoader, SerialVersionClassVisitor cv) {
-        this.loader = newJarLoader;
-        this.cv = cv;
+      super(SemanticVersioningUtils.ASM4);
+      this.loader = newJarLoader;
+      this.cv = cv;
     }
 
     public SemanticVersioningClassVisitor(URLClassLoader newJarLoader) {
-        this.loader = newJarLoader;
+      super(SemanticVersioningUtils.ASM4);
+      this.loader = newJarLoader;
     }
 
     public ClassDeclaration getClassDeclaration() {

Modified: aries/trunk/versioning/versioning-checker/src/main/java/org/apache/aries/versioning/utils/SemanticVersioningUtils.java
URL: http://svn.apache.org/viewvc/aries/trunk/versioning/versioning-checker/src/main/java/org/apache/aries/versioning/utils/SemanticVersioningUtils.java?rev=1236822&r1=1236821&r2=1236822&view=diff
==============================================================================
--- aries/trunk/versioning/versioning-checker/src/main/java/org/apache/aries/versioning/utils/SemanticVersioningUtils.java (original)
+++ aries/trunk/versioning/versioning-checker/src/main/java/org/apache/aries/versioning/utils/SemanticVersioningUtils.java Fri Jan 27 18:56:45 2012
@@ -27,6 +27,8 @@ import java.util.Collection;
 import java.util.HashMap;
 import java.util.Map;
 
+import org.objectweb.asm.Opcodes;
+
 public class SemanticVersioningUtils {
 
     public static final String classExt = ".class";
@@ -51,6 +53,7 @@ public class SemanticVersioningUtils {
     public static final String SERIALIZABLE_CLASS_IDENTIFIER = "java/io/Serializable";
     public static final String SERIAL_VERSION_UTD = "serialVersionUID";
     public static final String ENUM_CLASS = "java/lang/Enum";
+    public static final int ASM4 = Opcodes.ASM4;
 
     public static boolean isLessAccessible(GenericDeclaration before, GenericDeclaration after) {
 

Modified: aries/trunk/versioning/versioning-checker/src/main/java/org/apache/aries/versioning/utils/SerialVersionClassVisitor.java
URL: http://svn.apache.org/viewvc/aries/trunk/versioning/versioning-checker/src/main/java/org/apache/aries/versioning/utils/SerialVersionClassVisitor.java?rev=1236822&r1=1236821&r2=1236822&view=diff
==============================================================================
--- aries/trunk/versioning/versioning-checker/src/main/java/org/apache/aries/versioning/utils/SerialVersionClassVisitor.java (original)
+++ aries/trunk/versioning/versioning-checker/src/main/java/org/apache/aries/versioning/utils/SerialVersionClassVisitor.java Fri Jan 27 18:56:45 2012
@@ -31,13 +31,11 @@ public class SerialVersionClassVisitor e
     }
 
     public long getComputeSerialVersionUID() {
-        if (computeSVUID) {
             try {
                 return computeSVUID();
             } catch (IOException ioe) {
                 // not a issue
             }
-        }
         return 0;
     }
 }

Modified: aries/trunk/web/web-itests/pom.xml
URL: http://svn.apache.org/viewvc/aries/trunk/web/web-itests/pom.xml?rev=1236822&r1=1236821&r2=1236822&view=diff
==============================================================================
--- aries/trunk/web/web-itests/pom.xml (original)
+++ aries/trunk/web/web-itests/pom.xml Fri Jan 27 18:56:45 2012
@@ -46,9 +46,9 @@
             <scope>provided</scope>
         </dependency>
         <dependency>
-            <groupId>asm</groupId>
+             <groupId>org.ow2.asm</groupId>
             <artifactId>asm-all</artifactId>
-            <version>3.2</version>
+            <version>4.0</version>
         </dependency>
         <dependency>
             <groupId>org.apache.aries.testsupport</groupId>
@@ -92,7 +92,7 @@
             <groupId>org.apache.aries.proxy</groupId>
             <artifactId>org.apache.aries.proxy</artifactId>
             <scope>test</scope>
-            <version>0.4</version>
+            <version>0.4.1-SNAPSHOT</version>
         </dependency>
         <dependency>
             <groupId>org.apache.aries.blueprint</groupId>

Modified: aries/trunk/web/web-itests/src/test/java/org/apache/aries/web/converter/itest/WabConverterITest.java
URL: http://svn.apache.org/viewvc/aries/trunk/web/web-itests/src/test/java/org/apache/aries/web/converter/itest/WabConverterITest.java?rev=1236822&r1=1236821&r2=1236822&view=diff
==============================================================================
--- aries/trunk/web/web-itests/src/test/java/org/apache/aries/web/converter/itest/WabConverterITest.java (original)
+++ aries/trunk/web/web-itests/src/test/java/org/apache/aries/web/converter/itest/WabConverterITest.java Fri Jan 27 18:56:45 2012
@@ -142,12 +142,12 @@ public class WabConverterITest {
         // Bundles
         mavenBundle("org.apache.aries.web","org.apache.aries.web.urlhandler"),
         mavenBundle("org.apache.aries", "org.apache.aries.util"),
-        mavenBundle("asm", "asm-all"),
+        mavenBundle("org.ow2.asm", "asm-all"),
         mavenBundle("org.apache.aries.proxy", "org.apache.aries.proxy"),
         mavenBundle("org.apache.aries.blueprint", "org.apache.aries.blueprint"), 
         mavenBundle("org.osgi", "org.osgi.compendium"),
         mavenBundle("org.apache.aries.testsupport", "org.apache.aries.testsupport.unit"),
-        mavenBundle("asm","asm-all"),
+       
 
         equinox().version("3.5.0"));
     options = updateOptions(options);

Modified: aries/trunk/web/web-urlhandler/pom.xml
URL: http://svn.apache.org/viewvc/aries/trunk/web/web-urlhandler/pom.xml?rev=1236822&r1=1236821&r2=1236822&view=diff
==============================================================================
--- aries/trunk/web/web-urlhandler/pom.xml (original)
+++ aries/trunk/web/web-urlhandler/pom.xml Fri Jan 27 18:56:45 2012
@@ -63,9 +63,9 @@
             <scope>provided</scope>
         </dependency>
         <dependency>
-            <groupId>asm</groupId>
+           <groupId>org.ow2.asm</groupId>
             <artifactId>asm-all</artifactId>
-            <version>3.2</version>
+            <version>4.0</version>
         </dependency>
         <dependency>
             <groupId>org.apache.aries.testsupport</groupId>

Modified: aries/trunk/web/web-urlhandler/src/main/java/org/apache/aries/web/converter/impl/PackageFinder.java
URL: http://svn.apache.org/viewvc/aries/trunk/web/web-urlhandler/src/main/java/org/apache/aries/web/converter/impl/PackageFinder.java?rev=1236822&r1=1236821&r2=1236822&view=diff
==============================================================================
--- aries/trunk/web/web-urlhandler/src/main/java/org/apache/aries/web/converter/impl/PackageFinder.java (original)
+++ aries/trunk/web/web-urlhandler/src/main/java/org/apache/aries/web/converter/impl/PackageFinder.java Fri Jan 27 18:56:45 2012
@@ -28,13 +28,29 @@ import org.objectweb.asm.ClassVisitor;
 import org.objectweb.asm.FieldVisitor;
 import org.objectweb.asm.Label;
 import org.objectweb.asm.MethodVisitor;
+import org.objectweb.asm.Opcodes;
 import org.objectweb.asm.Type;
 import org.objectweb.asm.signature.SignatureReader;
 import org.objectweb.asm.signature.SignatureVisitor;
 
-public class PackageFinder implements AnnotationVisitor, SignatureVisitor, ClassVisitor,
-    FieldVisitor, MethodVisitor
+public class PackageFinder extends ClassVisitor//AnnotationVisitor, SignatureVisitor, ClassVisitor,
+    //FieldVisitor, MethodVisitor
 {
+  private static int asmVersion = Opcodes.ASM4;
+  private PackageFinderSignatureVisitor pfsv;
+  private PackageFinderAnnotationVisitor pfav;
+  private PackageFinderFieldVisitor pffv;
+  private PackageFinderMethodVisitor pfmv;
+  
+  public PackageFinder()
+  {
+    super(asmVersion);
+    this.pfsv = new PackageFinderSignatureVisitor();
+    this.pfav = new PackageFinderAnnotationVisitor();
+    this.pffv = new PackageFinderFieldVisitor();
+    this.pfmv = new PackageFinderMethodVisitor();
+  }
+
   private Set<String> packages = new HashSet<String>();
   private Set<String> exemptPackages = new HashSet<String>();
 
@@ -154,12 +170,12 @@ public class PackageFinder implements An
 
   private void addSignaturePackages(String signature)
   {
-    if (signature != null) new SignatureReader(signature).accept(this);
+    if (signature != null) new SignatureReader(signature).accept(pfsv);
   }
 
   private void addResolvedSignaturePackages(String signature)
   {
-    if (signature != null) new SignatureReader(signature).acceptType(this);
+    if (signature != null) new SignatureReader(signature).acceptType(pfsv);
   }
 
   //
@@ -182,7 +198,7 @@ public class PackageFinder implements An
   public AnnotationVisitor visitAnnotation(String descriptor, boolean visible)
   {
     addPackage(getDescriptorInfo(descriptor));
-    return this;
+    return pfav;
   }
 
   public void visitAttribute(Attribute arg0)
@@ -197,7 +213,7 @@ public class PackageFinder implements An
     else addResolvedSignaturePackages(signature);
 
     if (value instanceof Type) addPackage(getType((Type) value));
-    return this;
+    return pffv;
   }
 
   public void visitInnerClass(String arg0, String arg1, String arg2, int arg3)
@@ -212,7 +228,7 @@ public class PackageFinder implements An
     else addSignaturePackages(signature);
 
     addPackages(getResolvedPackageNames(exceptions));
-    return this;
+    return pfmv;
 
   }
 
@@ -231,224 +247,270 @@ public class PackageFinder implements An
     // no-op
   }
 
-  // 
-  // MethodVisitor methods
-  //
 
-  public AnnotationVisitor visitAnnotationDefault()
-  {
-    return this;
-  }
 
-  public void visitCode()
-  {
-    // no-op
-  }
 
-  public void visitFieldInsn(int opcode, String owner, String name, String descriptor)
-  {
-    addPackage(getResolvedPackageName(owner));
-    addPackage(getDescriptorInfo(descriptor));
-  }
 
-  public void visitFrame(int arg0, int arg1, Object[] arg2, int arg3, Object[] arg4)
-  {
-    // no-op
-  }
 
-  public void visitIincInsn(int arg0, int arg1)
-  {
-    // no-op
-  }
 
-  public void visitInsn(int arg0)
-  {
-    // no-op
-  }
+  public class PackageFinderSignatureVisitor extends SignatureVisitor {
 
-  public void visitIntInsn(int arg0, int arg1)
-  {
-    // no-op
-  }
+    public PackageFinderSignatureVisitor()
+    {
+      super(asmVersion);
+    }
+    
+    // 
+    // SignatureVisitor methods
+    //
 
-  public void visitJumpInsn(int arg0, Label arg1)
-  {
-    // no-op
-  }
+    public SignatureVisitor visitArrayType()
+    {
+      return pfsv;
+    }
 
-  public void visitLabel(Label arg0)
-  {
-    // no-op
-  }
+    public void visitBaseType(char arg0)
+    {
+      // no-op
+    }
 
-  public void visitLdcInsn(Object type)
-  {
-    if (type instanceof Type) addPackage(getType((Type) type));
-  }
+    public SignatureVisitor visitClassBound()
+    {
+      return pfsv;
+    }
 
-  public void visitLineNumber(int arg0, Label arg1)
-  {
-    // no-op
-  }
+    public void visitClassType(String name)
+    {
+      signatureOuterClass = name;
+      addPackage(getResolvedPackageName(name));
+    }
 
-  public void visitLocalVariable(String name, String descriptor, String signature, Label start,
-      Label end, int index)
-  {
-    addResolvedSignaturePackages(signature);
-  }
+    public void visitInnerClassType(String name)
+    {
+      addPackage(getResolvedPackageName(signatureOuterClass + "$" + name));
+    }
 
-  public void visitLookupSwitchInsn(Label arg0, int[] arg1, Label[] arg2)
-  {
-    // no-op
-  }
+    public SignatureVisitor visitExceptionType()
+    {
+      return pfsv;
+    }
 
-  public void visitMaxs(int arg0, int arg1)
-  {
-    // no-op
-  }
+    public void visitFormalTypeParameter(String arg0)
+    {
+      // no-op
+    }
 
-  public void visitMethodInsn(int opcode, String owner, String name, String descriptor)
-  {
-    addPackage(getResolvedPackageName(owner));
-    addPackages(getMethodDescriptorInfo(descriptor));
-  }
+    public SignatureVisitor visitInterface()
+    {
+      return pfsv;
+    }
 
-  public void visitMultiANewArrayInsn(String descriptor, int arg1)
-  {
-    addPackage(getDescriptorInfo(descriptor));
-  }
+    public SignatureVisitor visitParameterType()
+    {
+      return pfsv;
+    }
 
-  public AnnotationVisitor visitParameterAnnotation(int arg0, String descriptor, boolean arg2)
-  {
-    addPackage(getDescriptorInfo(descriptor));
-    return this;
-  }
+    public SignatureVisitor visitReturnType()
+    {
+      return pfsv;
+    }
 
-  public void visitTableSwitchInsn(int arg0, int arg1, Label arg2, Label[] arg3)
-  {
-    //no-op
-  }
+    public SignatureVisitor visitSuperclass()
+    {
+      return pfsv;
+    }
 
-  public void visitTryCatchBlock(Label arg0, Label arg1, Label arg2, String type)
-  {
-    addPackage(getResolvedPackageName(type));
-  }
+    public void visitTypeArgument()
+    {
+      // no-op
+    }
 
-  public void visitTypeInsn(int arg0, String type)
-  {
-    addPackage(getResolvedPackageName(type));
-  }
+    public SignatureVisitor visitTypeArgument(char arg0)
+    {
+      return pfsv;
+    }
 
-  public void visitVarInsn(int arg0, int arg1)
-  {
-    // no-op
+    public void visitTypeVariable(String arg0)
+    {
+      // no-op
+    }
+
+    public SignatureVisitor visitInterfaceBound()
+    {
+      return pfsv;
+    }
   }
+  
+  
+  
+  
+  public class PackageFinderAnnotationVisitor extends AnnotationVisitor {
 
-  //
-  // AnnotationVisitor Methods
-  //
+    public PackageFinderAnnotationVisitor()
+    {
+      super(asmVersion);
+    }
+    
+    //
+    // AnnotationVisitor Methods
+    //
 
-  public void visit(String arg0, Object value)
-  {
-    if (value instanceof Type) {
-      addPackage(getType((Type) value));
+    public void visit(String arg0, Object value)
+    {
+      if (value instanceof Type) {
+        addPackage(getType((Type) value));
+      }
     }
-  }
 
-  public AnnotationVisitor visitAnnotation(String arg0, String descriptor)
-  {
-    addPackage(getDescriptorInfo(descriptor));
-    return this;
-  }
+    public AnnotationVisitor visitAnnotation(String arg0, String descriptor)
+    {
+      addPackage(getDescriptorInfo(descriptor));
+      return pfav;
+    }
 
-  public AnnotationVisitor visitArray(String arg0)
-  {
-    return this;
+    public AnnotationVisitor visitArray(String arg0)
+    {
+      return pfav;
+    }
+
+    public void visitEnum(String name, String desc, String value)
+    {
+      addPackage(getDescriptorInfo(desc));
+    }
   }
+  
+  
+  
+  
+  public class PackageFinderFieldVisitor extends FieldVisitor {
 
-  public void visitEnum(String name, String desc, String value)
-  {
-    addPackage(getDescriptorInfo(desc));
+    public PackageFinderFieldVisitor()
+    {
+      super(asmVersion);
+    }
   }
+  
+  
+  
+  
+  public class PackageFinderMethodVisitor extends MethodVisitor {
 
-  // 
-  // SignatureVisitor methods
-  //
+    public PackageFinderMethodVisitor()
+    {
+      super(asmVersion);
+    }
+    
+    // 
+    // MethodVisitor methods
+    //
 
-  public SignatureVisitor visitArrayType()
-  {
-    return this;
-  }
+    public AnnotationVisitor visitAnnotationDefault()
+    {
+      return pfav;
+    }
 
-  public void visitBaseType(char arg0)
-  {
-    // no-op
-  }
+    public void visitCode()
+    {
+      // no-op
+    }
 
-  public SignatureVisitor visitClassBound()
-  {
-    return this;
-  }
+    public void visitFrame(int arg0, int arg1, Object[] arg2, int arg3, Object[] arg4)
+    {
+      // no-op
+    }
 
-  public void visitClassType(String name)
-  {
-    signatureOuterClass = name;
-    addPackage(getResolvedPackageName(name));
-  }
+    public void visitIincInsn(int arg0, int arg1)
+    {
+      // no-op
+    }
 
-  public void visitInnerClassType(String name)
-  {
-    addPackage(getResolvedPackageName(signatureOuterClass + "$" + name));
-  }
+    public void visitInsn(int arg0)
+    {
+      // no-op
+    }
 
-  public SignatureVisitor visitExceptionType()
-  {
-    return this;
-  }
+    public void visitIntInsn(int arg0, int arg1)
+    {
+      // no-op
+    }
 
-  public void visitFormalTypeParameter(String arg0)
-  {
-    // no-op
-  }
+    public void visitJumpInsn(int arg0, Label arg1)
+    {
+      // no-op
+    }
 
-  public SignatureVisitor visitInterface()
-  {
-    return this;
-  }
+    public void visitLabel(Label arg0)
+    {
+      // no-op
+    }
 
-  public SignatureVisitor visitParameterType()
-  {
-    return this;
-  }
+    public void visitLdcInsn(Object type)
+    {
+      if (type instanceof Type) addPackage(getType((Type) type));
+    }
 
-  public SignatureVisitor visitReturnType()
-  {
-    return this;
-  }
+    public void visitLineNumber(int arg0, Label arg1)
+    {
+      // no-op
+    }
 
-  public SignatureVisitor visitSuperclass()
-  {
-    return this;
-  }
+    public void visitLocalVariable(String name, String descriptor, String signature, Label start,
+        Label end, int index)
+    {
+      addResolvedSignaturePackages(signature);
+    }
 
-  public void visitTypeArgument()
-  {
-    // no-op
-  }
+    public void visitLookupSwitchInsn(Label arg0, int[] arg1, Label[] arg2)
+    {
+      // no-op
+    }
 
-  public SignatureVisitor visitTypeArgument(char arg0)
-  {
-    return this;
-  }
+    public void visitMaxs(int arg0, int arg1)
+    {
+      // no-op
+    }
 
-  public void visitTypeVariable(String arg0)
-  {
-    // no-op
-  }
+    public void visitMethodInsn(int opcode, String owner, String name, String descriptor)
+    {
+      addPackage(getResolvedPackageName(owner));
+      addPackages(getMethodDescriptorInfo(descriptor));
+    }
 
-  public SignatureVisitor visitInterfaceBound()
-  {
-    return this;
-  }
+    public void visitMultiANewArrayInsn(String descriptor, int arg1)
+    {
+      addPackage(getDescriptorInfo(descriptor));
+    }
+
+    public AnnotationVisitor visitParameterAnnotation(int arg0, String descriptor, boolean arg2)
+    {
+      addPackage(getDescriptorInfo(descriptor));
+      return pfav;
+    }
+
+    public void visitTableSwitchInsn(int arg0, int arg1, Label arg2, Label[] arg3)
+    {
+      //no-op
+    }
+
+    public void visitTryCatchBlock(Label arg0, Label arg1, Label arg2, String type)
+    {
+      addPackage(getResolvedPackageName(type));
+    }
+
+    public void visitTypeInsn(int arg0, String type)
+    {
+      addPackage(getResolvedPackageName(type));
+    }
 
+    public void visitVarInsn(int arg0, int arg1)
+    {
+      // no-op
+    }
+    
+    public void visitFieldInsn(int opcode, String owner, String name, String descriptor)
+    {
+      addPackage(getResolvedPackageName(owner));
+      addPackage(getDescriptorInfo(descriptor));
+    }
+  }
 }