APIdia Launch Partner
Top Description Fields Constructors Methods
jdk.javadoc.internal.tool

public Class Start

extends Object
Class Inheritance
Imports
java.io.File, .IOException, .PrintWriter, java.text.BreakIterator, .Collator, java.util.ArrayList, .Comparator, .IllformedLocaleException, .List, .Locale, .Map, .Objects, .Set, java.util.function.Supplier, java.util.stream.Collectors, .Stream, javax.tools.JavaFileManager, .JavaFileObject, .StandardJavaFileManager, com.sun.tools.javac.api.JavacTrees, com.sun.tools.javac.file.BaseFileManager, .JavacFileManager, com.sun.tools.javac.jvm.Target, com.sun.tools.javac.main.Arguments, com.sun.tools.javac.util.ClientCodeException, .Context, .Log, .ModuleHelper, .StringUtils, jdk.internal.opt.CommandLine, jdk.javadoc.doclet.Doclet, .Doclet.Option, .DocletEnvironment, .StandardDoclet, jdk.javadoc.internal.Versions, jdk.javadoc.internal.tool.Main.Result, .ToolOptions.ToolOption

Main program of Javadoc. Previously named "Main".

Field Summary

Modifier and TypeField and Description
private boolean
apiMode

In API mode, exceptions thrown while calling the doclet are propagated using ClientCodeException.

private final ClassLoader
private static final String
COMPACT_FORMAT

The format for a single-line help entry.

private final Context
context

Context for this invocation.

private static final int
DEFAULT_MAX_LINE_LENGTH

The nominal maximum line length, when seeing if text will fit on a line.

private static final int
DEFAULT_SYNOPSIS_WIDTH

The space allowed for the synopsis, if the description is to be shown on the same line.

private Doclet
private Class<?>
private final String
private Set<? extends Doclet.Option>
private JavaFileManager
private static final String
LARGE_INDENT

The automatic indent for the description.

private Locale
private JavadocLog
private final ToolOptions
private static final String
private static final String
SMALL_INDENT

The indent for the option synopsis.

Constructor Summary

AccessConstructor and Description
pack-priv
pack-priv
Start(PrintWriter outWriter, PrintWriter errWriter)

pack-priv
Start(Context context, String programName, PrintWriter outWriter, PrintWriter errWriter, String docletName, ClassLoader classLoader)

public
Start(Context context)

Method Summary

Modifier and TypeMethod and Description
pack-priv Main.Result
begin(String... argv)

Main program - external wrapper.

public boolean
begin(Class<?> docletClass, Iterable<String> options, Iterable<? extends JavaFileObject> fileObjects)

private Main.Result
begin(List<String> options, Iterable<? extends JavaFileObject> fileObjects)

private void
checkOneArg(List<String> args, int index)

Check the one arg option.

pack-priv int
consumeDocletOption(int idx, List<String> args, boolean isToolOption)

private void
private void
dumpStack(boolean enabled, Throwable t)

pack-priv void
error(String key, Object... args)

private Locale
getLocale(String localeName)

Get the locale if specified on the command line else return null and if locale option is not used then return default locale.

private static Set<? extends Doclet.Option>
private ToolOptions
private <T> boolean
isEmpty(Iterable<T> iter)

private Class<?>
loadDocletClass(String docletName, ClassLoader classLoader)

pack-priv boolean
matches(List<String> names, String arg)

pack-priv boolean
matches(Doclet.Option option, String arg)

private Main.Result
parseAndExecute(List<String> argList, Iterable<? extends JavaFileObject> fileObjects)

Main program - internal

private boolean
parseArgs(List<String> args, List<String> javaNames)

private Doclet

Returns:

the doclet
preprocess
(List<String>
the arguments to be processed
argv
)

Performs an initial pass over the options, primarily to determine the doclet to be used (if any), so that it may participate in the main round of option decoding.

private void
private void
private void
private void
private void
showLines(String message)

private void
pack-priv void
showOption(List<String> names, String parameters, String description)

private void
private void
private void
private void
showUsage(String headerKey, ToolOptions.ToolOption.Kind kind, String footerKey)

private void
showVersion(String labelKey, String value)

private static double
private Runtime.Version
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

apiModeback to summary
private boolean apiMode

In API mode, exceptions thrown while calling the doclet are propagated using ClientCodeException.

classLoaderback to summary
private final ClassLoader classLoader
COMPACT_FORMATback to summary
private static final String COMPACT_FORMAT

The format for a single-line help entry.

contextback to summary
private final Context context

Context for this invocation.

DEFAULT_MAX_LINE_LENGTHback to summary
private static final int DEFAULT_MAX_LINE_LENGTH

The nominal maximum line length, when seeing if text will fit on a line.

DEFAULT_SYNOPSIS_WIDTHback to summary
private static final int DEFAULT_SYNOPSIS_WIDTH

The space allowed for the synopsis, if the description is to be shown on the same line.

docletback to summary
private Doclet doclet
docletClassback to summary
private Class<?> docletClass
docletNameback to summary
private final String docletName
docletOptionsback to summary
private Set<? extends Doclet.Option> docletOptions
fileManagerback to summary
private JavaFileManager fileManager
LARGE_INDENTback to summary
private static final String LARGE_INDENT

The automatic indent for the description.

localeback to summary
private Locale locale
logback to summary
private JavadocLog log
optionsback to summary
private final ToolOptions options
ProgramNameback to summary
private static final String ProgramName
SMALL_INDENTback to summary
private static final String SMALL_INDENT

The indent for the option synopsis.

Constructor Detail

Startback to summary
pack-priv Start()
Startback to summary
pack-priv Start(PrintWriter outWriter, PrintWriter errWriter)
Startback to summary
pack-priv Start(Context context, String programName, PrintWriter outWriter, PrintWriter errWriter, String docletName, ClassLoader classLoader)
Startback to summary
public Start(Context context)

Method Detail

beginback to summary
pack-priv Main.Result begin(String... argv)

Main program - external wrapper.

beginback to summary
public boolean begin(Class<?> docletClass, Iterable<String> options, Iterable<? extends JavaFileObject> fileObjects)
beginback to summary
private Main.Result begin(List<String> options, Iterable<? extends JavaFileObject> fileObjects)
checkOneArgback to summary
private void checkOneArg(List<String> args, int index) throws OptionException

Check the one arg option. Error and exit if one argument is not provided.

consumeDocletOptionback to summary
pack-priv int consumeDocletOption(int idx, List<String> args, boolean isToolOption) throws OptionException
dumpStackback to summary
private void dumpStack(Throwable t)
dumpStackback to summary
private void dumpStack(boolean enabled, Throwable t)
errorback to summary
pack-priv void error(String key, Object... args)
getLocaleback to summary
private Locale getLocale(String localeName) throws ToolException

Get the locale if specified on the command line else return null and if locale option is not used then return default locale.

getSupportedOptionsOfback to summary
private static Set<? extends Doclet.Option> getSupportedOptionsOf(Doclet doclet)
getToolOptionsback to summary
private ToolOptions getToolOptions()
isEmptyback to summary
private <T> boolean isEmpty(Iterable<T> iter)
loadDocletClassback to summary
private Class<?> loadDocletClass(String docletName, ClassLoader classLoader) throws ToolException
matchesback to summary
pack-priv boolean matches(List<String> names, String arg)
matchesback to summary
pack-priv boolean matches(Doclet.Option option, String arg)
parseAndExecuteback to summary
private Main.Result parseAndExecute(List<String> argList, Iterable<? extends JavaFileObject> fileObjects) throws ToolException, OptionException, InvalidValueException

Main program - internal

parseArgsback to summary
private boolean parseArgs(List<String> args, List<String> javaNames) throws OptionException, InvalidValueException
preprocessback to summary
private Doclet preprocess(List<String> argv) throws ToolException, OptionException

Performs an initial pass over the options, primarily to determine the doclet to be used (if any), so that it may participate in the main round of option decoding. This avoids having to specify that the options to specify the doclet should appear before any options that are handled by the doclet. The downside of this initial phase is that we have to skip over unknown options, and assume that we can reliably detect the options we need to handle.

Parameters
argv:List<String>

the arguments to be processed

Returns:Doclet

the doclet

Exceptions
ToolException:
if an error occurs initializing the doclet
OptionException:
if an error occurs while processing an option
reportBadOptionback to summary
private void reportBadOption(String name)
reportInternalErrorback to summary
private void reportInternalError(Throwable t)
showDocletOptionback to summary
private void showDocletOption(Doclet.Option option)
showDocletOptionsback to summary
private void showDocletOptions(Doclet.Option.Kind kind)
showLinesback to summary
private void showLines(String message)
showLinesUsingKeyback to summary
private void showLinesUsingKey(String key, Object... args)
showOptionback to summary
pack-priv void showOption(List<String> names, String parameters, String description)
showToolOptionback to summary
private void showToolOption(ToolOptions.ToolOption option)
showToolOptionsback to summary
private void showToolOptions(ToolOptions.ToolOption.Kind kind)
showUsageback to summary
private void showUsage()
showUsageback to summary
private void showUsage(String headerKey, ToolOptions.ToolOption.Kind kind, String footerKey)
showVersionback to summary
private void showVersion(String labelKey, String value)
similarityback to summary
private static double similarity(String a, String b)
toolVersionback to summary
private Runtime.Version toolVersion()