Class ClasspathLocation
java.lang.Object
org.aspectj.org.eclipse.jdt.internal.compiler.batch.ClasspathLocation
- All Implemented Interfaces:
FileSystem.Classpath
,IModulePathEntry
,SuffixConstants
- Direct Known Subclasses:
ClasspathDirectory
,ClasspathJar
,ClasspathJrt
,ClasspathJsr199
public abstract class ClasspathLocation
extends Object
implements FileSystem.Classpath, SuffixConstants
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
static final int
Fields inherited from interface org.aspectj.org.eclipse.jdt.internal.compiler.util.SuffixConstants
EXTENSION_aj, EXTENSION_AJ, EXTENSION_class, EXTENSION_CLASS, EXTENSION_java, EXTENSION_JAVA, EXTENSION_jmod, EXTENSION_JMOD, SUFFIX_aj, SUFFIX_AJ, SUFFIX_class, SUFFIX_CLASS, SUFFIX_java, SUFFIX_JAVA, SUFFIX_STRING_aj, SUFFIX_STRING_AJ, SUFFIX_STRING_class, SUFFIX_STRING_CLASS, SUFFIX_STRING_java, SUFFIX_STRING_JAVA
-
Constructor Summary
ModifierConstructorDescriptionprotected
ClasspathLocation
(AccessRuleSet accessRuleSet, String destinationPath) -
Method Summary
Modifier and TypeMethodDescriptionvoid
acceptModule
(IModule mod) Accepts to represent a module location with the given module description.allModules
(Iterable<T> allSystemModules, Function<T, String> getModuleName, Function<T, IModule> getModule) boolean
protected AccessRestriction
fetchAccessRestriction
(String qualifiedBinaryFileName) Return the first access rule which is violated when accessing a given type, or null if no 'non accessible' access rule applies.int
getMode()
getModuleNames
(Collection<String> limitModules) getModuleNames
(Collection<String> limitModules, Function<String, IModule> getModule) getPath()
Return the path for file based classpath entries.int
hashCode()
boolean
Specifies whether this entry represents an automatic module.boolean
void
reset()
This method resets the environment.protected Collection
<String> selectModules
(Set<String> modules, Collection<String> limitModules, Function<String, IModule> getModule) protected char[][]
singletonModuleNameIf
(boolean condition) Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.aspectj.org.eclipse.jdt.internal.compiler.batch.FileSystem.Classpath
fetchLinkedJars, findClass, findClass, findTypeNames, forbidsExportFrom, hasAnnotationFileFor, hasCUDeclaringPackage, hasModule, initialize, normalizedPath
Methods inherited from interface org.aspectj.org.eclipse.jdt.internal.compiler.env.IModulePathEntry
getModule, getModule, getModulesDeclaringPackage, hasCompilationUnit, listPackages, servesModule
-
Field Details
-
SOURCE
public static final int SOURCE- See Also:
-
BINARY
public static final int BINARY- See Also:
-
accessRuleSet
-
destinationPath
-
-
Constructor Details
-
ClasspathLocation
-
-
Method Details
-
fetchAccessRestriction
Return the first access rule which is violated when accessing a given type, or null if no 'non accessible' access rule applies.- Parameters:
qualifiedBinaryFileName
- tested type specification, formed as: "org/aspectj/org/eclipse/jdt/core/JavaCore.class"; on systems that use \ as File.separator, the "org\eclipse\jdt\core\JavaCore.class" is accepted as well- Returns:
- the first access rule which is violated when accessing a given type, or null if none applies
-
getMode
public int getMode() -
hashCode
public int hashCode() -
equals
-
getPath
Description copied from interface:FileSystem.Classpath
Return the path for file based classpath entries. This is an absolute path ending with a file separator for directories, an absolute path including the '.jar' (resp. '.zip') extension for jar (resp. zip) files.- Specified by:
getPath
in interfaceFileSystem.Classpath
- Returns:
- the path for file based classpath entries
-
getDestinationPath
- Specified by:
getDestinationPath
in interfaceFileSystem.Classpath
-
acceptModule
Description copied from interface:FileSystem.Classpath
Accepts to represent a module location with the given module description.- Specified by:
acceptModule
in interfaceFileSystem.Classpath
-
isAutomaticModule
public boolean isAutomaticModule()Description copied from interface:IModulePathEntry
Specifies whether this entry represents an automatic module.- Specified by:
isAutomaticModule
in interfaceIModulePathEntry
- Returns:
- true if this is an automatic module, false otherwise
-
getModuleNames
- Specified by:
getModuleNames
in interfaceFileSystem.Classpath
-
getModuleNames
public Collection<String> getModuleNames(Collection<String> limitModules, Function<String, IModule> getModule) - Specified by:
getModuleNames
in interfaceFileSystem.Classpath
-
selectModules
protected Collection<String> selectModules(Set<String> modules, Collection<String> limitModules, Function<String, IModule> getModule) -
allModules
-
isPackage
- Specified by:
isPackage
in interfaceFileSystem.Classpath
-
singletonModuleNameIf
protected char[][] singletonModuleNameIf(boolean condition) -
reset
public void reset()Description copied from interface:FileSystem.Classpath
This method resets the environment. The resulting state is equivalent to a new name environment without creating a new object.- Specified by:
reset
in interfaceFileSystem.Classpath
-