Class TaskToolHelper

    • Constructor Detail

      • TaskToolHelper

        public TaskToolHelper​(com.forgerock.opendj.cli.Tool printer)
        Creates a new TaskToolHelper with the provided tool for printing the messages.
        Parameters:
        printer - The tool used for printing the messages.
    • Method Detail

      • shutdownBackends

        public static void shutdownBackends()
        Shutdowns all backends.
      • addAttributeIfArgumentPresent

        public static void addAttributeIfArgumentPresent​(Entry taskEntry,
                                                         String attrName,
                                                         com.forgerock.opendj.cli.Argument argument)
        Adds the attribute with the argument value to the task entry if the argument corresponding to the attribute has been provided on the command line.
        Parameters:
        taskEntry - The task Entry to update
        attrName - The attribute corresponding to the argument
        argument - The argument representing the attribute
      • addAttribute

        public static void addAttribute​(Entry taskEntry,
                                        String attrName,
                                        com.forgerock.opendj.cli.Argument argument)
        Adds the provided attribute with the argument value(s) to the provided task entry only if the argument has been provided on the command line.
        Parameters:
        taskEntry - The task Entry to update.
        attrName - A String representing the attribute name corresponding to the Argument.
        argument - The Argument containing the attribute value(s).
      • addTaskRelatedArgumentsToParser

        public void addTaskRelatedArgumentsToParser​(com.forgerock.opendj.cli.ArgumentParser argParser,
                                                    boolean offlineModifiesServerFiles)
        Add all the task-related arguments to the provided argument parser. This includes ldap client arguments to connect to a directory server, task arguments to customize the task execution and the offline argument to distinguish between the task mode and offline mode.
        Parameters:
        argParser - The argument parser.
        offlineModifiesServerFiles - Indicates whether the offline mode will modify server files.
        See Also:
        OFFLINE_DOES_NOT_MODIFY_SERVER_FILES, OFFLINE_MODIFIES_SERVER_FILES
      • addTaskRelatedArgumentsToParser

        public void addTaskRelatedArgumentsToParser​(com.forgerock.opendj.cli.ArgumentParser argParser,
                                                    com.forgerock.opendj.cli.BooleanArgument offlineArgument)
        Add all the task-related arguments to the provided argument parser. This includes ldap client arguments to connect to a directory server, task arguments to customize the task execution and the provided offline argument to distinguish between the task mode and offline mode.
        Parameters:
        argParser - The argument parser.
        offlineArgument - The offline argument.
        See Also:
        OFFLINE_DOES_NOT_MODIFY_SERVER_FILES, OFFLINE_MODIFIES_SERVER_FILES
      • validateTaskRelatedArguments

        public void validateTaskRelatedArguments​(com.forgerock.opendj.cli.ArgumentParser argParser,
                                                 boolean isEmbedded)
                                          throws com.forgerock.opendj.cli.ClientException
        Validates the task-related arguments and throw an exception if the user-provided values are invalid.
        Parameters:
        argParser - The argument parser.
        isEmbedded - Whether the tool is embedded.
        Throws:
        com.forgerock.opendj.cli.ClientException - If the user provided values for task-related argument are invalid.
      • throwIfContainsTaskRelatedArguments

        public void throwIfContainsTaskRelatedArguments​(com.forgerock.opendj.cli.ArgumentParser argParser,
                                                        String subcommandName)
                                                 throws com.forgerock.opendj.cli.WrongUsageException
        Throws wrong usage exception if at least one connection or task argument was provided.
        Parameters:
        argParser - The argument parser.
        subcommandName - The name of the sub-command that cannot run online.
        Throws:
        com.forgerock.opendj.cli.WrongUsageException - if at least on connection or task argument was provided.
      • isOffline

        public boolean isOffline()
        Indicates whether the offline argument was provided.
        Returns:
        whether the offline argument was provided.
      • process

        public com.forgerock.opendj.cli.ReturnCode process​(TaskCommand taskCommand)
                                                    throws com.forgerock.opendj.cli.ClientException
        Process locally or run a task depending on whether the offline argument was provided. The task will be run according to the user provided task-related arguments.
        Parameters:
        taskCommand - the command that should be executed.
        Returns:
        the return code.
        Throws:
        com.forgerock.opendj.cli.ClientException - If there is a problem when running the task.