Top Description Inners Fields Constructors Methods
com.sun.tools.javac.platform

public Class JDKPlatformProvider

extends Object
implements PlatformProvider
Class Inheritance
All Implemented Interfaces
com.sun.tools.javac.platform.PlatformProvider
Imports
java.io.IOException, .PrintWriter, java.nio.file.DirectoryStream, .FileSystem, .FileSystems, .Files, .Path, .Paths, .ProviderNotFoundException, java.util.ArrayList, .Arrays, .Collections, .Comparator, .EnumSet, .HashMap, .Iterator, .List, .Map, .Map.Entry, .NoSuchElementException, .Set, .TreeSet, javax.annotation.processing.Processor, javax.tools.ForwardingJavaFileObject, .JavaFileManager, .JavaFileManager.Location, .JavaFileObject, .JavaFileObject.Kind, .StandardJavaFileManager, .StandardLocation, com.sun.source.util.Plugin, com.sun.tools.javac.code.Source, .Source.Feature, com.sun.tools.javac.file.CacheFSInfo, .JavacFileManager, com.sun.tools.javac.jvm.Target, com.sun.tools.javac.main.Option, com.sun.tools.javac.util.Context, .Log, .StringUtils

PlatformProvider for JDK N.

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
pack-priv static class

Field Summary

Modifier and TypeField and Description
public static final Comparator<String>
private static final Set<String>
private static final String[]

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
pack-priv static Path
public PlatformDescription
getPlatform(String
the name of the selected platform
platformName
,
String
additional parameter, which can be specified after ':' on the command line
options
)

Implements com.sun.tools.javac.platform.PlatformProvider.getPlatform.

Create a description of a selected platform.
public Iterable<String>
private static String
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

NUMERICAL_COMPARATORback to summary
public static final Comparator<String> NUMERICAL_COMPARATOR
SUPPORTED_JAVA_PLATFORM_VERSIONSback to summary
private static final Set<String> SUPPORTED_JAVA_PLATFORM_VERSIONS
symbolFileLocationback to summary
private static final String[] symbolFileLocation

Constructor Detail

JDKPlatformProviderback to summary
public JDKPlatformProvider()

Method Detail

findCtSymback to summary
pack-priv static Path findCtSym()
getPlatformback to summary
public PlatformDescription getPlatform(String platformName, String options)

Implements com.sun.tools.javac.platform.PlatformProvider.getPlatform.

Doc from com.sun.tools.javac.platform.PlatformProvider.getPlatform.

Create a description of a selected platform.

Parameters
platformName:String

the name of the selected platform

options:String

additional parameter, which can be specified after ':' on the command line

Returns:PlatformDescription

a PlatformDescription

Annotations
@Override
getSupportedPlatformNamesback to summary
public Iterable<String> getSupportedPlatformNames()

Implements com.sun.tools.javac.platform.PlatformProvider.getSupportedPlatformNames.

Doc from com.sun.tools.javac.platform.PlatformProvider.getSupportedPlatformNames.

Names of platforms supported by this provider. Each returned name can be used as the key for --release.

Returns:Iterable<String>

the platform keys

Annotations
@Override
targetNumericVersionback to summary
private static String targetNumericVersion(Target target)
com.sun.tools.javac.platform back to summary

pack-priv Class JDKPlatformProvider.PlatformDescriptionImpl

extends Object
implements PlatformDescription
Class Inheritance
  • java.lang.Object
  • com.sun.tools.javac.platform.JDKPlatformProvider.PlatformDescriptionImpl
All Implemented Interfaces
com.sun.tools.javac.platform.PlatformDescription, java.io.Closeable, java.lang.AutoCloseable

Nested and Inner Type Summary

Modifier and TypeClass and Description
private static class

Field Summary

Modifier and TypeField and Description
private final Map<Path, FileSystem>
private final String
private final String

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
public void
close()

Implements com.sun.tools.javac.platform.PlatformDescription.close.

Perform cleanup for this PlatformProvider - this instance won't be used after this method is called.
public List<String>
getAdditionalOptions()

Implements com.sun.tools.javac.platform.PlatformDescription.getAdditionalOptions.

Returns the additional command line options that should be passed to javac.
public List<PlatformDescription.PluginInfo<Processor>>
getAnnotationProcessors()

Implements com.sun.tools.javac.platform.PlatformDescription.getAnnotationProcessors.

Returns the annotation Processors that should be enabled in the current javac run.
public JavaFileManager
public List<PlatformDescription.PluginInfo<Plugin>>
getPlugins()

Implements com.sun.tools.javac.platform.PlatformDescription.getPlugins.

Returns the javac Plugins that should be enabled in the current javac run.
public String
getSourceVersion()

Implements com.sun.tools.javac.platform.PlatformDescription.getSourceVersion.

Returns the source version that should be selected.
public String
getTargetVersion()

Implements com.sun.tools.javac.platform.PlatformDescription.getTargetVersion.

Returns the target version that should be selected.
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

ctSym2FileSystemback to summary
private final Map<Path, FileSystem> ctSym2FileSystem
ctSymVersionback to summary
private final String ctSymVersion
sourceVersionback to summary
private final String sourceVersion

Constructor Detail

PlatformDescriptionImplback to summary
pack-priv PlatformDescriptionImpl(String sourceVersion)

Method Detail

closeback to summary
public void close() throws IOException

Implements com.sun.tools.javac.platform.PlatformDescription.close.

Doc from com.sun.tools.javac.platform.PlatformDescription.close.

Perform cleanup for this PlatformProvider - this instance won't be used after this method is called.

Annotations
@Override
Exceptions
IOException:
if unexpected problems occur during closing this provider
getAdditionalOptionsback to summary
public List<String> getAdditionalOptions()

Implements com.sun.tools.javac.platform.PlatformDescription.getAdditionalOptions.

Doc from com.sun.tools.javac.platform.PlatformDescription.getAdditionalOptions.

Returns the additional command line options that should be passed to javac.

Returns:List<String>

additional command line options

Annotations
@Override
getAnnotationProcessorsback to summary
public List<PlatformDescription.PluginInfo<Processor>> getAnnotationProcessors()

Implements com.sun.tools.javac.platform.PlatformDescription.getAnnotationProcessors.

Doc from com.sun.tools.javac.platform.PlatformDescription.getAnnotationProcessors.

Returns the annotation Processors that should be enabled in the current javac run.

Returns:List<PlatformDescription.PluginInfo<Processor>>

annotation Processors

Annotations
@Override
getFileManagerback to summary
public JavaFileManager getFileManager()

Implements com.sun.tools.javac.platform.PlatformDescription.getFileManager.

Annotations
@Override
getPluginsback to summary
public List<PlatformDescription.PluginInfo<Plugin>> getPlugins()

Implements com.sun.tools.javac.platform.PlatformDescription.getPlugins.

Doc from com.sun.tools.javac.platform.PlatformDescription.getPlugins.

Returns the javac Plugins that should be enabled in the current javac run.

Returns:List<PlatformDescription.PluginInfo<Plugin>>

javac Plugins

Annotations
@Override
getSourceVersionback to summary
public String getSourceVersion()

Implements com.sun.tools.javac.platform.PlatformDescription.getSourceVersion.

Doc from com.sun.tools.javac.platform.PlatformDescription.getSourceVersion.

Returns the source version that should be selected. Equivalent to -source N on the command line.

Returns:String

the required source version

Annotations
@Override
getTargetVersionback to summary
public String getTargetVersion()

Implements com.sun.tools.javac.platform.PlatformDescription.getTargetVersion.

Doc from com.sun.tools.javac.platform.PlatformDescription.getTargetVersion.

Returns the target version that should be selected. Equivalent to -target N on the command line.

Returns:String

the required target version

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

private Class JDKPlatformProvider.PlatformDescriptionImpl.SigJavaFileObject

extends ForwardingJavaFileObject<JavaFileObject>
Class Inheritance

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public JavaFileObject
public JavaFileObject.Kind
getKind()

Overrides javax.tools.ForwardingJavaFileObject.getKind.

Implements javax.tools.JavaFileObject.getKind.

Returns the kind of this file object.
public boolean
isNameCompatible(String
a simple name of a class
simpleName
,
JavaFileObject.Kind
a kind
kind
)

Overrides javax.tools.ForwardingJavaFileObject.isNameCompatible.

Implements javax.tools.JavaFileObject.isNameCompatible.

Checks if this file object is compatible with the specified simple name and kind.
Inherited from javax.tools.ForwardingJavaFileObject:
getAccessLevelgetNestingKind

Constructor Detail

SigJavaFileObjectback to summary
public SigJavaFileObject(JavaFileObject fileObject)

Method Detail

getDelegateback to summary
public JavaFileObject getDelegate()
getKindback to summary
public JavaFileObject.Kind getKind()

Overrides javax.tools.ForwardingJavaFileObject.getKind.

Implements javax.tools.JavaFileObject.getKind.

Doc from javax.tools.JavaFileObject.getKind.

Returns the kind of this file object.

Returns:JavaFileObject.Kind

the kind

Annotations
@Override
isNameCompatibleback to summary
public boolean isNameCompatible(String simpleName, JavaFileObject.Kind kind)

Overrides javax.tools.ForwardingJavaFileObject.isNameCompatible.

Implements javax.tools.JavaFileObject.isNameCompatible.

Doc from javax.tools.JavaFileObject.isNameCompatible.

Checks if this file object is compatible with the specified simple name and kind. A simple name is a single identifier (not qualified) as defined in The Java Language Specification, section 6.2.

Parameters
simpleName:String

a simple name of a class

kind:JavaFileObject.Kind

a kind

Returns:boolean

true if this file object is compatible; false otherwise

Annotations
@Override