Class PatchByteCodeVersionTransformer
java.lang.Object
io.opentelemetry.javaagent.tooling.instrumentation.indy.PatchByteCodeVersionTransformer
- All Implemented Interfaces:
net.bytebuddy.agent.builder.AgentBuilder.Transformer
public class PatchByteCodeVersionTransformer
extends Object
implements net.bytebuddy.agent.builder.AgentBuilder.Transformer
Patches the class file version to 51 (Java 7) in order to support injecting
INVOKEDYNAMIC
instructions via Advice.WithCustomMapping.bootstrap(java.lang.reflect.Constructor<?>) which is important for indy plugins.-
Nested Class Summary
Nested classes/interfaces inherited from interface net.bytebuddy.agent.builder.AgentBuilder.Transformer
net.bytebuddy.agent.builder.AgentBuilder.Transformer.ForAdvice, net.bytebuddy.agent.builder.AgentBuilder.Transformer.ForBuildPlugin -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionnet.bytebuddy.dynamic.DynamicType.Builder<?>transform(net.bytebuddy.dynamic.DynamicType.Builder<?> builder, net.bytebuddy.description.type.TypeDescription typeDescription, ClassLoader classLoader, net.bytebuddy.utility.JavaModule javaModule, ProtectionDomain protectionDomain)
-
Constructor Details
-
PatchByteCodeVersionTransformer
public PatchByteCodeVersionTransformer()
-
-
Method Details
-
transform
public net.bytebuddy.dynamic.DynamicType.Builder<?> transform(net.bytebuddy.dynamic.DynamicType.Builder<?> builder, net.bytebuddy.description.type.TypeDescription typeDescription, ClassLoader classLoader, net.bytebuddy.utility.JavaModule javaModule, ProtectionDomain protectionDomain) - Specified by:
transformin interfacenet.bytebuddy.agent.builder.AgentBuilder.Transformer
-