@ThreadSafety(level=NOT_THREADSAFE) public final class IndentLDAPFilter extends CommandLineTool
Filter.simplifyFilter(com.unboundid.ldap.sdk.Filter, boolean)
method) to remove
unnecessary complexity.Constructor and Description |
---|
IndentLDAPFilter(java.io.OutputStream out,
java.io.OutputStream err)
Creates a new instance of this command-line tool with the provided output
and error streams.
|
Modifier and Type | Method and Description |
---|---|
void |
addToolArguments(ArgumentParser parser)
Adds the command-line arguments supported for use with this tool to the
provided argument parser.
|
boolean |
defaultsToInteractiveMode()
Indicates whether this tool defaults to launching in interactive mode if
the tool is invoked without any command-line arguments.
|
ResultCode |
doToolProcessing()
Performs the core set of processing for this tool.
|
java.util.LinkedHashMap<java.lang.String[],java.lang.String> |
getExampleUsages()
Retrieves a set of information that may be used to generate example usage
information.
|
int |
getMaxTrailingArguments()
Retrieves the maximum number of unnamed trailing arguments that may be
provided for this tool.
|
int |
getMinTrailingArguments()
Retrieves the minimum number of unnamed trailing arguments that must be
provided for this tool.
|
java.lang.String |
getToolDescription()
Retrieves a human-readable description for this tool.
|
java.lang.String |
getToolName()
Retrieves the name of this tool.
|
java.lang.String |
getToolVersion()
Retrieves a version string for this tool, if available.
|
java.lang.String |
getTrailingArgumentsPlaceholder()
Retrieves a placeholder string that should be used for trailing arguments
in the usage information for this tool.
|
static void |
indentLDAPFilter(Filter filter,
java.lang.String currentIndentString,
java.lang.String indentSpaces,
java.util.List<java.lang.String> indentedFilterLines)
Generates an indented representation of the provided filter.
|
static ResultCode |
main(java.io.OutputStream out,
java.io.OutputStream err,
java.lang.String... args)
Runs this tool with the provided set of command-line arguments.
|
static void |
main(java.lang.String... args)
Runs this tool with the provided set of command-line arguments.
|
protected boolean |
supportsDebugLogging()
Indicates whether this tool supports the ability to generate a debug log
file.
|
boolean |
supportsInteractiveMode()
Indicates whether this tool should provide support for an interactive mode,
in which the tool offers a mode in which the arguments can be provided in
a text-driven menu rather than requiring them to be given on the command
line.
|
protected boolean |
supportsOutputFile()
Indicates whether this tool should provide arguments for redirecting output
to a file.
|
boolean |
supportsPropertiesFile()
Indicates whether this tool supports the use of a properties file for
specifying default values for arguments that aren't specified on the
command line.
|
addEnableSSLDebuggingArgument, createArgumentParser, doExtendedArgumentValidation, doShutdownHookProcessing, err, getAdditionalDescriptionParagraphs, getErr, getOriginalErr, getOriginalOut, getOut, getPasswordFileReader, getToolCompletionMessage, logToolInvocationByDefault, out, registerShutdownHook, requestToolArgumentsInteractively, runTool, wrapErr, wrapOut
public IndentLDAPFilter(@Nullable java.io.OutputStream out, @Nullable java.io.OutputStream err)
out
- The output stream to which standard out should be written. It
may be null
if standard output should be
suppressed.err
- The output stream to which standard error should be written.
It may be null
if standard error should be suppressed.public static void main(@NotNull java.lang.String... args)
args
- The command line arguments provided to this program.@NotNull public static ResultCode main(@Nullable java.io.OutputStream out, @Nullable java.io.OutputStream err, @NotNull java.lang.String... args)
out
- The output stream to which standard out should be written.
It may be null
if standard output should be
suppressed.err
- The output stream to which standard error should be written.
It may be null
if standard error should be
suppressed.args
- The command line arguments provided to this program.ResultCode.SUCCESS
should be
considered an error.@NotNull public java.lang.String getToolName()
getToolName
in class CommandLineTool
@NotNull public java.lang.String getToolDescription()
CommandLineTool.getAdditionalDescriptionParagraphs()
method should be used to
return the text for the subsequent paragraphs.getToolDescription
in class CommandLineTool
@NotNull public java.lang.String getToolVersion()
getToolVersion
in class CommandLineTool
null
if none is
available.public int getMinTrailingArguments()
getMaxTrailingArguments()
arguments to return nonzero values, and it must also override the
getTrailingArgumentsPlaceholder()
method to return a
non-null
value.getMinTrailingArguments
in class CommandLineTool
public int getMaxTrailingArguments()
CommandLineTool.getTrailingArgumentsPlaceholder()
method to
return a non-null
value.getMaxTrailingArguments
in class CommandLineTool
@NotNull public java.lang.String getTrailingArgumentsPlaceholder()
getTrailingArgumentsPlaceholder
in class CommandLineTool
null
if trailing
arguments are not supported.public boolean supportsInteractiveMode()
defaultsToInteractiveMode()
returns true
, then
interactive mode may be invoked by simply launching the tool without any
arguments.supportsInteractiveMode
in class CommandLineTool
true
if this tool supports interactive mode, or
false
if not.public boolean defaultsToInteractiveMode()
supportsInteractiveMode()
returns true
.defaultsToInteractiveMode
in class CommandLineTool
true
if this tool defaults to using interactive mode if
launched without any command-line arguments, or false
if
not.public boolean supportsPropertiesFile()
supportsPropertiesFile
in class CommandLineTool
true
if this tool supports the use of a properties file
for specifying default values for arguments that aren't specified
on the command line, or false
if not.protected boolean supportsOutputFile()
true
, then the tool will offer
an "--outputFile" argument that will specify the path to a file to which
all standard output and standard error content will be written, and it will
also offer a "--teeToStandardOut" argument that can only be used if the
"--outputFile" argument is present and will cause all output to be written
to both the specified output file and to standard output.supportsOutputFile
in class CommandLineTool
true
if this tool should provide arguments for redirecting
output to a file, or false
if not.protected boolean supportsDebugLogging()
true
, then the tool will expose
additional arguments that can control debug logging.supportsDebugLogging
in class CommandLineTool
true
if this tool supports the ability to generate a debug
log file, or false
if not.public void addToolArguments(@NotNull ArgumentParser parser) throws ArgumentException
addToolArguments
in class CommandLineTool
parser
- The argument parser to which the arguments are to be added.ArgumentException
- If a problem occurs while adding any of the
tool-specific arguments to the provided
argument parser.@NotNull public ResultCode doToolProcessing()
doToolProcessing
in class CommandLineTool
public static void indentLDAPFilter(@NotNull Filter filter, @NotNull java.lang.String currentIndentString, @NotNull java.lang.String indentSpaces, @NotNull java.util.List<java.lang.String> indentedFilterLines)
filter
- The filter to be indented. It must not be
null
.currentIndentString
- A string that represents the current indent
that should be added before each line of the
filter. It may be empty, but must not be
null
.indentSpaces
- A string that represents the number of
additional spaces that each subsequent level
of the hierarchy should be indented. It may
be empty, but must not be null
.indentedFilterLines
- A list to which the lines that comprise the
indented filter should be added. It must not
be null
, and must be updatable.@NotNull public java.util.LinkedHashMap<java.lang.String[],java.lang.String> getExampleUsages()
getExampleUsages
in class CommandLineTool
null
or empty if no example usage
information is available.