From ca27485a5c5c28a20e8320b3e05ca7b7657468a7 Mon Sep 17 00:00:00 2001 From: Tyler Benson Date: Wed, 29 Apr 2020 16:25:43 -0400 Subject: [PATCH] Upgrade Byte Buddy to 1.10.10 (DataDog/dd-trace-java#1409) --- .../tooling/context/FieldBackedProvider.java | 18 ++++++++++++++++-- gradle/dependencies.gradle | 2 +- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/agent-tooling/src/main/java/io/opentelemetry/auto/tooling/context/FieldBackedProvider.java b/agent-tooling/src/main/java/io/opentelemetry/auto/tooling/context/FieldBackedProvider.java index 8cc505731c..6e70446459 100644 --- a/agent-tooling/src/main/java/io/opentelemetry/auto/tooling/context/FieldBackedProvider.java +++ b/agent-tooling/src/main/java/io/opentelemetry/auto/tooling/context/FieldBackedProvider.java @@ -340,7 +340,7 @@ public class FieldBackedProvider implements InstrumentationContextProvider { // TODO: Better to pass through the context of the Instrumenter return new AgentBuilder.Transformer() { final HelperInjector injector = - HelperInjector.forDynamicTypes(this.getClass().getSimpleName(), helpers); + HelperInjector.forDynamicTypes(getClass().getSimpleName(), helpers); @Override public DynamicType.Builder transform( @@ -407,7 +407,7 @@ public class FieldBackedProvider implements InstrumentationContextProvider { .type(safeHasSuperType(named(entry.getKey())), instrumenter.classLoaderMatcher()) .and(safeToInjectFieldsMatcher()) .and(Default.NOT_DECORATOR_MATCHER) - .transform(AgentBuilder.Transformer.NoOp.INSTANCE); + .transform(NoOpTransformer.INSTANCE); /* * We inject helpers here as well as when instrumentation is applied to ensure that @@ -1059,4 +1059,18 @@ public class FieldBackedProvider implements InstrumentationContextProvider { private static String getContextSetterName(final String key) { return "set" + getContextFieldName(key); } + + // Originally found in AgentBuilder.Transformer.NoOp, but removed in 1.10.7 + enum NoOpTransformer implements AgentBuilder.Transformer { + INSTANCE; + + @Override + public DynamicType.Builder transform( + final DynamicType.Builder builder, + final TypeDescription typeDescription, + final ClassLoader classLoader, + final JavaModule module) { + return builder; + } + } } diff --git a/gradle/dependencies.gradle b/gradle/dependencies.gradle index 0a47fa33ce..ba9c672a5b 100644 --- a/gradle/dependencies.gradle +++ b/gradle/dependencies.gradle @@ -18,7 +18,7 @@ ext { groovy : groovyVer, logback : "1.2.3", lombok : "1.18.10", - bytebuddy : "1.10.6", + bytebuddy : "1.10.10", scala : "2.11.12", // Last version to support Java 7 (2.12+ require Java 8+) kotlin : "1.3.72", coroutines : "1.3.0"