## org.eclipse.jetty.annotations
Class AnnotationParser

    java.lang.Object
      org.eclipse.jetty.annotations.AnnotationParser

    public class AnnotationParser

extends Object

AnnotationParser Use asm to scan classes for annotations. A SAX-style parsing is done, with a handler being able to be registered to handle each annotation type.

Nested Class Summary
`static interface` `AnnotationParser.ClassHandler`
`static interface` `AnnotationParser.DiscoverableAnnotationHandler`
`static interface` `AnnotationParser.FieldHandler`
`class` `AnnotationParser.ListValue`
`static interface` `AnnotationParser.MethodHandler`
`class` `AnnotationParser.MyAnnotationVisitor`
`class` `AnnotationParser.MyClassVisitor` MyClassVisitor ASM visitor for a class.
`class` `AnnotationParser.SimpleValue`
`class` `AnnotationParser.Value`

Field Summary
`protected Map<String,List<AnnotationParser.DiscoverableAnnotationHandler>>` `_annotationHandlers`
`protected List<AnnotationParser.ClassHandler>` `_classHandlers`
`protected List<AnnotationParser.FieldHandler>` `_fieldHandlers`
`protected List<AnnotationParser.MethodHandler>` `_methodHandlers`
`protected List<String>` `_parsedClassNames`

Constructor Summary
`AnnotationParser()`

Method Summary
`List<AnnotationParser.DiscoverableAnnotationHandler>` `getAnnotationHandlers()`
`List<AnnotationParser.DiscoverableAnnotationHandler>` `getAnnotationHandlers(String annotationName)`
`boolean` `isParsed(String className)`
`static String` `normalize(String name)`
`void` `parse(Class clazz, ClassNameResolver resolver, boolean visitSuperClasses)`
`void` `parse(ClassLoader loader, boolean visitParents, boolean nullInclusive, ClassNameResolver resolver)` Find annotations on classes in the supplied classloader.
`void` `parse(List<String> classNames, ClassNameResolver resolver)`
`void` `parse(Resource dir, ClassNameResolver resolver)`
`void` `parse(String[] classNames, ClassNameResolver resolver)`
`void` `parse(String className, ClassNameResolver resolver)`
`void` `parse(URI[] uris, ClassNameResolver resolver)` Find annotations in classes in the supplied url of jar files.
`void` `parse(URI uri, ClassNameResolver resolver)`
`void` `registerAnnotationHandler(String annotationName, AnnotationParser.DiscoverableAnnotationHandler handler)` Register a handler that will be called back when the named annotation is encountered on a class.
`void` `registerClassHandler(AnnotationParser.ClassHandler handler)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### _parsedClassNames

    protected List<String> _parsedClassNames

### _annotationHandlers

    protected Map<String,List<AnnotationParser.DiscoverableAnnotationHandler>> _annotationHandlers

### _classHandlers

    protected List<AnnotationParser.ClassHandler> _classHandlers

### _methodHandlers

    protected List<AnnotationParser.MethodHandler> _methodHandlers

### _fieldHandlers

    protected List<AnnotationParser.FieldHandler> _fieldHandlers

Constructor Detail

### AnnotationParser

    public AnnotationParser()

Method Detail

### normalize

    public static String normalize(String name)

### registerAnnotationHandler

    public void registerAnnotationHandler(String annotationName,
                                          AnnotationParser.DiscoverableAnnotationHandler handler)

  Register a handler that will be called back when the named annotation is encountered on a class.

  Parameters:
    `annotationName` -
    `handler` -

### getAnnotationHandlers

    public List<AnnotationParser.DiscoverableAnnotationHandler> getAnnotationHandlers(String annotationName)

### getAnnotationHandlers

    public List<AnnotationParser.DiscoverableAnnotationHandler> getAnnotationHandlers()

### registerClassHandler

    public void registerClassHandler(AnnotationParser.ClassHandler handler)

### isParsed

    public boolean isParsed(String className)

### parse

    public void parse(String className,
                      ClassNameResolver resolver)
               throws Exception

  Throws:
    `Exception`

### parse

    public void parse(Class clazz,
                      ClassNameResolver resolver,
                      boolean visitSuperClasses)
               throws Exception

  Throws:
    `Exception`

### parse

    public void parse(String[] classNames,
                      ClassNameResolver resolver)
               throws Exception

  Throws:
    `Exception`

### parse

    public void parse(List<String> classNames,
                      ClassNameResolver resolver)
               throws Exception

  Throws:
    `Exception`

### parse

    public void parse(Resource dir,
                      ClassNameResolver resolver)
               throws Exception

  Throws:
    `Exception`

### parse

    public void parse(ClassLoader loader,
                      boolean visitParents,
                      boolean nullInclusive,
                      ClassNameResolver resolver)
               throws Exception

  Find annotations on classes in the supplied classloader. Only class files in jar files will be scanned.

  Parameters:
    `loader` -
    `visitParents` -
    `nullInclusive` -
    `resolver` -
  Throws:
    `Exception`

### parse

    public void parse(URI[] uris,
                      ClassNameResolver resolver)
               throws Exception

  Find annotations in classes in the supplied url of jar files.

  Parameters:
    `uris` -
    `resolver` -
  Throws:
    `Exception`

### parse

    public void parse(URI uri,
                      ClassNameResolver resolver)
               throws Exception

  Throws:
    `Exception`

Copyright © 1995-2010 Mort Bay Consulting. All Rights Reserved.