Class JavassistInstrumenter

java.lang.Object
org.hibernate.bytecode.buildtime.AbstractInstrumenter
org.hibernate.bytecode.buildtime.JavassistInstrumenter
All Implemented Interfaces:
Instrumenter

public class JavassistInstrumenter extends AbstractInstrumenter
Strategy for performing build-time instrumentation of persistent classes in order to enable field-level interception using Javassist.
  • Constructor Details

  • Method Details

    • getClassDescriptor

      protected ClassDescriptor getClassDescriptor(byte[] bytecode) throws IOException
      Description copied from class: AbstractInstrumenter
      Given the bytecode of a java class, retrieve the descriptor for that class.
      Specified by:
      getClassDescriptor in class AbstractInstrumenter
      Parameters:
      bytecode - The class bytecode.
      Returns:
      The class's descriptor
      Throws:
      IOException
    • getClassTransformer

      protected ClassTransformer getClassTransformer(ClassDescriptor descriptor, Set classNames)
      Description copied from class: AbstractInstrumenter
      Create class transformer for the class.
      Specified by:
      getClassTransformer in class AbstractInstrumenter
      Parameters:
      descriptor - The descriptor of the class to be instrumented.
      classNames - The names of all classes to be instrumented; the "pipeline" if you will.
      Returns:
      The transformer for the given class; may return null to indicate that transformation should be skipped (ala already instrumented).