public static interface FileSystem.Classpath extends IModulePathEntry
Classpath, even though an IModuleLocation, can represent a plain
classpath location too. The FileSystem tells the Classpath whether to behave as a module or regular class
path via acceptModule(IModule).
Sub types of classpath are responsible for appropriate behavior based on this.| Modifier and Type | Method and Description |
|---|---|
void |
acceptModule(IModule module)
Accepts to represent a module location with the given module description.
|
java.util.List<FileSystem.Classpath> |
fetchLinkedJars(FileSystem.ClasspathSectionProblemReporter problemReporter)
Return a list of the jar file names defined in the Class-Path section
of the jar file manifest if any, null else.
|
NameEnvironmentAnswer |
findClass(char[] typeName,
java.lang.String qualifiedPackageName,
java.lang.String moduleName,
java.lang.String qualifiedBinaryFileName) |
NameEnvironmentAnswer |
findClass(char[] typeName,
java.lang.String qualifiedPackageName,
java.lang.String moduleName,
java.lang.String qualifiedBinaryFileName,
boolean asBinaryOnly) |
char[][][] |
findTypeNames(java.lang.String qualifiedPackageName,
java.lang.String moduleName) |
java.lang.String |
getDestinationPath() |
java.util.Collection<java.lang.String> |
getModuleNames(java.util.Collection<java.lang.String> limitModules) |
java.util.Collection<java.lang.String> |
getModuleNames(java.util.Collection<java.lang.String> limitModules,
java.util.function.Function<java.lang.String,IModule> getModule) |
java.lang.String |
getPath()
Return the path for file based classpath entries.
|
boolean |
hasAnnotationFileFor(java.lang.String qualifiedTypeName)
Can the current location provide an external annotation file for the given type?
|
default boolean |
hasCUDeclaringPackage(java.lang.String qualifiedPackageName,
java.util.function.Function<CompilationUnit,java.lang.String> pkgNameExtractor) |
default boolean |
hasModule() |
void |
initialize()
Initialize the entry
|
boolean |
isPackage(java.lang.String qualifiedPackageName,
java.lang.String moduleName) |
char[] |
normalizedPath()
Return a normalized path for file based classpath entries.
|
void |
reset()
This method resets the environment.
|
getModule, getModule, getModulesDeclaringPackage, hasCompilationUnit, isAutomaticModule, listPackages, servesModulechar[][][] findTypeNames(java.lang.String qualifiedPackageName,
java.lang.String moduleName)
NameEnvironmentAnswer findClass(char[] typeName, java.lang.String qualifiedPackageName, java.lang.String moduleName, java.lang.String qualifiedBinaryFileName)
NameEnvironmentAnswer findClass(char[] typeName, java.lang.String qualifiedPackageName, java.lang.String moduleName, java.lang.String qualifiedBinaryFileName, boolean asBinaryOnly)
boolean isPackage(java.lang.String qualifiedPackageName,
java.lang.String moduleName)
default boolean hasModule()
default boolean hasCUDeclaringPackage(java.lang.String qualifiedPackageName,
java.util.function.Function<CompilationUnit,java.lang.String> pkgNameExtractor)
java.util.List<FileSystem.Classpath> fetchLinkedJars(FileSystem.ClasspathSectionProblemReporter problemReporter)
problemReporter - problem reporter with which potential
misconfiguration issues are raisedvoid reset()
char[] normalizedPath()
java.lang.String getPath()
void initialize()
throws java.io.IOException
java.io.IOExceptionboolean hasAnnotationFileFor(java.lang.String qualifiedTypeName)
qualifiedTypeName - type name in qualified /-separated notation.void acceptModule(IModule module)
module - java.lang.String getDestinationPath()
java.util.Collection<java.lang.String> getModuleNames(java.util.Collection<java.lang.String> limitModules)
java.util.Collection<java.lang.String> getModuleNames(java.util.Collection<java.lang.String> limitModules,
java.util.function.Function<java.lang.String,IModule> getModule)