Class ClassVisitorFactory.ConstantDynamicTranslator

java.lang.Object
net.bytebuddy.asm.ClassVisitorFactory.ConstantDynamicTranslator
All Implemented Interfaces:
ByteCodeAppender
Enclosing class:
ClassVisitorFactory<T>

@Enhance protected static class ClassVisitorFactory.ConstantDynamicTranslator extends Object implements ByteCodeAppender
A method to translate a ConstantDynamic from one namespace to another.
  • Field Details

    • NAME

      protected static final String NAME
      The name of the method.
      See Also:
    • sourceConstantDynamic

      private final Class<?> sourceConstantDynamic
      The ConstantDynamic type in the original namespace.
    • targetConstantDynamic

      private final Class<?> targetConstantDynamic
      The ConstantDynamic type in the targeted namespace.
    • sourceHandle

      private final Class<?> sourceHandle
      The Handle type in the original namespace.
    • targetHandle

      private final Class<?> targetHandle
      The Handle type in the targeted namespace.
  • Constructor Details

    • ConstantDynamicTranslator

      protected ConstantDynamicTranslator(Class<?> sourceConstantDynamic, Class<?> targetConstantDynamic, Class<?> sourceHandle, Class<?> targetHandle)
      Creates a new constant dynamic translator.
      Parameters:
      sourceConstantDynamic - The ConstantDynamic type in the original namespace.
      targetConstantDynamic - The ConstantDynamic type in the targeted namespace.
      sourceHandle - The Handle type in the original namespace.
      targetHandle - The Handle type in the targeted namespace.
  • Method Details

    • apply

      public ByteCodeAppender.Size apply(org.objectweb.asm.MethodVisitor methodVisitor, Implementation.Context implementationContext, MethodDescription instrumentedMethod)
      Applies this byte code appender to a type creation process.
      Specified by:
      apply in interface ByteCodeAppender
      Parameters:
      methodVisitor - The method visitor to which the byte code appender writes its code to.
      implementationContext - The implementation context of the current type creation process.
      instrumentedMethod - The method that is the target of the instrumentation.
      Returns:
      The required size for the applied byte code to run.