Package io.github.classgraph
Class PackageInfo
- java.lang.Object
-
- io.github.classgraph.PackageInfo
-
- All Implemented Interfaces:
Comparable<PackageInfo>
public class PackageInfo extends Object implements Comparable<PackageInfo>
Holds metadata about a package encountered during a scan.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description intcompareTo(PackageInfo o)booleanequals(Object o)AnnotationInfoListgetAnnotationInfo()Get any annotations on thepackage-info.classfile.AnnotationInfogetAnnotationInfo(String annotationName)Get a the named annotation on this package, or null if the package does not have the named annotation.List<PackageInfo>getChildren()The child packages of this package, or the empty list if none.ClassInfoListgetClassInfo()Get theClassInfoobjects for all classes that are members of this package.ClassInfogetClassInfo(String className)Get theClassInfoobject for the named class in this package, or null if the class was not found in this module.ClassInfoListgetClassInfoRecursive()Get theClassInfoobjects for all classes that are members of this package or a sub-package.StringgetName()The package name ("" for the root package).static PackageInfogetPackage(String packageName, Map<String,PackageInfo> packageNameToPackageInfo)Get thePackageInfoobject for the named package, also creatingPackageInfoobjects for any needed parent packages.PackageInfogetParent()The parent package of this package, or null if this is the root package.booleanhasAnnotation(String annotationName)inthashCode()StringtoString()
-
-
-
Method Detail
-
getName
public String getName()
The package name ("" for the root package).
-
getAnnotationInfo
public AnnotationInfo getAnnotationInfo(String annotationName)
Get a the named annotation on this package, or null if the package does not have the named annotation.- Parameters:
annotationName- The annotation name.- Returns:
- An
AnnotationInfoobject representing the named annotation on this package, or null if the package does not have the named annotation.
-
getAnnotationInfo
public AnnotationInfoList getAnnotationInfo()
Get any annotations on thepackage-info.classfile.
-
hasAnnotation
public boolean hasAnnotation(String annotationName)
- Parameters:
annotationName- The name of an annotation.- Returns:
- true if this package has the named annotation.
-
getParent
public PackageInfo getParent()
The parent package of this package, or null if this is the root package.
-
getChildren
public List<PackageInfo> getChildren()
The child packages of this package, or the empty list if none.
-
getClassInfo
public ClassInfo getClassInfo(String className)
Get theClassInfoobject for the named class in this package, or null if the class was not found in this module.
-
getClassInfo
public ClassInfoList getClassInfo()
Get theClassInfoobjects for all classes that are members of this package.
-
getClassInfoRecursive
public ClassInfoList getClassInfoRecursive()
Get theClassInfoobjects for all classes that are members of this package or a sub-package.
-
getPackage
public static PackageInfo getPackage(String packageName, Map<String,PackageInfo> packageNameToPackageInfo)
Get thePackageInfoobject for the named package, also creatingPackageInfoobjects for any needed parent packages.
-
compareTo
public int compareTo(PackageInfo o)
- Specified by:
compareToin interfaceComparable<PackageInfo>
-
-