Class SisuIndex

All Implemented Interfaces:
ClassVisitor, SpaceVisitor

public class SisuIndex extends AbstractSisuIndex implements SpaceVisitor, ClassVisitor
Command-line utility that generates a qualified class index for a space-separated list of JARs.

The index consists of qualified class names listed in META-INF/sisu/javax.inject.Named.

See Also:
  • Field Details

    • qualifierCache

      private final QualifierCache qualifierCache
    • targetDirectory

      private final File targetDirectory
    • space

      private ClassSpace space
    • clazzName

      private String clazzName
  • Constructor Details

    • SisuIndex

      public SisuIndex(File targetDirectory)
  • Method Details

    • main

      public static void main(String[] args)
    • index

      public final void index(ClassSpace _space)
    • enterSpace

      public final void enterSpace(ClassSpace _space)
      Description copied from interface: SpaceVisitor
      Enters the class space.
      Specified by:
      enterSpace in interface SpaceVisitor
      Parameters:
      _space - The class space
    • visitClass

      public final ClassVisitor visitClass(URL url)
      Description copied from interface: SpaceVisitor
      Visits a class resource in the class space.
      Specified by:
      visitClass in interface SpaceVisitor
      Parameters:
      url - The class resource URL
      Returns:
      Class visitor; null if it is not interested in visiting the class
    • enterClass

      public final void enterClass(int modifiers, String name, String _extends, String[] _implements)
      Description copied from interface: ClassVisitor
      Enters the class definition.
      Specified by:
      enterClass in interface ClassVisitor
      Parameters:
      modifiers - The access modifiers
      name - The internal name, such as "javax/inject/Provider"
      _extends - Extends this superclass
      _implements - Implements these interfaces
    • visitAnnotation

      public final AnnotationVisitor visitAnnotation(String desc)
      Description copied from interface: ClassVisitor
      Visits an annotation declared on the class.
      Specified by:
      visitAnnotation in interface ClassVisitor
      Parameters:
      desc - The JVM descriptor for the annotation class, such as "Ljavax/inject/Qualifier;"
      Returns:
      Annotation visitor; null if it is not interested in visiting the annotation
      See Also:
    • leaveClass

      public final void leaveClass()
      Description copied from interface: ClassVisitor
      Leaves the class definition.
      Specified by:
      leaveClass in interface ClassVisitor
    • leaveSpace

      public final void leaveSpace()
      Description copied from interface: SpaceVisitor
      Leaves the class space.
      Specified by:
      leaveSpace in interface SpaceVisitor
    • info

      protected void info(String message)
      Description copied from class: AbstractSisuIndex
      Reports an informational message.
      Specified by:
      info in class AbstractSisuIndex
      Parameters:
      message - The message
    • warn

      protected void warn(String message)
      Description copied from class: AbstractSisuIndex
      Reports a warning message.
      Specified by:
      warn in class AbstractSisuIndex
      Parameters:
      message - The message
    • getReader

      protected Reader getReader(String path) throws IOException
      Description copied from class: AbstractSisuIndex
      Creates a new reader for the given input path.
      Specified by:
      getReader in class AbstractSisuIndex
      Parameters:
      path - The input path
      Returns:
      The relevant reader
      Throws:
      IOException
    • getWriter

      protected Writer getWriter(String path) throws IOException
      Description copied from class: AbstractSisuIndex
      Creates a new writer for the given output path.
      Specified by:
      getWriter in class AbstractSisuIndex
      Parameters:
      path - The output path
      Returns:
      The relevant writer
      Throws:
      IOException