Interface AgentBuilder.FallbackStrategy
- All Known Implementing Classes:
AgentBuilder.FallbackStrategy.ByThrowableType, AgentBuilder.FallbackStrategy.Simple
- Enclosing interface:
AgentBuilder
public static interface AgentBuilder.FallbackStrategy
A fallback strategy allows to reattempt a transformation or a consideration for redefinition/retransformation in case an exception
occurs. Doing so, it is possible to use a
TypePool rather than using a loaded type description backed by a Class.
Loaded types can raise exceptions and errors if a ClassLoader cannot resolve all types that this class references. Using
a type pool, such errors can be avoided as type descriptions can be resolved lazily, avoiding such errors.-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic classA fallback strategy that discriminates by the type of theThrowablethat triggered a request.static enumA simple fallback strategy that either always reattempts a transformation or never does so. -
Method Summary
Modifier and TypeMethodDescriptionbooleanisFallback(Class<?> type, Throwable throwable) Returnstrueif the supplied type and throwable combination should result in a reattempt where the loaded type is not used for querying information.
-
Method Details
-
isFallback
Returnstrueif the supplied type and throwable combination should result in a reattempt where the loaded type is not used for querying information.- Parameters:
type- The loaded type that was queried during the transformation attempt.throwable- The error or exception that was caused during the transformation.- Returns:
trueif the supplied type and throwable combination should
-