|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.atmosphere.util.annotation.AnnotationDetector
public final class AnnotationDetector
AnnotationDetector reads Java Class File (".class") files and reports the
encountered annotations via a simple, developer friendly API.
DataInput and DataOutput.
A class file consists of a single ClassFile structure:
ClassFile {
u4 magic;
u2 minor_version;
u2 major_version;
u2 constant_pool_count;
cp_info constant_pool[constant_pool_count-1];
u2 access_flags;
u2 this_class;
u2 super_class;
u2 interfaces_count;
u2 interfaces[interfaces_count];
u2 fields_count;
field_info fields[fields_count];
u2 methods_count;
method_info methods[methods_count];
u2 attributes_count;
attribute_info attributes[attributes_count];
}
Where:
u1 unsigned byte DataInput.readUnsignedByte()
u2 unsigned short DataInput.readUnsignedShort()
u4 unsigned int DataInput.readInt()
Annotations are stored as Attributes (i.e. "RuntimeVisibleAnnotations" and
"RuntimeInvisibleAnnotations").
References:
tv.cntt:annovention:1.2;
ClassPathScanningCandidateComponentProvider
| Nested Class Summary | |
|---|---|
static interface |
AnnotationDetector.FieldReporter
A Reporter for field annotations. |
static interface |
AnnotationDetector.MethodReporter
A Reporter for method annotations. |
static interface |
AnnotationDetector.Reporter
Reporter is the base interface, used to report the detected annotations. |
static interface |
AnnotationDetector.TypeReporter
A Reporter for type annotations. |
| Constructor Summary | |
|---|---|
AnnotationDetector(AnnotationDetector.Reporter reporter)
Create a new AnnotationDetector, reporting the detected annotations
to the specified Reporter. |
|
| Method Summary | |
|---|---|
void |
destroy()
Reclaim memory. |
void |
detect()
Report all Java ClassFile files available on the class path. |
void |
detect(File... filesOrDirectories)
Report all Java ClassFile files available from the specified files and/or directories, including sub directories. |
void |
detect(String... packageNames)
Report all Java ClassFile files available on the class path within the specified packages and sub packages. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public AnnotationDetector(AnnotationDetector.Reporter reporter)
AnnotationDetector, reporting the detected annotations
to the specified Reporter.
| Method Detail |
|---|
public void detect()
throws IOException
IOExceptiondetect(File...)
public final void detect(String... packageNames)
throws IOException
IOExceptiondetect(File...)
public void detect(File... filesOrDirectories)
throws IOException
CAFEBABE are silently ignored.
IOExceptionpublic void destroy()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||