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

public Class JRTIndex

extends Object
Class Inheritance
Imports
java.io.IOException, .UncheckedIOException, java.lang.ref.SoftReference, java.net.URI, java.nio.file.DirectoryStream, .FileSystem, .FileSystems, .FileSystemNotFoundException, .Files, .Path, .ProviderNotFoundException, java.util.Collections, .HashMap, .LinkedHashMap, .LinkedHashSet, .Map, .MissingResourceException, .ResourceBundle, .Set, javax.tools.FileObject, com.sun.tools.javac.file.RelativePath.RelativeDirectory, com.sun.tools.javac.util.Context

A package-oriented index into the jrt: filesystem.

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class
JRTIndex.CtSym

The info that used to be in ct.sym for classes in a package.

pack-priv class
JRTIndex.Entry

An entry provides cached info about a specific package directory within jrt:.

Field Summary

Modifier and TypeField and Description
private ResourceBundle
private final Map<RelativePath.RelativeDirectory, SoftReference<JRTIndex.Entry>>
entries

A lazily evaluated set of entries about the contents of the jrt: file system.

private final FileSystem
jrtfs

The jrt: file system.

private static JRTIndex
sharedInstance

Get a shared instance of the cache.

Constructor Summary

AccessConstructor and Description
private
JRTIndex()

Create and initialize the index.

Method Summary

Modifier and TypeMethod and Description
private JRTIndex.CtSym
public JRTIndex.CtSym
getCtSym(CharSequence packageName)

pack-priv synchronized JRTIndex.Entry
public static synchronized JRTIndex
public static JRTIndex
instance(Context context)

Get a context-specific instance of a cache.

public static boolean
public boolean
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

ctBundleback to summary
private ResourceBundle ctBundle
entriesback to summary
private final Map<RelativePath.RelativeDirectory, SoftReference<JRTIndex.Entry>> entries

A lazily evaluated set of entries about the contents of the jrt: file system.

jrtfsback to summary
private final FileSystem jrtfs

The jrt: file system.

sharedInstanceback to summary
private static JRTIndex sharedInstance

Get a shared instance of the cache.

Constructor Detail

JRTIndexback to summary
private JRTIndex() throws IOException

Create and initialize the index.

Method Detail

getCtInfoback to summary
private JRTIndex.CtSym getCtInfo(RelativePath.RelativeDirectory dir)
getCtSymback to summary
public JRTIndex.CtSym getCtSym(CharSequence packageName) throws IOException
getEntryback to summary
pack-priv synchronized JRTIndex.Entry getEntry(RelativePath.RelativeDirectory rd) throws IOException
getSharedInstanceback to summary
public static synchronized JRTIndex getSharedInstance()
instanceback to summary
public static JRTIndex instance(Context context)

Get a context-specific instance of a cache.

isAvailableback to summary
public static boolean isAvailable()
isInJRTback to summary
public boolean isInJRT(FileObject fo)
com.sun.tools.javac.file back to summary

public Class JRTIndex.CtSym

extends Object
Class Inheritance

The info that used to be in ct.sym for classes in a package.

Field Summary

Modifier and TypeField and Description
pack-priv static final JRTIndex.CtSym
public final boolean
hidden

The classes in this package are internal and not visible.

public final String
minProfile

The minimum profile in which classes in this package are available.

public final boolean
proprietary

The classes in this package are proprietary and will generate a warning.

Constructor Summary

AccessConstructor and Description
pack-priv
CtSym(boolean hidden, boolean proprietary, String minProfile)

Method Summary

Modifier and TypeMethod and Description
public String
toString()

Overrides java.lang.Object.toString.

Returns a string representation of the object.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAllwaitwaitwait

Field Detail

EMPTYback to summary
pack-priv static final JRTIndex.CtSym EMPTY
hiddenback to summary
public final boolean hidden

The classes in this package are internal and not visible.

minProfileback to summary
public final String minProfile

The minimum profile in which classes in this package are available.

proprietaryback to summary
public final boolean proprietary

The classes in this package are proprietary and will generate a warning.

Constructor Detail

CtSymback to summary
pack-priv CtSym(boolean hidden, boolean proprietary, String minProfile)

Method Detail

toStringback to summary
public String toString()

Overrides java.lang.Object.toString.

Doc from java.lang.Object.toString.

Returns a string representation of the object. Satisfying this method's contract implies a non-null result must be returned.

Annotations
@Override
com.sun.tools.javac.file back to summary

pack-priv Class JRTIndex.Entry

extends Object
Class Inheritance

An entry provides cached info about a specific package directory within jrt:.

Field Summary

Modifier and TypeField and Description
pack-priv final JRTIndex.CtSym
ctSym

The info that used to be in ct.sym for classes in this package.

pack-priv final Map<String, Path>
files

The regular files for this package.

pack-priv final Set<RelativePath.RelativeDirectory>
subdirs

The set of subdirectories in jrt: for this package.

Constructor Summary

AccessConstructor and Description
private

Method Summary

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

ctSymback to summary
pack-priv final JRTIndex.CtSym ctSym

The info that used to be in ct.sym for classes in this package.

filesback to summary
pack-priv final Map<String, Path> files

The regular files for this package. For now, assume just one instance of each file across all modules.

subdirsback to summary
pack-priv final Set<RelativePath.RelativeDirectory> subdirs

The set of subdirectories in jrt: for this package.

Constructor Detail

Entryback to summary
private Entry(Map<String, Path> files, Set<RelativePath.RelativeDirectory> subdirs, JRTIndex.CtSym ctSym)