|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectjavassist.bytecode.annotation.AnnotationsWriter
public class AnnotationsWriter
A convenience class for constructing a
..Annotations_attribute.
See the source code of the AnnotationsAttribute.Copier class.
The following code snippet is an example of use of this class:
ConstPool pool = ...;
output = new ByteArrayOutputStream();
writer = new AnnotationsWriter(output, pool);
writer.numAnnotations(1);
writer.annotation("Author", 2);
writer.memberValuePair("name");
writer.constValueIndex("chiba");
writer.memberValuePair("address");
writer.constValueIndex("tokyo");
writer.close();
byte[] attribute_info = output.toByteArray();
AnnotationsAttribute anno
= new AnnotationsAttribute(pool, AnnotationsAttribute.visibleTag,
attribute_info);
The code snippet above generates the annotation attribute corresponding to this annotation:
@Author(name = "chiba", address = "tokyo")
AnnotationsAttribute,
ParameterAnnotationsAttribute| Constructor Summary | |
|---|---|
AnnotationsWriter(java.io.OutputStream os,
ConstPool cp)
Constructs with the given output stream. |
|
| Method Summary | |
|---|---|
void |
annotation(int typeIndex,
int numMemberValuePairs)
Writes annotation. |
void |
annotation(java.lang.String type,
int numMemberValuePairs)
Writes annotation. |
void |
annotationValue()
Writes tag and annotation_value
in member_value. |
void |
arrayValue(int numValues)
Writes tag and array_value
in member_value. |
void |
classInfoIndex(int index)
Writes tag and class_info_index
in member_value. |
void |
classInfoIndex(java.lang.String name)
Writes tag and class_info_index
in member_value. |
void |
close()
Closes the output stream. |
void |
constValueIndex(boolean value)
Writes tag and const_value_index
in member_value. |
void |
constValueIndex(byte value)
Writes tag and const_value_index
in member_value. |
void |
constValueIndex(char value)
Writes tag and const_value_index
in member_value. |
void |
constValueIndex(double value)
Writes tag and const_value_index
in member_value. |
void |
constValueIndex(float value)
Writes tag and const_value_index
in member_value. |
void |
constValueIndex(int value)
Writes tag and const_value_index
in member_value. |
void |
constValueIndex(int tag,
int index)
Writes tag and const_value_index
in member_value. |
void |
constValueIndex(long value)
Writes tag and const_value_index
in member_value. |
void |
constValueIndex(short value)
Writes tag and const_value_index
in member_value. |
void |
constValueIndex(java.lang.String value)
Writes tag and const_value_index
in member_value. |
void |
enumConstValue(int typeNameIndex,
int constNameIndex)
Writes tag and enum_const_value
in member_value. |
void |
enumConstValue(java.lang.String typeName,
java.lang.String constName)
Writes tag and enum_const_value
in member_value. |
ConstPool |
getConstPool()
Obtains the constant pool given to the constructor. |
void |
memberValuePair(int memberNameIndex)
Writes an element of a member_value_pairs array
in annotation. |
void |
memberValuePair(java.lang.String memberName)
Writes an element of a member_value_pairs array
in annotation. |
void |
numAnnotations(int num)
Writes num_annotations in
Runtime(In)VisibleAnnotations_attribute. |
void |
numParameters(int num)
Writes num_parameters in
Runtime(In)VisibleParameterAnnotations_attribute. |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public AnnotationsWriter(java.io.OutputStream os,
ConstPool cp)
os - the output stream.cp - the constant pool.| Method Detail |
|---|
public ConstPool getConstPool()
public void close()
throws java.io.IOException
java.io.IOException
public void numParameters(int num)
throws java.io.IOException
num_parameters in
Runtime(In)VisibleParameterAnnotations_attribute.
This method must be followed by num calls to
numAnnotations().
java.io.IOException
public void numAnnotations(int num)
throws java.io.IOException
num_annotations in
Runtime(In)VisibleAnnotations_attribute.
This method must be followed by num calls to
annotation().
java.io.IOException
public void annotation(java.lang.String type,
int numMemberValuePairs)
throws java.io.IOException
annotation.
This method must be followed by numMemberValuePairs
calls to memberValuePair().
type - the annotation interface name.numMemberValuePairs - num_member_value_pairs
in annotation.
java.io.IOException
public void annotation(int typeIndex,
int numMemberValuePairs)
throws java.io.IOException
annotation.
This method must be followed by numMemberValuePairs
calls to memberValuePair().
typeIndex - type_index in annotation.numMemberValuePairs - num_member_value_pairs
in annotation.
java.io.IOException
public void memberValuePair(java.lang.String memberName)
throws java.io.IOException
member_value_pairs array
in annotation.
This method must be followed by a
call to constValueIndex(), enumConstValue(),
etc.
memberName - the name of the annotation type member.
java.io.IOException
public void memberValuePair(int memberNameIndex)
throws java.io.IOException
member_value_pairs array
in annotation.
This method must be followed by a
call to constValueIndex(), enumConstValue(),
etc.
memberNameIndex - member_name_index
in member_value_pairs array.
java.io.IOException
public void constValueIndex(boolean value)
throws java.io.IOException
tag and const_value_index
in member_value.
value - the constant value.
java.io.IOException
public void constValueIndex(byte value)
throws java.io.IOException
tag and const_value_index
in member_value.
value - the constant value.
java.io.IOException
public void constValueIndex(char value)
throws java.io.IOException
tag and const_value_index
in member_value.
value - the constant value.
java.io.IOException
public void constValueIndex(short value)
throws java.io.IOException
tag and const_value_index
in member_value.
value - the constant value.
java.io.IOException
public void constValueIndex(int value)
throws java.io.IOException
tag and const_value_index
in member_value.
value - the constant value.
java.io.IOException
public void constValueIndex(long value)
throws java.io.IOException
tag and const_value_index
in member_value.
value - the constant value.
java.io.IOException
public void constValueIndex(float value)
throws java.io.IOException
tag and const_value_index
in member_value.
value - the constant value.
java.io.IOException
public void constValueIndex(double value)
throws java.io.IOException
tag and const_value_index
in member_value.
value - the constant value.
java.io.IOException
public void constValueIndex(java.lang.String value)
throws java.io.IOException
tag and const_value_index
in member_value.
value - the constant value.
java.io.IOException
public void constValueIndex(int tag,
int index)
throws java.io.IOException
tag and const_value_index
in member_value.
tag - tag in member_value.index - const_value_index
in member_value.
java.io.IOException
public void enumConstValue(java.lang.String typeName,
java.lang.String constName)
throws java.io.IOException
tag and enum_const_value
in member_value.
typeName - the type name of the enum constant.constName - the simple name of the enum constant.
java.io.IOException
public void enumConstValue(int typeNameIndex,
int constNameIndex)
throws java.io.IOException
tag and enum_const_value
in member_value.
typeNameIndex - type_name_index
in member_value.constNameIndex - const_name_index
in member_value.
java.io.IOException
public void classInfoIndex(java.lang.String name)
throws java.io.IOException
tag and class_info_index
in member_value.
name - the class name.
java.io.IOException
public void classInfoIndex(int index)
throws java.io.IOException
tag and class_info_index
in member_value.
index - class_info_index
java.io.IOException
public void annotationValue()
throws java.io.IOException
tag and annotation_value
in member_value.
This method must be followed by a call to annotation().
java.io.IOException
public void arrayValue(int numValues)
throws java.io.IOException
tag and array_value
in member_value.
This method must be followed by numValues calls
to constValueIndex(), enumConstValue(),
etc.
numValues - num_values
in array_value.
java.io.IOException
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||