@NotThreadSafe public static final class ImmutablePointcutClass.Builder extends Object
ImmutablePointcutClass.
Initialize attributes and then invoke the build() method to create an
immutable instance.
Builder is not thread-safe and generally should not be stored in a field or collection,
but instead used immediately to create instances.
| Modifier and Type | Method and Description |
|---|---|
ImmutablePointcutClass.Builder |
addAllMethods(Iterable<? extends org.glowroot.agent.weaving.PluginDetail.PointcutMethod> elements)
Adds elements to
methods list. |
ImmutablePointcutClass.Builder |
addMethods(org.glowroot.agent.weaving.PluginDetail.PointcutMethod... elements)
Adds elements to
methods list. |
ImmutablePointcutClass.Builder |
addMethods(org.glowroot.agent.weaving.PluginDetail.PointcutMethod element)
Adds one element to
methods list. |
ImmutablePointcutClass |
build()
Builds a new
ImmutablePointcutClass. |
ImmutablePointcutClass.Builder |
bytes(byte... bytes)
Initializes the value for the
bytes attribute. |
ImmutablePointcutClass.Builder |
collocateInClassLoader(boolean collocateInClassLoader)
Initializes the value for the
collocateInClassLoader attribute. |
ImmutablePointcutClass.Builder |
copyFrom(org.glowroot.agent.weaving.PluginDetail.PointcutClass instance)
Fill a builder with attribute values from the provided
PointcutClass instance. |
ImmutablePointcutClass.Builder |
methods(Iterable<? extends org.glowroot.agent.weaving.PluginDetail.PointcutMethod> elements)
Sets or replaces all elements for
methods list. |
ImmutablePointcutClass.Builder |
pluginJar(File pluginJar)
Initializes the value for the
pluginJar attribute. |
ImmutablePointcutClass.Builder |
pointcut(Pointcut pointcut)
Initializes the value for the
pointcut attribute. |
ImmutablePointcutClass.Builder |
type(org.objectweb.asm.Type type)
Initializes the value for the
type attribute. |
public final ImmutablePointcutClass.Builder addAllMethods(Iterable<? extends org.glowroot.agent.weaving.PluginDetail.PointcutMethod> elements)
methods list.elements - An iterable of methods elementsthis builder for use in a chained invocationpublic final ImmutablePointcutClass.Builder addMethods(org.glowroot.agent.weaving.PluginDetail.PointcutMethod... elements)
methods list.elements - An array of methods elementsthis builder for use in a chained invocationpublic final ImmutablePointcutClass.Builder addMethods(org.glowroot.agent.weaving.PluginDetail.PointcutMethod element)
methods list.element - A methods elementthis builder for use in a chained invocationpublic ImmutablePointcutClass build()
ImmutablePointcutClass.IllegalStateException - if any required attributes are missingpublic final ImmutablePointcutClass.Builder bytes(byte... bytes)
bytes attribute.bytes - The elements for bytesthis builder for use in a chained invocationpublic final ImmutablePointcutClass.Builder collocateInClassLoader(boolean collocateInClassLoader)
collocateInClassLoader attribute.collocateInClassLoader - The value for collocateInClassLoaderthis builder for use in a chained invocationpublic final ImmutablePointcutClass.Builder copyFrom(org.glowroot.agent.weaving.PluginDetail.PointcutClass instance)
PointcutClass instance.
Regular attribute values will be replaced with those from the given instance.
Absent optional values will not replace present values.
Collection elements and entries will be added, not replaced.instance - The instance from which to copy valuesthis builder for use in a chained invocationpublic final ImmutablePointcutClass.Builder methods(Iterable<? extends org.glowroot.agent.weaving.PluginDetail.PointcutMethod> elements)
methods list.elements - An iterable of methods elementsthis builder for use in a chained invocationpublic final ImmutablePointcutClass.Builder pluginJar(@Nullable File pluginJar)
pluginJar attribute.pluginJar - The value for pluginJar (can be null)this builder for use in a chained invocationpublic final ImmutablePointcutClass.Builder pointcut(Pointcut pointcut)
pointcut attribute.pointcut - The value for pointcutthis builder for use in a chained invocationpublic final ImmutablePointcutClass.Builder type(org.objectweb.asm.Type type)
type attribute.type - The value for typethis builder for use in a chained invocationCopyright © 2011–2020 Glowroot contributors. All rights reserved.