Package org.jboss.jandex
Class AnnotationInstanceBuilder
- java.lang.Object
-
- org.jboss.jandex.AnnotationInstanceBuilder
-
public final class AnnotationInstanceBuilder extends java.lang.Object
Builder forAnnotationInstance
. Instances of the builder are not reusable.Expected usage is: call
add()
as many times as required to add annotation members, and then callbuild()
to create anAnnotationInstance
without target, orbuildWithTarget()
to create anAnnotationInstance
with target. Attempt toadd()
a member with the same name multiple times leads to an exception.This builder does not check whether the annotation type declares a member with given name or whether that member declares a default value.
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.Set<java.lang.String>
alreadyAdded
private DotName
annotationType
private boolean
runtimeVisible
private static java.lang.String
VALUE
private java.util.List<AnnotationValue>
values
-
Constructor Summary
Constructors Constructor Description AnnotationInstanceBuilder(DotName annotationType, boolean runtimeVisible)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AnnotationInstanceBuilder
add(java.lang.String name, boolean value)
Adds a boolean-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, boolean[] values)
Adds a boolean array-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, byte value)
Adds a byte-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, byte[] values)
Adds a byte array-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, char value)
Adds a char-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, char[] values)
Adds a char array-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, double value)
Adds a double-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, double[] values)
Adds a double array-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, float value)
Adds a float-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, float[] values)
Adds a float array-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, int value)
Adds an int-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, int[] values)
Adds an int array-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, long value)
Adds a long-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, long[] values)
Adds a long array-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, short value)
Adds a short-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, short[] values)
Adds a short array-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, java.lang.Class<?> value)
Adds a class-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, java.lang.Class<?>[] values)
Adds a class array-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, java.lang.Class<? extends java.lang.Enum<?>> enumType, java.lang.String enumValue)
Adds an enum-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, java.lang.Class<? extends java.lang.Enum<?>> enumType, java.lang.String[] enumValues)
Adds an enum array-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, java.lang.Enum<?> value)
Adds an enum-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, java.lang.Enum<?>[] values)
Adds an enum array-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, java.lang.String value)
Adds a String-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, java.lang.String[] values)
Adds a String array-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, AnnotationInstance value)
Adds an annotation-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, AnnotationInstance[] values)
Adds an annotation array-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, ClassInfo value)
Adds a class-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, ClassInfo[] values)
Adds a class array-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, ClassInfo enumType, java.lang.String enumValue)
Adds an enum-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, ClassInfo enumType, java.lang.String[] enumValues)
Adds an enum array-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, Type value)
Adds a class-valued annotation member with givenname
.AnnotationInstanceBuilder
add(java.lang.String name, Type[] values)
Adds a class array-valued annotation member with givenname
.AnnotationInstanceBuilder
add(AnnotationValue value)
Adds a pre-defined annotation member whose name and value are defined by givenvalue
.AnnotationInstanceBuilder
addAll(java.util.List<AnnotationValue> values)
Adds all pre-defined annotation members whose names and values are defined by givenvalues
.AnnotationInstance
build()
Returns anAnnotationInstance
that includes all annotation members defined by previous method calls on this builder.AnnotationInstance
buildWithTarget(AnnotationTarget target)
Returns anAnnotationInstance
that includes all annotation members defined by previous method calls on this builder.private void
validateType(Type type)
AnnotationInstanceBuilder
value(boolean value)
Adds a boolean-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(boolean[] values)
Adds a boolean array-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(byte value)
Adds a byte-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(byte[] values)
Adds a byte array-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(char value)
Adds a char-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(char[] values)
Adds a char array-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(double value)
Adds a double-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(double[] values)
Adds a double array-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(float value)
Adds a float-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(float[] values)
Adds a float array-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(int value)
Adds an int-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(int[] values)
Adds an int array-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(long value)
Adds a long-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(long[] values)
Adds a long array-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(short value)
Adds a short-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(short[] values)
Adds a short array-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(java.lang.Class<?> value)
Adds a class-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(java.lang.Class<?>[] values)
Adds a class array-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(java.lang.Class<? extends java.lang.Enum<?>> enumType, java.lang.String enumValue)
Adds an enum-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(java.lang.Class<? extends java.lang.Enum<?>> enumType, java.lang.String[] enumValues)
Adds an enum array-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(java.lang.Enum<?> value)
Adds an enum-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(java.lang.Enum<?>[] values)
Adds an enum array-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(java.lang.String value)
Adds a String-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(java.lang.String[] values)
Adds a String array-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(AnnotationInstance value)
Adds an annotation-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(AnnotationInstance[] values)
Adds an annotation array-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(ClassInfo value)
Adds a class-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(ClassInfo[] values)
Adds a class array-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(ClassInfo enumType, java.lang.String enumValue)
Adds an enum-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(ClassInfo enumType, java.lang.String[] enumValues)
Adds an enum array-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(Type value)
Adds a class-valued annotation member calledvalue
.AnnotationInstanceBuilder
value(Type[] values)
Adds a class array-valued annotation member calledvalue
.AnnotationInstanceBuilder
with(java.util.function.Consumer<AnnotationInstanceBuilder> action)
Calls givenaction
with this builder as an argument, and returns this builder after the action finishes.
-
-
-
Field Detail
-
VALUE
private static final java.lang.String VALUE
- See Also:
- Constant Field Values
-
annotationType
private final DotName annotationType
-
runtimeVisible
private final boolean runtimeVisible
-
values
private final java.util.List<AnnotationValue> values
-
alreadyAdded
private final java.util.Set<java.lang.String> alreadyAdded
-
-
Constructor Detail
-
AnnotationInstanceBuilder
AnnotationInstanceBuilder(DotName annotationType, boolean runtimeVisible)
-
-
Method Detail
-
add
public AnnotationInstanceBuilder add(AnnotationValue value)
Adds a pre-defined annotation member whose name and value are defined by givenvalue
.- Parameters:
value
- the pre-defined annotation member, must not benull
- Returns:
- this builder
-
addAll
public AnnotationInstanceBuilder addAll(java.util.List<AnnotationValue> values)
Adds all pre-defined annotation members whose names and values are defined by givenvalues
.- Parameters:
values
- the pre-defined annotation members, must not benull
or containnull
- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, boolean value)
Adds a boolean-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
value
- the boolean value- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, boolean[] values)
Adds a boolean array-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
values
- the boolean array, must not benull
- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, byte value)
Adds a byte-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
value
- the byte value- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, byte[] values)
Adds a byte array-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
values
- the byte array, must not benull
- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, short value)
Adds a short-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
value
- the short value- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, short[] values)
Adds a short array-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
values
- the short array, must not benull
- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, int value)
Adds an int-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
value
- the int value- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, int[] values)
Adds an int array-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
values
- the int array, must not benull
- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, long value)
Adds a long-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
value
- the long value- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, long[] values)
Adds a long array-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
values
- the long array, must not benull
- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, float value)
Adds a float-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
value
- the float value- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, float[] values)
Adds a float array-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
values
- the float array, must not benull
- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, double value)
Adds a double-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
value
- the double value- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, double[] values)
Adds a double array-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
values
- the double array, must not benull
- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, char value)
Adds a char-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
value
- the char value- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, char[] values)
Adds a char array-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
values
- the char array, must not benull
- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, java.lang.String value)
Adds a String-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
value
- the String value, must not benull
- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, java.lang.String[] values)
Adds a String array-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
values
- the String array, must not benull
or containnull
- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, java.lang.Enum<?> value)
Adds an enum-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
value
- the enum value, must not benull
- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, java.lang.Enum<?>[] values)
Adds an enum array-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
values
- the enum array, must not benull
or containnull
- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, java.lang.Class<? extends java.lang.Enum<?>> enumType, java.lang.String enumValue)
Adds an enum-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
enumType
- the enum type, must not benull
enumValue
- name of the enum constant, must not benull
- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, java.lang.Class<? extends java.lang.Enum<?>> enumType, java.lang.String[] enumValues)
Adds an enum array-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
enumType
- the enum type, must not benull
enumValues
- names of the enum constants, must not benull
or containnull
- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, ClassInfo enumType, java.lang.String enumValue)
Adds an enum-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
enumType
- the enum type, must not benull
enumValue
- name of the enum constant, must not benull
- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, ClassInfo enumType, java.lang.String[] enumValues)
Adds an enum array-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
enumType
- the enum type, must not benull
enumValues
- names of the enum constants, must not benull
or containnull
- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, java.lang.Class<?> value)
Adds a class-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
value
- the class value, must not benull
- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, java.lang.Class<?>[] values)
Adds a class array-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
values
- the class array, must not benull
or containnull
- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, ClassInfo value)
Adds a class-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
value
- the class value, must not benull
- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, ClassInfo[] values)
Adds a class array-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
values
- the class array, must not benull
or containnull
- Returns:
- this builder
-
validateType
private void validateType(Type type)
-
add
public AnnotationInstanceBuilder add(java.lang.String name, Type value)
Adds a class-valued annotation member with givenname
. Thevalue
parameter may only be:VoidType
;PrimitiveType
;ClassType
;ArrayType
whose element type is eitherPrimitiveType
orClassType
.
- Parameters:
name
- the member name, must not benull
value
- the class value, must not benull
- Returns:
- this builder
- Throws:
java.lang.IllegalArgumentException
- if given type is invalid, as described above
-
add
public AnnotationInstanceBuilder add(java.lang.String name, Type[] values)
Adds a class array-valued annotation member with givenname
. Thevalues
parameter may only include:VoidType
;PrimitiveType
;ClassType
;ArrayType
whose element type is eitherPrimitiveType
orClassType
.
- Parameters:
name
- the member name, must not benull
values
- the class array, must not benull
or containnull
- Returns:
- this builder
- Throws:
java.lang.IllegalArgumentException
- if any given type is invalid, as described above
-
add
public AnnotationInstanceBuilder add(java.lang.String name, AnnotationInstance value)
Adds an annotation-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
value
- the annotation value, must not benull
- Returns:
- this builder
-
add
public AnnotationInstanceBuilder add(java.lang.String name, AnnotationInstance[] values)
Adds an annotation array-valued annotation member with givenname
.- Parameters:
name
- the member name, must not benull
values
- the annotation array, must not benull
or containnull
- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(boolean value)
Adds a boolean-valued annotation member calledvalue
.- Parameters:
value
- the boolean value- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(boolean[] values)
Adds a boolean array-valued annotation member calledvalue
.- Parameters:
values
- the boolean array, must not benull
- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(byte value)
Adds a byte-valued annotation member calledvalue
.- Parameters:
value
- the byte value- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(byte[] values)
Adds a byte array-valued annotation member calledvalue
.- Parameters:
values
- the byte array, must not benull
- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(short value)
Adds a short-valued annotation member calledvalue
.- Parameters:
value
- the short value- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(short[] values)
Adds a short array-valued annotation member calledvalue
.- Parameters:
values
- the short array, must not benull
- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(int value)
Adds an int-valued annotation member calledvalue
.- Parameters:
value
- the int value- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(int[] values)
Adds an int array-valued annotation member calledvalue
.- Parameters:
values
- the int array, must not benull
- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(long value)
Adds a long-valued annotation member calledvalue
.- Parameters:
value
- the long value- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(long[] values)
Adds a long array-valued annotation member calledvalue
.- Parameters:
values
- the long array, must not benull
- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(float value)
Adds a float-valued annotation member calledvalue
.- Parameters:
value
- the float value- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(float[] values)
Adds a float array-valued annotation member calledvalue
.- Parameters:
values
- the float array, must not benull
- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(double value)
Adds a double-valued annotation member calledvalue
.- Parameters:
value
- the double value- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(double[] values)
Adds a double array-valued annotation member calledvalue
.- Parameters:
values
- the double array, must not benull
- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(char value)
Adds a char-valued annotation member calledvalue
.- Parameters:
value
- the char value- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(char[] values)
Adds a char array-valued annotation member calledvalue
.- Parameters:
values
- the char array, must not benull
- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(java.lang.String value)
Adds a String-valued annotation member calledvalue
.- Parameters:
value
- the String value, must not benull
- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(java.lang.String[] values)
Adds a String array-valued annotation member calledvalue
.- Parameters:
values
- the String array, must not benull
or containnull
- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(java.lang.Enum<?> value)
Adds an enum-valued annotation member calledvalue
.- Parameters:
value
- the enum value, must not benull
- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(java.lang.Enum<?>[] values)
Adds an enum array-valued annotation member calledvalue
.- Parameters:
values
- the enum array, must not benull
or containnull
- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(java.lang.Class<? extends java.lang.Enum<?>> enumType, java.lang.String enumValue)
Adds an enum-valued annotation member calledvalue
.- Parameters:
enumType
- the enum type, must not benull
enumValue
- name of the enum constant, must not benull
- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(java.lang.Class<? extends java.lang.Enum<?>> enumType, java.lang.String[] enumValues)
Adds an enum array-valued annotation member calledvalue
.- Parameters:
enumType
- the enum type, must not benull
enumValues
- names of the enum constants, must not benull
or containnull
- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(ClassInfo enumType, java.lang.String enumValue)
Adds an enum-valued annotation member calledvalue
.- Parameters:
enumType
- the enum type, must not benull
enumValue
- name of the enum constant, must not benull
- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(ClassInfo enumType, java.lang.String[] enumValues)
Adds an enum array-valued annotation member calledvalue
.- Parameters:
enumType
- the enum type, must not benull
enumValues
- names of the enum constants, must not benull
or containnull
- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(java.lang.Class<?> value)
Adds a class-valued annotation member calledvalue
.- Parameters:
value
- the class value, must not benull
- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(java.lang.Class<?>[] values)
Adds a class array-valued annotation member calledvalue
.- Parameters:
values
- the class array, must not benull
or containnull
- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(ClassInfo value)
Adds a class-valued annotation member calledvalue
.- Parameters:
value
- the class value, must not benull
- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(ClassInfo[] values)
Adds a class array-valued annotation member calledvalue
.- Parameters:
values
- the class array, must not benull
or containnull
- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(Type value)
Adds a class-valued annotation member calledvalue
. Thevalue
parameter may only be:VoidType
;PrimitiveType
;ClassType
;ArrayType
whose element type is eitherPrimitiveType
orClassType
.
- Parameters:
value
- the class value, must not benull
- Returns:
- this builder
- Throws:
java.lang.IllegalArgumentException
- if given type is invalid, as described above
-
value
public AnnotationInstanceBuilder value(Type[] values)
Adds a class array-valued annotation member calledvalue
. Thevalues
parameter may only contain:VoidType
;PrimitiveType
;ClassType
;ArrayType
whose element type is eitherPrimitiveType
orClassType
.
- Parameters:
values
- the class array, must not benull
or containnull
- Returns:
- this builder
- Throws:
java.lang.IllegalArgumentException
- if any given type is invalid, as described above
-
value
public AnnotationInstanceBuilder value(AnnotationInstance value)
Adds an annotation-valued annotation member calledvalue
.- Parameters:
value
- the annotation value, must not benull
- Returns:
- this builder
-
value
public AnnotationInstanceBuilder value(AnnotationInstance[] values)
Adds an annotation array-valued annotation member calledvalue
.- Parameters:
values
- the annotation array, must not benull
or containnull
- Returns:
- this builder
-
with
public AnnotationInstanceBuilder with(java.util.function.Consumer<AnnotationInstanceBuilder> action)
Calls givenaction
with this builder as an argument, and returns this builder after the action finishes. This is useful to express a non-trivial control flow without breaking fluent usage.- Parameters:
action
- an action to be performed on this builder, must not benull
- Returns:
- this builder
-
build
public AnnotationInstance build()
Returns anAnnotationInstance
that includes all annotation members defined by previous method calls on this builder. The returnedAnnotationInstance
has no target. Afterbuild()
is called, this builder instance should be discarded.- Returns:
- the built
AnnotationInstance
, nevernull
-
buildWithTarget
public AnnotationInstance buildWithTarget(AnnotationTarget target)
Returns anAnnotationInstance
that includes all annotation members defined by previous method calls on this builder. The returnedAnnotationInstance
has giventarget
. AfterbuildWithTarget()
is called, this builder instance should be discarded.- Parameters:
target
- the target of the built annotation instance; ifnull
, the built annotation instance has no target- Returns:
- the built
AnnotationInstance
, nevernull
-
-