Interface AnnotationBuilder
-
public interface AnnotationBuilderBuilder for annotations of given type. Expected usage is:- create the builder using
of(Class)orof(ClassInfo); - use the
value()andmember()methods to define annotation members; - call
build()to create anAnnotationInfo.
Note that values of all members of given annotation type must be defined before calling
build(), except of annotation members that declare a default value. If a value is not defined for an annotation member that does not have a default value,build()will throw an exception.Defining values of members that do not exist on given annotation type is possible, and such members will be retained in the resulting
AnnotationInfo. However, if thatAnnotationInfois later transformed to an instance of the annotation type, the non-existing members will disappear.- Since:
- 4.0
- create the builder using
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description AnnotationInfobuild()Returns anAnnotationInfothat includes all annotation members defined by previous method calls on this builder.AnnotationBuildermember(String name, boolean value)Adds a boolean-valued annotation member with givenname.AnnotationBuildermember(String name, boolean[] values)Adds a boolean array-valued annotation member with givenname.AnnotationBuildermember(String name, byte value)Adds a byte-valued annotation member with givenname.AnnotationBuildermember(String name, byte[] values)Adds a byte array-valued annotation member with givenname.AnnotationBuildermember(String name, char value)Adds a char-valued annotation member with givenname.AnnotationBuildermember(String name, char[] values)Adds a char array-valued annotation member with givenname.AnnotationBuildermember(String name, double value)Adds a double-valued annotation member with givenname.AnnotationBuildermember(String name, double[] values)Adds a double array-valued annotation member with givenname.AnnotationBuildermember(String name, float value)Adds a float-valued annotation member with givenname.AnnotationBuildermember(String name, float[] values)Adds a float array-valued annotation member with givenname.AnnotationBuildermember(String name, int value)Adds an int-valued annotation member with givenname.AnnotationBuildermember(String name, int[] values)Adds an int array-valued annotation member with givenname.AnnotationBuildermember(String name, long value)Adds a long-valued annotation member with givenname.AnnotationBuildermember(String name, long[] values)Adds a long array-valued annotation member with givenname.AnnotationBuildermember(String name, short value)Adds a short-valued annotation member with givenname.AnnotationBuildermember(String name, short[] values)Adds a short array-valued annotation member with givenname.AnnotationBuildermember(String name, AnnotationInfo value)Adds an annotation-valued annotation member with givenname.AnnotationBuildermember(String name, AnnotationInfo[] values)Adds an annotation array-valued annotation member with givenname.AnnotationBuildermember(String name, AnnotationMember value)Adds an annotation member with givenname, whose value is givenvalue.AnnotationBuildermember(String name, ClassInfo value)Adds a class-valued annotation member with givenname.AnnotationBuildermember(String name, ClassInfo[] values)Adds a class array-valued annotation member with givenname.AnnotationBuildermember(String name, ClassInfo enumType, String enumValue)Adds an enum-valued annotation member with givenname.AnnotationBuildermember(String name, ClassInfo enumType, String[] enumValues)Adds an enum array-valued annotation member with givenname.AnnotationBuildermember(String name, Type value)Adds a class-valued annotation member with givenname.AnnotationBuildermember(String name, Type[] values)Adds a class array-valued annotation member with givenname.AnnotationBuildermember(String name, Annotation value)Adds an annotation-valued annotation member with givenname.AnnotationBuildermember(String name, Annotation[] values)Adds an annotation array-valued annotation member with givenname.AnnotationBuildermember(String name, Class<?> value)Adds a class-valued annotation member with givenname.AnnotationBuildermember(String name, Class<?>[] values)Adds a class array-valued annotation member with givenname.AnnotationBuildermember(String name, Class<? extends Enum<?>> enumType, String enumValue)Adds an enum-valued annotation member with givenname.AnnotationBuildermember(String name, Class<? extends Enum<?>> enumType, String[] enumValues)Adds an enum array-valued annotation member with givenname.AnnotationBuildermember(String name, Enum<?> value)Adds an enum-valued annotation member with givenname.AnnotationBuildermember(String name, Enum<?>[] values)Adds an enum array-valued annotation member with givenname.AnnotationBuildermember(String name, String value)Adds a String-valued annotation member with givenname.AnnotationBuildermember(String name, String[] values)Adds a String array-valued annotation member with givenname.static AnnotationBuilderof(ClassInfo annotationType)Returns a newAnnotationBuilderthat builds an annotation of given type.static AnnotationBuilderof(Class<? extends Annotation> annotationType)Returns a newAnnotationBuilderthat builds an annotation of given type.default AnnotationBuildervalue(boolean value)Adds a boolean-valued annotation member calledvalue.default AnnotationBuildervalue(boolean[] values)Adds a boolean array-valued annotation member calledvalue.default AnnotationBuildervalue(byte value)Adds a byte-valued annotation member calledvalue.default AnnotationBuildervalue(byte[] values)Adds a byte array-valued annotation member calledvalue.default AnnotationBuildervalue(char value)Adds a char-valued annotation member calledvalue.default AnnotationBuildervalue(char[] values)Adds a char array-valued annotation member calledvalue.default AnnotationBuildervalue(double value)Adds a double-valued annotation member calledvalue.default AnnotationBuildervalue(double[] values)Adds a double array-valued annotation member calledvalue.default AnnotationBuildervalue(float value)Adds a float-valued annotation member calledvalue.default AnnotationBuildervalue(float[] values)Adds a float array-valued annotation member calledvalue.default AnnotationBuildervalue(int value)Adds an int-valued annotation member calledvalue.default AnnotationBuildervalue(int[] values)Adds an int array-valued annotation member calledvalue.default AnnotationBuildervalue(long value)Adds a long-valued annotation member calledvalue.default AnnotationBuildervalue(long[] values)Adds a long array-valued annotation member calledvalue.default AnnotationBuildervalue(short value)Adds a short-valued annotation member calledvalue.default AnnotationBuildervalue(short[] values)Adds a short array-valued annotation member calledvalue.default AnnotationBuildervalue(AnnotationInfo value)Adds an annotation-valued annotation member calledvalue.default AnnotationBuildervalue(AnnotationInfo[] values)Adds an annotation array-valued annotation member calledvalue.default AnnotationBuildervalue(AnnotationMember value)Adds an annotation member calledvalue, whose value is givenvalue.default AnnotationBuildervalue(ClassInfo value)Adds a class-valued annotation member calledvalue.default AnnotationBuildervalue(ClassInfo[] values)Adds a class array-valued annotation member calledvalue.default AnnotationBuildervalue(ClassInfo enumType, String enumValue)Adds an enum-valued annotation member calledvalue.default AnnotationBuildervalue(ClassInfo enumType, String[] enumValues)Adds an enum array-valued annotation member calledvalue.default AnnotationBuildervalue(Type value)Adds a class-valued annotation member calledvalue.default AnnotationBuildervalue(Type[] values)Adds a class array-valued annotation member calledvalue.default AnnotationBuildervalue(Annotation value)Adds an annotation-valued annotation member calledvalue.default AnnotationBuildervalue(Annotation[] values)Adds an annotation array-valued annotation member calledvalue.default AnnotationBuildervalue(Class<?> value)Adds a class-valued annotation member calledvalue.default AnnotationBuildervalue(Class<?>[] values)Adds a class array-valued annotation member calledvalue.default AnnotationBuildervalue(Class<? extends Enum<?>> enumType, String enumValue)Adds an enum-valued annotation member calledvalue.default AnnotationBuildervalue(Class<? extends Enum<?>> enumType, String[] enumValues)Adds an enum array-valued annotation member calledvalue.default AnnotationBuildervalue(Enum<?> value)Adds an enum-valued annotation member calledvalue.default AnnotationBuildervalue(Enum<?>[] values)Adds an enum array-valued annotation member calledvalue.default AnnotationBuildervalue(String value)Adds a String-valued annotation member calledvalue.default AnnotationBuildervalue(String[] values)Adds a String array-valued annotation member calledvalue.
-
-
-
Method Detail
-
of
static AnnotationBuilder of(Class<? extends Annotation> annotationType)
Returns a newAnnotationBuilderthat builds an annotation of given type.- Parameters:
annotationType- the annotation type, must not benull- Returns:
- a new
AnnotationBuilder, nevernull
-
of
static AnnotationBuilder of(ClassInfo annotationType)
Returns a newAnnotationBuilderthat builds an annotation of given type.- Parameters:
annotationType- the annotation type, must not benull- Returns:
- a new
AnnotationBuilder
-
value
default AnnotationBuilder value(AnnotationMember value)
Adds an annotation member calledvalue, whose value is givenvalue.- Parameters:
value- value of the annotation member- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(boolean value)
Adds a boolean-valued annotation member calledvalue.- Parameters:
value- the boolean value- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(boolean[] values)
Adds a boolean array-valued annotation member calledvalue.- Parameters:
values- the boolean array, must not benull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(byte value)
Adds a byte-valued annotation member calledvalue.- Parameters:
value- the byte value- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(byte[] values)
Adds a byte array-valued annotation member calledvalue.- Parameters:
values- the byte array, must not benull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(short value)
Adds a short-valued annotation member calledvalue.- Parameters:
value- the short value- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(short[] values)
Adds a short array-valued annotation member calledvalue.- Parameters:
values- the short array, must not benull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(int value)
Adds an int-valued annotation member calledvalue.- Parameters:
value- the int value- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(int[] values)
Adds an int array-valued annotation member calledvalue.- Parameters:
values- the int array, must not benull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(long value)
Adds a long-valued annotation member calledvalue.- Parameters:
value- the long value- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(long[] values)
Adds a long array-valued annotation member calledvalue.- Parameters:
values- the long array, must not benull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(float value)
Adds a float-valued annotation member calledvalue.- Parameters:
value- the float value- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(float[] values)
Adds a float array-valued annotation member calledvalue.- Parameters:
values- the float array, must not benull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(double value)
Adds a double-valued annotation member calledvalue.- Parameters:
value- the double value- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(double[] values)
Adds a double array-valued annotation member calledvalue.- Parameters:
values- the double array, must not benull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(char value)
Adds a char-valued annotation member calledvalue.- Parameters:
value- the char value- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(char[] values)
Adds a char array-valued annotation member calledvalue.- Parameters:
values- the char array, must not benull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(String value)
Adds a String-valued annotation member calledvalue.- Parameters:
value- the String value, must not benull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(String[] values)
Adds a String array-valued annotation member calledvalue.- Parameters:
values- the String array, must not benullor containnull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(Enum<?> value)
Adds an enum-valued annotation member calledvalue.- Parameters:
value- the enum value, must not benull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(Enum<?>[] values)
Adds an enum array-valued annotation member calledvalue.- Parameters:
values- the enum array, must not benullor containnull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(Class<? extends Enum<?>> enumType, String enumValue)
Adds an enum-valued annotation member calledvalue.- Parameters:
enumType- the enum type, must not benullenumValue- name of the enum constant, must not benull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(Class<? extends Enum<?>> enumType, String[] enumValues)
Adds an enum array-valued annotation member calledvalue.- Parameters:
enumType- the enum type, must not benullenumValues- names of the enum constants, must not benullor containnull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(ClassInfo enumType, String enumValue)
Adds an enum-valued annotation member calledvalue.- Parameters:
enumType- the enum type, must not benullenumValue- name of the enum constant, must not benull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(ClassInfo enumType, String[] enumValues)
Adds an enum array-valued annotation member calledvalue.- Parameters:
enumType- the enum type, must not benullenumValues- names of the enum constants, must not benullor containnull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(Class<?> value)
Adds a class-valued annotation member calledvalue.- Parameters:
value- the class value, must not benull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(Class<?>[] values)
Adds a class array-valued annotation member calledvalue.- Parameters:
values- the class array, must not benullor containnull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(ClassInfo value)
Adds a class-valued annotation member calledvalue.- Parameters:
value- the class value, must not benull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(ClassInfo[] values)
Adds a class array-valued annotation member calledvalue.- Parameters:
values- the class array, must not benullor containnull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(Type value)
Adds a class-valued annotation member calledvalue. Thevalueparameter may only be:VoidType;PrimitiveType;ClassType;ArrayTypewhose element type is eitherPrimitiveTypeorClassType.
- Parameters:
value- the class value, must not benull- Returns:
- this
AnnotationBuilder - Throws:
IllegalArgumentException- if given type is invalid, as described above
-
value
default AnnotationBuilder value(Type[] values)
Adds a class array-valued annotation member calledvalue. Thevaluesparameter may only contain:VoidType;PrimitiveType;ClassType;ArrayTypewhose element type is eitherPrimitiveTypeorClassType.
- Parameters:
values- the class array, must not benullor containnull- Returns:
- this
AnnotationBuilder - Throws:
IllegalArgumentException- if any given type is invalid, as described above
-
value
default AnnotationBuilder value(AnnotationInfo value)
Adds an annotation-valued annotation member calledvalue.- Parameters:
value- the annotation value, must not benull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(AnnotationInfo[] values)
Adds an annotation array-valued annotation member calledvalue.- Parameters:
values- the annotation array, must not benullor containnull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(Annotation value)
Adds an annotation-valued annotation member calledvalue.- Parameters:
value- the annotation value, must not benull- Returns:
- this
AnnotationBuilder
-
value
default AnnotationBuilder value(Annotation[] values)
Adds an annotation array-valued annotation member calledvalue.- Parameters:
values- the annotation array, must not benullor containnull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, AnnotationMember value)
Adds an annotation member with givenname, whose value is givenvalue.- Parameters:
name- name of the annotation member, must not benullvalue- value of the annotation member, must not benull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, boolean value)
Adds a boolean-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalue- the boolean value- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, boolean[] values)
Adds a boolean array-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalues- the boolean array, must not benull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, byte value)
Adds a byte-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalue- the byte value- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, byte[] values)
Adds a byte array-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalues- the byte array, must not benull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, short value)
Adds a short-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalue- the short value- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, short[] values)
Adds a short array-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalues- the short array, must not benull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, int value)
Adds an int-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalue- the int value- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, int[] values)
Adds an int array-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalues- the int array, must not benull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, long value)
Adds a long-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalue- the long value- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, long[] values)
Adds a long array-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalues- the long array, must not benull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, float value)
Adds a float-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalue- the float value- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, float[] values)
Adds a float array-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalues- the float array, must not benull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, double value)
Adds a double-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalue- the double value- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, double[] values)
Adds a double array-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalues- the double array, must not benull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, char value)
Adds a char-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalue- the char value- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, char[] values)
Adds a char array-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalues- the char array, must not benull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, String value)
Adds a String-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalue- the String value, must not benull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, String[] values)
Adds a String array-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalues- the String array, must not benullor containnull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, Enum<?> value)
Adds an enum-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalue- the enum value, must not benull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, Enum<?>[] values)
Adds an enum array-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalues- the enum array, must not benullor containnull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, Class<? extends Enum<?>> enumType, String enumValue)
Adds an enum-valued annotation member with givenname.- Parameters:
name- the member name, must not benullenumType- the enum type, must not benullenumValue- name of the enum constant, must not benull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, Class<? extends Enum<?>> enumType, String[] enumValues)
Adds an enum array-valued annotation member with givenname.- Parameters:
name- the member name, must not benullenumType- the enum type, must not benullenumValues- names of the enum constants, must not benullor containnull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, ClassInfo enumType, String enumValue)
Adds an enum-valued annotation member with givenname.- Parameters:
name- the member name, must not benullenumType- the enum type, must not benullenumValue- name of the enum constant, must not benull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, ClassInfo enumType, String[] enumValues)
Adds an enum array-valued annotation member with givenname.- Parameters:
name- the member name, must not benullenumType- the enum type, must not benullenumValues- names of the enum constants, must not benullor containnull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, Class<?> value)
Adds a class-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalue- the class value, must not benull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, Class<?>[] values)
Adds a class array-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalues- the class array, must not benullor containnull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, ClassInfo value)
Adds a class-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalue- the class value, must not benull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, ClassInfo[] values)
Adds a class array-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalues- the class array, must not benullor containnull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, Type value)
Adds a class-valued annotation member with givenname. Thevalueparameter may only be:VoidType;PrimitiveType;ClassType;ArrayTypewhose element type is eitherPrimitiveTypeorClassType.
- Parameters:
name- the member name, must not benullvalue- the class value, must not benull- Returns:
- this
AnnotationBuilder - Throws:
IllegalArgumentException- if given type is invalid, as described above
-
member
AnnotationBuilder member(String name, Type[] values)
Adds a class array-valued annotation member with givenname. Thevaluesparameter may only include:VoidType;PrimitiveType;ClassType;ArrayTypewhose element type is eitherPrimitiveTypeorClassType.
- Parameters:
name- the member name, must not benullvalues- the class array, must not benullor containnull- Returns:
- this
AnnotationBuilder - Throws:
IllegalArgumentException- if any given type is invalid, as described above
-
member
AnnotationBuilder member(String name, AnnotationInfo value)
Adds an annotation-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalue- the annotation value, must not benull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, AnnotationInfo[] values)
Adds an annotation array-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalues- the annotation array, must not benullor containnull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, Annotation value)
Adds an annotation-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalue- the annotation value, must not benull- Returns:
- this
AnnotationBuilder
-
member
AnnotationBuilder member(String name, Annotation[] values)
Adds an annotation array-valued annotation member with givenname.- Parameters:
name- the member name, must not benullvalues- the annotation array, must not benullor containnull- Returns:
- this
AnnotationBuilder
-
build
AnnotationInfo build()
Returns anAnnotationInfothat includes all annotation members defined by previous method calls on this builder. Afterbuild()is called, this builder instance should be discarded.- Returns:
- the built
AnnotationInfo, nevernull - Throws:
IllegalStateException- if a value of some annotation member was not set, and that member does not declare a default value
-
-