Package org.eclipse.sisu.space
Class SisuIndex
- java.lang.Object
-
- org.eclipse.sisu.space.AbstractSisuIndex
-
- org.eclipse.sisu.space.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:
- sisu-maven-plugin
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.StringclazzNameprivate QualifierCachequalifierCacheprivate ClassSpacespaceprivate java.io.FiletargetDirectory-
Fields inherited from class org.eclipse.sisu.space.AbstractSisuIndex
INDEX_FOLDER, NAMED, QUALIFIER
-
Fields inherited from interface org.eclipse.sisu.space.ClassVisitor
NON_INSTANTIABLE
-
-
Constructor Summary
Constructors Constructor Description SisuIndex(java.io.File targetDirectory)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidenterClass(int modifiers, java.lang.String name, java.lang.String _extends, java.lang.String[] _implements)Enters the class definition.voidenterSpace(ClassSpace _space)Enters the class space.protected java.io.ReadergetReader(java.lang.String path)Creates a new reader for the given input path.protected java.io.WritergetWriter(java.lang.String path)Creates a new writer for the given output path.voidindex(ClassSpace _space)protected voidinfo(java.lang.String message)Reports an informational message.voidleaveClass()Leaves the class definition.voidleaveSpace()Leaves the class space.static voidmain(java.lang.String[] args)AnnotationVisitorvisitAnnotation(java.lang.String desc)Visits an annotation declared on the class.ClassVisitorvisitClass(java.net.URL url)Visits a class resource in the class space.protected voidwarn(java.lang.String message)Reports a warning message.-
Methods inherited from class org.eclipse.sisu.space.AbstractSisuIndex
addClassToIndex, flushIndex
-
-
-
-
Field Detail
-
qualifierCache
private final QualifierCache qualifierCache
-
targetDirectory
private final java.io.File targetDirectory
-
space
private ClassSpace space
-
clazzName
private java.lang.String clazzName
-
-
Method Detail
-
main
public static void main(java.lang.String[] args)
-
index
public final void index(ClassSpace _space)
-
enterSpace
public final void enterSpace(ClassSpace _space)
Description copied from interface:SpaceVisitorEnters the class space.- Specified by:
enterSpacein interfaceSpaceVisitor- Parameters:
_space- The class space
-
visitClass
public final ClassVisitor visitClass(java.net.URL url)
Description copied from interface:SpaceVisitorVisits a class resource in the class space.- Specified by:
visitClassin interfaceSpaceVisitor- Parameters:
url- The class resource URL- Returns:
- Class visitor;
nullif it is not interested in visiting the class
-
enterClass
public final void enterClass(int modifiers, java.lang.String name, java.lang.String _extends, java.lang.String[] _implements)Description copied from interface:ClassVisitorEnters the class definition.- Specified by:
enterClassin interfaceClassVisitor- Parameters:
modifiers- The access modifiersname- The internal name, such as "javax/inject/Provider"_extends- Extends this superclass_implements- Implements these interfaces
-
visitAnnotation
public final AnnotationVisitor visitAnnotation(java.lang.String desc)
Description copied from interface:ClassVisitorVisits an annotation declared on the class.- Specified by:
visitAnnotationin interfaceClassVisitor- Parameters:
desc- The JVM descriptor for the annotation class, such as "Ljavax/inject/Qualifier;"- Returns:
- Annotation visitor;
nullif it is not interested in visiting the annotation - See Also:
SpaceScanner.jvmDescriptor(Class)
-
leaveClass
public final void leaveClass()
Description copied from interface:ClassVisitorLeaves the class definition.- Specified by:
leaveClassin interfaceClassVisitor
-
leaveSpace
public final void leaveSpace()
Description copied from interface:SpaceVisitorLeaves the class space.- Specified by:
leaveSpacein interfaceSpaceVisitor
-
info
protected void info(java.lang.String message)
Description copied from class:AbstractSisuIndexReports an informational message.- Specified by:
infoin classAbstractSisuIndex- Parameters:
message- The message
-
warn
protected void warn(java.lang.String message)
Description copied from class:AbstractSisuIndexReports a warning message.- Specified by:
warnin classAbstractSisuIndex- Parameters:
message- The message
-
getReader
protected java.io.Reader getReader(java.lang.String path) throws java.io.IOExceptionDescription copied from class:AbstractSisuIndexCreates a new reader for the given input path.- Specified by:
getReaderin classAbstractSisuIndex- Parameters:
path- The input path- Returns:
- The relevant reader
- Throws:
java.io.IOException
-
getWriter
protected java.io.Writer getWriter(java.lang.String path) throws java.io.IOExceptionDescription copied from class:AbstractSisuIndexCreates a new writer for the given output path.- Specified by:
getWriterin classAbstractSisuIndex- Parameters:
path- The output path- Returns:
- The relevant writer
- Throws:
java.io.IOException
-
-