Package net.bytebuddy.agent.builder
Interface AgentBuilder.RedefinitionStrategy.BatchAllocator
-
- All Known Implementing Classes:
AgentBuilder.RedefinitionStrategy.BatchAllocator.ForFixedSize
,AgentBuilder.RedefinitionStrategy.BatchAllocator.ForMatchedGrouping
,AgentBuilder.RedefinitionStrategy.BatchAllocator.ForTotal
,AgentBuilder.RedefinitionStrategy.BatchAllocator.Partitioning
,AgentBuilder.RedefinitionStrategy.BatchAllocator.Slicing
- Enclosing class:
- AgentBuilder.RedefinitionStrategy
public static interface AgentBuilder.RedefinitionStrategy.BatchAllocator
A batch allocator which is responsible for applying a redefinition in a batches. A class redefinition or retransformation can be a time-consuming operation rendering a JVM non-responsive. In combination with a aAgentBuilder.RedefinitionStrategy.Listener
, it is also possible to apply pauses between batches to distribute the load of a retransformation over time.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
AgentBuilder.RedefinitionStrategy.BatchAllocator.ForFixedSize
A batch allocator that creates chunks with a fixed size as batch jobs.static class
AgentBuilder.RedefinitionStrategy.BatchAllocator.ForMatchedGrouping
A batch allocator that groups all batches by discriminating types using a type matcher.static class
AgentBuilder.RedefinitionStrategy.BatchAllocator.ForTotal
A batch allocator that includes all types in a single batch.static class
AgentBuilder.RedefinitionStrategy.BatchAllocator.Partitioning
A partitioning batch allocator that splits types for redefinition into a fixed amount of parts.static class
AgentBuilder.RedefinitionStrategy.BatchAllocator.Slicing
A slicing batch allocator that assures that any batch is within a certain size range.
-
Field Summary
Fields Modifier and Type Field Description static int
FIRST_BATCH
The index of the first batch.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.lang.Iterable<? extends java.util.List<java.lang.Class<?>>>
batch(java.util.List<java.lang.Class<?>> types)
Splits a list of types to be retransformed into separate batches.
-
-
-
Field Detail
-
FIRST_BATCH
static final int FIRST_BATCH
The index of the first batch.- See Also:
- Constant Field Values
-
-
Method Detail
-
batch
java.lang.Iterable<? extends java.util.List<java.lang.Class<?>>> batch(java.util.List<java.lang.Class<?>> types)
Splits a list of types to be retransformed into separate batches.- Parameters:
types
- A list of types which should be retransformed.- Returns:
- An iterable of retransformations within a batch.
-
-