APIdia Launch Partner
Top Description Inners Fields Constructors Methods
com.sun.tools.javac.file

public Class Locations

extends Object
Class Inheritance
Imports
java.io.Closeable, .File, .FileNotFoundException, .IOException, .InputStream, .UncheckedIOException, java.net.URI, .URL, .URLClassLoader, java.nio.file.DirectoryIteratorException, .DirectoryStream, .FileSystem, .FileSystemNotFoundException, .FileSystems, .Files, .InvalidPathException, .Path, .Paths, .ProviderNotFoundException, java.nio.file.spi.FileSystemProvider, java.util.ArrayList, .Arrays, .Collection, .Collections, .EnumMap, .EnumSet, .HashMap, .HashSet, .Iterator, .LinkedHashMap, .LinkedHashSet, .List, .Map, .Objects, .NoSuchElementException, .Set, java.util.function.Predicate, java.util.regex.Matcher, .Pattern, java.util.stream.Collectors, .Stream, java.util.jar.Attributes, .Manifest, javax.lang.model.SourceVersion, javax.tools.JavaFileManager, .JavaFileManager.Location, .JavaFileObject, .StandardJavaFileManager, .StandardJavaFileManager.PathFactory, .StandardLocation, jdk.internal.jmod.JmodFile, com.sun.tools.javac.main.Option, com.sun.tools.javac.resources.CompilerProperties.Errors, .CompilerProperties.LintWarnings, com.sun.tools.javac.util.DefinedBy, .DefinedBy.Api, .ListBuffer, .Log, .Iterators, .Pair, .StringUtils, com.sun.tools.javac.jvm.ModuleNameReader

This class converts command line arguments, environment variables and system properties (in File.pathSeparator-separated String form) into a boot class path, user class path, and source path (in Collection<String> form).

This is NOT part of any supported API. If you write code that depends on this, you do so at your own risk. This code and its internal interfaces are subject to change or deletion without notice.

Nested and Inner Type Summary

Modifier and TypeClass and Description
private abstract static class
Locations.BasicLocationHandler

A LocationHandler for a given Location, and associated set of options.

private class
Locations.BootClassPathLocationHandler

Custom subtype of LocationHandler for PLATFORM_CLASS_PATH.

private class
Locations.ClassPathLocationHandler

Subtype of SimpleLocationHandler for -classpath/CLASS_PATH.

protected abstract static class
Locations.LocationHandler

Base class for handling support for the representation of Locations.

private class
Locations.ModuleLocationHandler

A LocationHandler to represent modules found from a module-oriented location such as MODULE_SOURCE_PATH, UPGRADE_MODULE_PATH, SYSTEM_MODULES and MODULE_PATH.

private class
Locations.ModulePathLocationHandler

A LocationHandler for simple module-oriented search paths, like UPGRADE_MODULE_PATH and MODULE_PATH.

private class
private class
Locations.ModuleTable

A table of module location handlers, indexed by name and path.

private class
Locations.OutputLocationHandler

General purpose implementation for output locations, such as -d/CLASS_OUTPUT and -s/SOURCE_OUTPUT.

private class
private class
Locations.SearchPath

Utility class to help evaluate a path option.

private class
Locations.SimpleLocationHandler

General purpose implementation for search path locations, such as -sourcepath/SOURCE_PATH and -processorPath/ANNOTATION_PROCESSOR_PATH.

private class

Field Summary

Modifier and TypeField and Description
pack-priv List<Closeable>
pack-priv Map<Path, FileSystem>
private FSInfo
fsInfo

Access to (possibly cached) file info

pack-priv Map<JavaFileManager.Location, Locations.LocationHandler>
pack-priv Map<Option, Locations.LocationHandler>
pack-priv static final Path
private Log
log

The log to use for warning output

private ModuleNameReader
private StandardJavaFileManager.PathFactory
private String
pack-priv static final Path

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
public void
private boolean
contains(Collection<Path> searchPath, Path file)

pack-priv boolean
protected Locations.LocationHandler
pack-priv Collection<Path>
pack-priv JavaFileManager.Location
pack-priv JavaFileManager.Location
pack-priv Path
pack-priv Path
getPath(String first, String... more)

private Iterable<Path>

Returns:

The elements of the path
getPathEntries
(String
The search path to be split
searchPath
)

Split a search path into its elements.

private Iterable<Path>

Returns:

The elements of the path
getPathEntries
(String
The search path to be split
searchPath
,
Path
The value to substitute for empty path elements, or null, to ignore empty path elements
emptyPathDefault
)

Split a search path into its elements.

pack-priv boolean
handleOption(Option option, String value)

pack-priv boolean
pack-priv boolean
pack-priv String
pack-priv void
private boolean
isArchive(Path file)

Is this the name of an archive file?

pack-priv boolean
pack-priv boolean
pack-priv Iterable<Set<JavaFileManager.Location>>
pack-priv static Path
pack-priv void
setLocation(JavaFileManager.Location location, Iterable<? extends Path> files)

pack-priv void
setLocationForModule(JavaFileManager.Location location, String moduleName, Iterable<? extends Path> files)

public void
setMultiReleaseValue(String multiReleaseValue)

pack-priv void
pack-priv void
update(Log log, FSInfo fsInfo)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait