diff options
author | aclement <aclement> | 2008-09-05 18:06:07 +0000 |
---|---|---|
committer | aclement <aclement> | 2008-09-05 18:06:07 +0000 |
commit | 742ab2e178ff40bf67220c7cb2b54e5042e80d02 (patch) | |
tree | d3bc2fc92896cd18a6415fa6d8e8d2bcc7d8af5e /weaver | |
parent | e4a3ab5cef0e9b37da2a1309b897d845f3cd1e51 (diff) | |
download | aspectj-742ab2e178ff40bf67220c7cb2b54e5042e80d02.tar.gz aspectj-742ab2e178ff40bf67220c7cb2b54e5042e80d02.zip |
246125: break bcel dependency in AsmRelationshipProvider
Diffstat (limited to 'weaver')
-rw-r--r-- | weaver/src/org/aspectj/weaver/AsmRelationshipProvider.java | 14 | ||||
-rw-r--r-- | weaver/src/org/aspectj/weaver/bcel/BcelClassWeaver.java | 16 |
2 files changed, 13 insertions, 17 deletions
diff --git a/weaver/src/org/aspectj/weaver/AsmRelationshipProvider.java b/weaver/src/org/aspectj/weaver/AsmRelationshipProvider.java index e78dbe77f..4683ab7a7 100644 --- a/weaver/src/org/aspectj/weaver/AsmRelationshipProvider.java +++ b/weaver/src/org/aspectj/weaver/AsmRelationshipProvider.java @@ -15,10 +15,6 @@ package org.aspectj.weaver; import java.util.Iterator; import java.util.List; -import org.aspectj.apache.bcel.classfile.Field; -import org.aspectj.apache.bcel.classfile.Method; -import org.aspectj.apache.bcel.classfile.Utility; -import org.aspectj.apache.bcel.generic.Type; import org.aspectj.asm.AsmManager; import org.aspectj.asm.IHierarchy; import org.aspectj.asm.IProgramElement; @@ -351,7 +347,7 @@ public class AsmRelationshipProvider { * read 'fragile') bit of code that could break at any moment but it's working for my simple testcase. Currently just fails * silently if any of the lookup code doesn't find anything... */ - public void addDeclareAnnotationRelationship(ISourceLocation sourceLocation, String typename, Method method) { + public void addDeclareAnnotationMethodRelationship(ISourceLocation sourceLocation, String typename, ResolvedMember method) { if (!AsmManager.isCreatingModel()) return; @@ -368,10 +364,10 @@ public class AsmRelationshipProvider { return; StringBuffer parmString = new StringBuffer("("); - Type[] args = method.getArgumentTypes(); + UnresolvedType[] args = method.getParameterTypes(); +// Type[] args = method.getArgumentTypes(); for (int i = 0; i < args.length; i++) { - Type type2 = args[i]; - String s = Utility.signatureToString(type2.getSignature(), false); + String s = args[i].getName();//Utility.signatureToString(args[i].getName()getSignature(), false); parmString.append(s); if ((i + 1) < args.length) parmString.append(","); @@ -420,7 +416,7 @@ public class AsmRelationshipProvider { * we have no line number info for it, we have to dig through the structure model under the fields' type in order to locate it. * Currently just fails silently if any of the lookup code doesn't find anything... */ - public void addDeclareAnnotationRelationship(ISourceLocation sourceLocation, String typename, Field field) { + public void addDeclareAnnotationFieldRelationship(ISourceLocation sourceLocation, String typename, ResolvedMember field) { if (!AsmManager.isCreatingModel()) return; diff --git a/weaver/src/org/aspectj/weaver/bcel/BcelClassWeaver.java b/weaver/src/org/aspectj/weaver/bcel/BcelClassWeaver.java index a58fcf7c6..0414feb86 100644 --- a/weaver/src/org/aspectj/weaver/bcel/BcelClassWeaver.java +++ b/weaver/src/org/aspectj/weaver/bcel/BcelClassWeaver.java @@ -879,8 +879,8 @@ class BcelClassWeaver implements IClassWeaver { annotationsToAdd.add(ag); mg.addAnnotation(decaM.getAnnotationX()); - AsmRelationshipProvider.getDefault().addDeclareAnnotationRelationship(decaM.getSourceLocation(), - clazz.getName(), mg.getMethod()); + AsmRelationshipProvider.getDefault().addDeclareAnnotationMethodRelationship(decaM.getSourceLocation(), + clazz.getName(), mg.getMemberView());//getMethod()); reportMethodCtorWeavingMessage(clazz, mg.getMemberView(), decaM, mg.getDeclarationLineNumber()); isChanged = true; modificationOccured = true; @@ -923,8 +923,8 @@ class BcelClassWeaver implements IClassWeaver { annotationsToAdd.add(a); mg.addAnnotation(decaM.getAnnotationX()); - AsmRelationshipProvider.getDefault().addDeclareAnnotationRelationship(decaM.getSourceLocation(), - clazz.getName(), mg.getMethod()); + AsmRelationshipProvider.getDefault().addDeclareAnnotationMethodRelationship(decaM.getSourceLocation(), + clazz.getName(), mg.getMemberView());//getMethod()); isChanged = true; modificationOccured = true; forRemoval.add(decaM); @@ -1302,8 +1302,8 @@ class BcelClassWeaver implements IClassWeaver { } } - AsmRelationshipProvider.getDefault().addDeclareAnnotationRelationship(decaF.getSourceLocation(), - clazz.getName(), aBcelField.getFieldAsIs()); + AsmRelationshipProvider.getDefault().addDeclareAnnotationFieldRelationship(decaF.getSourceLocation(), + clazz.getName(), aBcelField);//.getFieldAsIs()); reportFieldAnnotationWeavingMessage(clazz, fields, fieldCounter, decaF); isChanged = true; modificationOccured = true; @@ -1337,8 +1337,8 @@ class BcelClassWeaver implements IClassWeaver { continue; // skip this one... } aBcelField.addAnnotation(decaF.getAnnotationX()); - AsmRelationshipProvider.getDefault().addDeclareAnnotationRelationship(decaF.getSourceLocation(), - clazz.getName(), aBcelField.getFieldAsIs()); + AsmRelationshipProvider.getDefault().addDeclareAnnotationFieldRelationship(decaF.getSourceLocation(), + clazz.getName(), aBcelField);//.getFieldAsIs()); isChanged = true; modificationOccured = true; forRemoval.add(decaF); |