APIdia Launch Partner
Top Description Inners Fields Constructors Methods
jdk.tools.jlink.internal

public final Class TaskHelper

extends Object
Class Inheritance
Imports
java.io.IOException, .PrintWriter, java.nio.file.Files, .Path, java.text.MessageFormat, java.util.ArrayList, .Arrays, .Collections, .Comparator, .HashMap, .HashSet, .List, .Locale, .Map, .Map.Entry, .MissingResourceException, .ResourceBundle, .Set, java.util.stream.Stream, jdk.tools.jlink.builder.DefaultImageBuilder, .ImageBuilder, jdk.tools.jlink.internal.Jlink.PluginsConfiguration, jdk.tools.jlink.internal.plugins.DefaultCompressPlugin, .DefaultStripDebugPlugin, .ExcludeJmodSectionPlugin, .PluginsResourceBundle, .StripJavaDebugAttributesPlugin, jdk.tools.jlink.plugin.Plugin, .Plugin.Category

JLink and JImage tools shared helper.

Nested and Inner Type Summary

Modifier and TypeClass and Description
public class
public static class
public class
private static class
private class
private static class

Field Summary

Modifier and TypeField and Description
private final TaskHelper.ResourceBundleHelper
public static final String
private PrintWriter
private TaskHelper.PluginsHelper

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public String
getMessage(String key, Object... args)

public Jlink.PluginsConfiguration
getPluginsConfig(Path output, Map<String, String> launchers, Platform targetPlatform)

public TaskHelper.BadArgs
newBadArgs(String key, Object... args)

public <T> TaskHelper.OptionsHelper<T>
newOptionsHelper(Class<T> clazz, TaskHelper.Option<?>[] options)

public void
reportError(String key, Object... args)

public void
public void
private static boolean
public void
showVersion(boolean full)

public String
public void
warning(String key, Object... args)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

bundleHelperback to summary
private final TaskHelper.ResourceBundleHelper bundleHelper
JIMAGE_BUNDLEback to summary
public static final String JIMAGE_BUNDLE
logback to summary
private PrintWriter log
pluginOptionsback to summary
private TaskHelper.PluginsHelper pluginOptions

Constructor Detail

TaskHelperback to summary
public TaskHelper(String path)

Method Detail

getMessageback to summary
public String getMessage(String key, Object... args)
getPluginsConfigback to summary
public Jlink.PluginsConfiguration getPluginsConfig(Path output, Map<String, String> launchers, Platform targetPlatform) throws IOException, BadArgs
newBadArgsback to summary
public TaskHelper.BadArgs newBadArgs(String key, Object... args)
newOptionsHelperback to summary
public <T> TaskHelper.OptionsHelper<T> newOptionsHelper(Class<T> clazz, TaskHelper.Option<?>[] options)
reportErrorback to summary
public void reportError(String key, Object... args)
reportUnknownErrorback to summary
public void reportUnknownError(String message)
setLogback to summary
public void setLog(PrintWriter log)
showsPluginback to summary
private static boolean showsPlugin(Plugin plugin)
showVersionback to summary
public void showVersion(boolean full)
versionback to summary
public String version(String key)
warningback to summary
public void warning(String key, Object... args)
jdk.tools.jlink.internal back to summary

public final Class TaskHelper.BadArgs

extends Exception
Class Inheritance

Field Summary

Modifier and TypeField and Description
public final Object[]
public final String
pack-priv static final long
public boolean

Constructor Summary

AccessConstructor and Description
private
BadArgs(String key, Object... args)

Method Summary

Modifier and TypeMethod and Description
public TaskHelper.BadArgs
showUsage(boolean b)

Field Detail

argsback to summary
public final Object[] args
Annotations
@SuppressWarnings:serial
keyback to summary
public final String key
serialVersionUIDback to summary
pack-priv static final long serialVersionUID

Hides java.lang.Exception.serialVersionUID.

showUsageback to summary
public boolean showUsage

Constructor Detail

BadArgsback to summary
private BadArgs(String key, Object... args)

Method Detail

showUsageback to summary
public TaskHelper.BadArgs showUsage(boolean b)
jdk.tools.jlink.internal back to summary

public Class TaskHelper.Option<T>

extends Object
implements Comparable<T>
Class Inheritance
All Implemented Interfaces
java.lang.Comparable
Known Direct Subclasses
jdk.tools.jlink.internal.TaskHelper.PluginOption

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static interface

Field Summary

Modifier and TypeField and Description
pack-priv final boolean
pack-priv final boolean
pack-priv final String
pack-priv final TaskHelper.Option.Processing<T>
pack-priv final String
pack-priv final String
pack-priv final boolean

Constructor Summary

AccessConstructor and Description
public
Option(boolean hasArg, TaskHelper.Option.Processing<T> processing, boolean hidden, String name, String shortname, String shortname2, boolean isTerminal)

public
Option(boolean hasArg, TaskHelper.Option.Processing<T> processing, boolean hidden, String name, String shortname, boolean isTerminal)

public
Option(boolean hasArg, TaskHelper.Option.Processing<T> processing, String name, String shortname, boolean isTerminal)

public
Option(boolean hasArg, TaskHelper.Option.Processing<T> processing, String name, String shortname, String shortname2)

public
Option(boolean hasArg, TaskHelper.Option.Processing<T> processing, String name, String shortname)

public
Option(boolean hasArg, TaskHelper.Option.Processing<T> processing, boolean hidden, String name)

public
Option(boolean hasArg, TaskHelper.Option.Processing<T> processing, String name)

Method Summary

Modifier and TypeMethod and Description
public int
compareTo(Object object)

Implements java.lang.Comparable.compareTo.

Compares this object with the specified object for order.

public String
public String
public boolean
public boolean
public boolean
public boolean
pack-priv void
process(T task, String opt, String arg)

public String
public String
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

hasArgback to summary
pack-priv final boolean hasArg
hiddenback to summary
pack-priv final boolean hidden
nameback to summary
pack-priv final String name
processingback to summary
pack-priv final TaskHelper.Option.Processing<T> processing
shortnameback to summary
pack-priv final String shortname
shortname2back to summary
pack-priv final String shortname2
terminalOptionback to summary
pack-priv final boolean terminalOption

Constructor Detail

Optionback to summary
public Option(boolean hasArg, TaskHelper.Option.Processing<T> processing, boolean hidden, String name, String shortname, String shortname2, boolean isTerminal)
Optionback to summary
public Option(boolean hasArg, TaskHelper.Option.Processing<T> processing, boolean hidden, String name, String shortname, boolean isTerminal)
Optionback to summary
public Option(boolean hasArg, TaskHelper.Option.Processing<T> processing, String name, String shortname, boolean isTerminal)
Optionback to summary
public Option(boolean hasArg, TaskHelper.Option.Processing<T> processing, String name, String shortname, String shortname2)
Optionback to summary
public Option(boolean hasArg, TaskHelper.Option.Processing<T> processing, String name, String shortname)
Optionback to summary
public Option(boolean hasArg, TaskHelper.Option.Processing<T> processing, boolean hidden, String name)
Optionback to summary
public Option(boolean hasArg, TaskHelper.Option.Processing<T> processing, String name)

Method Detail

compareToback to summary
public int compareTo(Object object)

Implements java.lang.Comparable.compareTo.

Doc from java.lang.Comparable.compareTo.

Compares this object with the specified object for order. Returns a negative integer, zero, or a positive integer as this object is less than, equal to, or greater than the specified object.

The implementor must ensure signum(x.compareTo(y)) == -signum(y.compareTo(x)) for all x and y. (This implies that x.compareTo(y) must throw an exception if and only if y.compareTo(x) throws an exception.)

The implementor must also ensure that the relation is transitive: (x.compareTo(y) > 0 && y.compareTo(z) > 0) implies x.compareTo(z) > 0.

Finally, the implementor must ensure that x.compareTo(y)==0 implies that signum(x.compareTo(z)) == signum(y.compareTo(z)), for all z.

Annotations
@Override
getNameback to summary
public String getName()
getShortnameback to summary
public String getShortname()
ignoreRestback to summary
public boolean ignoreRest()
isHiddenback to summary
public boolean isHidden()
isTerminalback to summary
public boolean isTerminal()
matchesback to summary
public boolean matches(String opt)
processback to summary
pack-priv void process(T task, String opt, String arg) throws BadArgs
resourceNameback to summary
public String resourceName()
resourcePrefixback to summary
public String resourcePrefix()
jdk.tools.jlink.internal back to summary

public Interface TaskHelper.Option.Processing<T>


Method Summary

Modifier and TypeMethod and Description
public void
process(T task, String opt, String arg)

Method Detail

processback to summary
public void process(T task, String opt, String arg) throws BadArgs
jdk.tools.jlink.internal back to summary

public final Class TaskHelper.OptionsHelper<T>

extends Object
Class Inheritance

Field Summary

Modifier and TypeField and Description
private String[]
private String
private final List<TaskHelper.Option<T>>

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
pack-priv String
pack-priv String[]
private TaskHelper.Option<T>
public ModuleLayer
public List<String>
handleOptions(T task, String[] args)

Handles all options.

public void
public boolean
public void
showHelp(String progName, boolean linkableRuntimeEnabled)

private void
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

commandback to summary
private String[] command
defaultsback to summary
private String defaults
optionsback to summary
private final List<TaskHelper.Option<T>> options

Constructor Detail

OptionsHelperback to summary
pack-priv OptionsHelper(List<TaskHelper.Option<T>> options)

Method Detail

getDefaultsback to summary
pack-priv String getDefaults()
getInputCommandback to summary
pack-priv String[] getInputCommand()
getOptionback to summary
private TaskHelper.Option<T> getOption(String name)
getPluginsLayerback to summary
public ModuleLayer getPluginsLayer()
handleOptionsback to summary
public List<String> handleOptions(T task, String[] args) throws BadArgs

Handles all options. This method stops processing the argument at the first non-option argument i.e. not starts with `-`, or at the first terminal option and returns the remaining arguments, if any.

listPluginsback to summary
public void listPlugins()
shouldListPluginsback to summary
public boolean shouldListPlugins()
showHelpback to summary
public void showHelp(String progName, boolean linkableRuntimeEnabled)
showPluginback to summary
private void showPlugin(Plugin plugin, PrintWriter log)
jdk.tools.jlink.internal back to summary

private Class TaskHelper.PluginOption

extends TaskHelper.Option<TaskHelper.PluginsHelper>
Class Inheritance

Field Summary

Inherited from jdk.tools.jlink.internal.TaskHelper.Option:
hasArghiddennameprocessingshortnameshortname2terminalOption

Constructor Summary

AccessConstructor and Description
public
PluginOption(boolean hasArg, TaskHelper.Option.Processing<TaskHelper.PluginsHelper> processing, boolean hidden, String name, String shortname)

public
PluginOption(boolean hasArg, TaskHelper.Option.Processing<TaskHelper.PluginsHelper> processing, boolean hidden, String name)

Method Summary

Modifier and TypeMethod and Description
public String
Inherited from jdk.tools.jlink.internal.TaskHelper.Option:
compareTogetNamegetShortnameignoreRestisHiddenisTerminalmatchesprocessresourceName

Constructor Detail

PluginOptionback to summary
public PluginOption(boolean hasArg, TaskHelper.Option.Processing<TaskHelper.PluginsHelper> processing, boolean hidden, String name, String shortname)
PluginOptionback to summary
public PluginOption(boolean hasArg, TaskHelper.Option.Processing<TaskHelper.PluginsHelper> processing, boolean hidden, String name)

Method Detail

resourcePrefixback to summary
public String resourcePrefix()

Overrides jdk.tools.jlink.internal.TaskHelper.Option.resourcePrefix.

Annotations
@Override
jdk.tools.jlink.internal back to summary

private final Class TaskHelper.PluginsHelper

extends Object
Class Inheritance

Field Summary

Modifier and TypeField and Description
private String
private boolean
private final List<TaskHelper.PluginOption>
private final List<Plugin>
private ModuleLayer
private final List<TaskHelper.PluginOption>
private final Map<Plugin, List<Map<String, String>>>
private static final String

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
private Map<String, String>
private void
private void
addOrderedPluginOptions(Plugin plugin, Set<String> optionsSeen)

private List<Map<String, String>>
private TaskHelper.PluginOption
private Jlink.PluginsConfiguration
getPluginsConfig(Path output, Map<String, String> launchers, Platform targetPlatform)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

lastSorterback to summary
private String lastSorter
listPluginsback to summary
private boolean listPlugins
mainOptionsback to summary
private final List<TaskHelper.PluginOption> mainOptions
pluginsback to summary
private final List<Plugin> plugins
pluginsLayerback to summary
private ModuleLayer pluginsLayer
pluginsOptionsback to summary
private final List<TaskHelper.PluginOption> pluginsOptions
pluginToMapsback to summary
private final Map<Plugin, List<Map<String, String>>> pluginToMaps
STRIP_NATIVE_DEBUG_SYMBOLS_NAMEback to summary
private static final String STRIP_NATIVE_DEBUG_SYMBOLS_NAME

Constructor Detail

PluginsHelperback to summary
private PluginsHelper() throws BadArgs

Method Detail

addArgumentMapback to summary
private Map<String, String> addArgumentMap(Plugin plugin)
addEmptyArgumentMapback to summary
private void addEmptyArgumentMap(Plugin plugin)
addOrderedPluginOptionsback to summary
private void addOrderedPluginOptions(Plugin plugin, Set<String> optionsSeen) throws BadArgs
argListForback to summary
private List<Map<String, String>> argListFor(Plugin plugin)
getOptionback to summary
private TaskHelper.PluginOption getOption(String name) throws BadArgs
getPluginsConfigback to summary
private Jlink.PluginsConfiguration getPluginsConfig(Path output, Map<String, String> launchers, Platform targetPlatform) throws IOException, BadArgs
jdk.tools.jlink.internal back to summary

private final Class TaskHelper.ResourceBundleHelper

extends Object
Class Inheritance

Field Summary

Modifier and TypeField and Description
private final ResourceBundle
private final ResourceBundle

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
pack-priv String
getMessage(String key, Object... args)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

bundleback to summary
private final ResourceBundle bundle
pluginBundleback to summary
private final ResourceBundle pluginBundle

Constructor Detail

ResourceBundleHelperback to summary
pack-priv ResourceBundleHelper(String path)

Method Detail

getMessageback to summary
pack-priv String getMessage(String key, Object... args)