Merge pull request #1240 from DataDog/tyler/executor-matcher-reorder

Reorder java-concurrent matchers
This commit is contained in:
Tyler Benson 2020-02-20 17:54:39 -08:00 committed by GitHub
commit 5e37ca02f1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 28 additions and 27 deletions

View File

@ -102,12 +102,10 @@ public abstract class AbstractExecutorInstrumentation extends Instrumenter.Defau
@Override
public ElementMatcher<TypeDescription> typeMatcher() {
final ElementMatcher.Junction<TypeDescription> matcher =
not(isInterface()).and(safeHasInterface(named(Executor.class.getName())));
if (TRACE_ALL_EXECUTORS) {
return matcher;
}
return matcher.and(
ElementMatcher.Junction<TypeDescription> matcher = not(isInterface());
if (!TRACE_ALL_EXECUTORS) {
matcher =
matcher.and(
new ElementMatcher<TypeDescription>() {
@Override
public boolean matches(final TypeDescription target) {
@ -130,6 +128,9 @@ public abstract class AbstractExecutorInstrumentation extends Instrumenter.Defau
}
});
}
return matcher.and(
safeHasInterface(named(Executor.class.getName()))); // Apply expensive matcher last.
}
@Override
public String[] helperClassNames() {

View File

@ -79,7 +79,6 @@ public final class FutureInstrumentation extends Instrumenter.Default {
@Override
public ElementMatcher<TypeDescription> typeMatcher() {
return not(isInterface())
.and(safeHasInterface(named(Future.class.getName())))
.and(
new ElementMatcher<TypeDescription>() {
@Override
@ -90,7 +89,8 @@ public final class FutureInstrumentation extends Instrumenter.Default {
}
return whitelisted;
}
});
})
.and(safeHasInterface(named(Future.class.getName()))); // Apply expensive matcher last.
}
@Override