Interface ClassPreProcessor

All Known Implementing Classes:
Aj

public interface ClassPreProcessor
Generic class pre processor interface that allows to separate the AspectJ 5 load time weaving from Java 5 JVMTI interfaces for further use on Java 1.3 / 1.4
Author:
Alexandre Vasseur, Andy Clement
  • Method Details

    • initialize

      void initialize()
      Post constructor initialization, usually empty
    • preProcess

      byte[] preProcess(String className, byte[] bytes, ClassLoader classLoader, ProtectionDomain protectionDomain)
      Parameters:
      className - the name of the class in the internal form of fully qualified class and interface names as defined in The Java Virtual Machine Specification. For example, "java/util/List".
      bytes - the input byte buffer in class file format - must not be modified
      classLoader - the defining loader of the class to be transformed, may be null if the bootstrap loader
      protectionDomain - the protection domain of the class being defined or redefined
      Returns:
      a well-formed class file buffer (weaving result), or null if no weaving was performed
      See Also:
    • prepareForRedefinition

      void prepareForRedefinition(ClassLoader loader, String className)