ataspectj.instrumentation
Class BytecodeCleaner

java.lang.Object
  extended by ataspectj.AtAspectjComponent
      extended by ataspectj.instrumentation.BytecodeCleaner

public class BytecodeCleaner
extends AtAspectjComponent

It's used to clean up methods of a Java Class from the useless Local Variable Table.

Author:
Marco Poggi

Field Summary
 
Fields inherited from class ataspectj.AtAspectjComponent
barrier, CODEPRINT, DEBUG, VERBOSE
 
Constructor Summary
BytecodeCleaner()
           
 
Method Summary
static void removeLocalVariableTables(java.lang.String binaryClassName)
          It's used to clean up from all the methods, that do not contain Annotated Block, the Local Variable Table.
 
Methods inherited from class ataspectj.AtAspectjComponent
done
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BytecodeCleaner

public BytecodeCleaner()
Method Detail

removeLocalVariableTables

public static void removeLocalVariableTables(java.lang.String binaryClassName)
                                      throws java.lang.ClassNotFoundException,
                                             java.io.IOException,
                                             MethodNotFoundException,
                                             ConstructorNotFoundException
It's used to clean up from all the methods, that do not contain Annotated Block, the Local Variable Table.

Parameters:
binaryClassName - the binary class name of the class to clean up.
Throws:
java.lang.ClassNotFoundException - raised if the class is not found.
MethodNotFoundException - raised if an internal error occours.
ConstructorNotFoundException - raised if an internal error occours.
java.io.IOException - raised if there is a IO Error when write back the class.