Class SubclassDynamicTypeBuilder<T>

Type Parameters:
T - A loaded type that the dynamic type is guaranteed to be a subtype of.
All Implemented Interfaces:
DynamicType.Builder<T>

@Enhance public class SubclassDynamicTypeBuilder<T> extends DynamicType.Builder.AbstractBase.Adapter<T>
A type builder that creates an instrumented type as a subclass, i.e. a type that is not based on an existing class file.
  • Field Details

    • constructorStrategy

      private final ConstructorStrategy constructorStrategy
      The constructor strategy to apply onto the instrumented type.
  • Constructor Details

    • SubclassDynamicTypeBuilder

      public SubclassDynamicTypeBuilder(InstrumentedType.WithFlexibleName instrumentedType, ClassFileVersion classFileVersion, AuxiliaryType.NamingStrategy auxiliaryTypeNamingStrategy, AnnotationValueFilter.Factory annotationValueFilterFactory, AnnotationRetention annotationRetention, Implementation.Context.Factory implementationContextFactory, MethodGraph.Compiler methodGraphCompiler, TypeValidation typeValidation, VisibilityBridgeStrategy visibilityBridgeStrategy, AsmClassReader.Factory classReaderFactory, AsmClassWriter.Factory classWriterFactory, LatentMatcher<? super MethodDescription> ignoredMethods, ConstructorStrategy constructorStrategy)
      Creates a new type builder for creating a subclass.
      Parameters:
      instrumentedType - An instrumented type representing the subclass.
      classFileVersion - The class file version to use for types that are not based on an existing class file.
      auxiliaryTypeNamingStrategy - The naming strategy to use for naming auxiliary types.
      annotationValueFilterFactory - The annotation value filter factory to use.
      annotationRetention - The annotation retention strategy to use.
      implementationContextFactory - The implementation context factory to use.
      methodGraphCompiler - The method graph compiler to use.
      typeValidation - Determines if a type should be explicitly validated.
      visibilityBridgeStrategy - The visibility bridge strategy to apply.
      classReaderFactory - The class reader factory to use.
      classWriterFactory - The class writer factory to use.
      ignoredMethods - A matcher for identifying methods that should be excluded from instrumentation.
      constructorStrategy - The constructor strategy to apply onto the instrumented type.
    • SubclassDynamicTypeBuilder

      protected SubclassDynamicTypeBuilder(InstrumentedType.WithFlexibleName instrumentedType, FieldRegistry fieldRegistry, MethodRegistry methodRegistry, RecordComponentRegistry recordComponentRegistry, TypeAttributeAppender typeAttributeAppender, AsmVisitorWrapper asmVisitorWrapper, ClassFileVersion classFileVersion, AuxiliaryType.NamingStrategy auxiliaryTypeNamingStrategy, AnnotationValueFilter.Factory annotationValueFilterFactory, AnnotationRetention annotationRetention, Implementation.Context.Factory implementationContextFactory, MethodGraph.Compiler methodGraphCompiler, TypeValidation typeValidation, VisibilityBridgeStrategy visibilityBridgeStrategy, AsmClassReader.Factory classReaderFactory, AsmClassWriter.Factory classWriterFactory, LatentMatcher<? super MethodDescription> ignoredMethods, List<? extends DynamicType> auxiliaryTypes, ConstructorStrategy constructorStrategy)
      Creates a new type builder for creating a subclass.
      Parameters:
      instrumentedType - An instrumented type representing the subclass.
      fieldRegistry - The field registry to use.
      methodRegistry - The method registry to use.
      recordComponentRegistry - The record component registry to use.
      typeAttributeAppender - The type attribute appender to apply onto the instrumented type.
      asmVisitorWrapper - The ASM visitor wrapper to apply onto the class writer.
      classFileVersion - The class file version to use for types that are not based on an existing class file.
      auxiliaryTypeNamingStrategy - The naming strategy to use for naming auxiliary types.
      annotationValueFilterFactory - The annotation value filter factory to use.
      annotationRetention - The annotation retention strategy to use.
      implementationContextFactory - The implementation context factory to use.
      methodGraphCompiler - The method graph compiler to use.
      typeValidation - Determines if a type should be explicitly validated.
      visibilityBridgeStrategy - The visibility bridge strategy to apply.
      classReaderFactory - The class reader factory to use.
      classWriterFactory - The class writer factory to use.
      ignoredMethods - A matcher for identifying methods that should be excluded from instrumentation.
      auxiliaryTypes - A list of explicitly required auxiliary types.
      constructorStrategy - The constructor strategy to apply onto the instrumented type.
  • Method Details