java.lang.Object
org.aspectj.org.eclipse.jdt.internal.compiler.batch.ClasspathLocation
org.aspectj.org.eclipse.jdt.internal.compiler.batch.ClasspathJsr199
All Implemented Interfaces:
FileSystem.Classpath, IModulePathEntry, SuffixConstants

public class ClasspathJsr199 extends ClasspathLocation
  • Constructor Details

  • Method Details

    • fetchLinkedJars

      public List fetchLinkedJars(FileSystem.ClasspathSectionProblemReporter problemReporter)
      Description copied from interface: FileSystem.Classpath
      Return a list of the jar file names defined in the Class-Path section of the jar file manifest if any, null else. Only ClasspathJar (and extending classes) instances may return a non-null result.
      Parameters:
      problemReporter - problem reporter with which potential misconfiguration issues are raised
      Returns:
      a list of the jar file names defined in the Class-Path section of the jar file manifest if any
    • findClass

      public NameEnvironmentAnswer findClass(char[] typeName, String qualifiedPackageName, String moduleName, String aQualifiedBinaryFileName, boolean asBinaryOnly)
    • findTypeNames

      public char[][][] findTypeNames(String aQualifiedPackageName, String moduleName)
    • initialize

      public void initialize() throws IOException
      Description copied from interface: FileSystem.Classpath
      Initialize the entry
      Throws:
      IOException
    • acceptModule

      public void acceptModule(IModule mod)
      Description copied from interface: FileSystem.Classpath
      Accepts to represent a module location with the given module description.
      Specified by:
      acceptModule in interface FileSystem.Classpath
      Overrides:
      acceptModule in class ClasspathLocation
    • getModulesDeclaringPackage

      public char[][] getModulesDeclaringPackage(String aQualifiedPackageName, String moduleName)
      Description copied from interface: IModulePathEntry
      Answer the relevant modules that declare the given package. If moduleName is ModuleBinding.ANY then all packages are relevant, if moduleName is ModuleBinding.UNNAMED, then only packages in the unnamed module are relevant, otherwise consider only packages in the module identified by moduleName.
    • hasCompilationUnit

      public boolean hasCompilationUnit(String qualifiedPackageName, String moduleName)
      Description copied from interface: IModulePathEntry
      Answer whether the given package has any compilation unit (.java or .class) in the given module. For entries representing a single module, the module name should be checked before invoking this method.
      Parameters:
      qualifiedPackageName - '/'-separated package name
      moduleName - if non-null only CUs attached to the given module should be considered
      Returns:
      true iff a .java or .class file could be found in the given module / package.
    • 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 interface FileSystem.Classpath
      Overrides:
      reset in class ClasspathLocation
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • normalizedPath

      public char[] normalizedPath()
      Description copied from interface: FileSystem.Classpath
      Return a normalized path for file based classpath entries. This is an absolute path in which file separators are transformed to the platform-agnostic '/', ending with a '/' for directories. This is an absolute path in which file separators are transformed to the platform-agnostic '/', deprived from the '.jar' (resp. '.zip') extension for jar (resp. zip) files.
      Returns:
      a normalized path for file based classpath entries
    • getPath

      public String 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 interface FileSystem.Classpath
      Overrides:
      getPath in class ClasspathLocation
      Returns:
      the path for file based classpath entries
    • getMode

      public int getMode()
      Overrides:
      getMode in class ClasspathLocation
    • hasAnnotationFileFor

      public boolean hasAnnotationFileFor(String qualifiedTypeName)
      Description copied from interface: FileSystem.Classpath
      Can the current location provide an external annotation file for the given type?
      Parameters:
      qualifiedTypeName - type name in qualified /-separated notation.
    • getModuleNames

      public Collection<String> getModuleNames(Collection<String> limitModules)
      Specified by:
      getModuleNames in interface FileSystem.Classpath
      Overrides:
      getModuleNames in class ClasspathLocation
    • hasModule

      public boolean hasModule()
    • getModule

      public IModule getModule(char[] name)
      Description copied from interface: IModulePathEntry
      Get the module named name from this entry. May be null
      Parameters:
      name - - The name of the module to look up
      Returns:
      The module named name or null
    • findClass

      public NameEnvironmentAnswer findClass(char[] typeName, String qualifiedPackageName, String moduleName, String qualifiedBinaryFileName)