Class Profile.Parameter<P extends Profile.Parameter<P,​T>,​T>

    • Method Detail

      • defaultValue

        public final P defaultValue​(T defaultValue)
        Sets this profile parameter default value.

        If no value is available for the parameter at runtime, default value will be used.

        Parameters:
        defaultValue - The default value to be associated to this parameter
        Returns:
        This profile parameter
      • defaultValue

        public final P defaultValue​(String defaultValue)
                             throws SetupException
        Sets this profile parameter default value with the provided string.

        If no value is available for the parameter at runtime, default value will be used.

        Parameters:
        defaultValue - A string representing the default value to be associated to this parameter
        Returns:
        This profile parameter
        Throws:
        SetupException - If the provided string cannot be converted in the parameter object type
      • description

        public final P description​(String descriptionMsg)
        Sets this profile parameter description.

        Description will be used by setup tool interactive mode in summaries, hence description content should be concise (e.g Name of the backend used to ...

        Parameters:
        descriptionMsg - A string representing the parameter description message
        Returns:
        This profile parameter
      • help

        public final P help​(String helpMsg)
        Sets this profile parameter help.

        Help is printed when user wants to know all parameters associated to a profile (setup --help-profile "profileId"), if not set description will be used.

        Parameters:
        helpMsg - A string representing the parameter help message
        Returns:
        This profile parameter
      • multivalued

        public final P multivalued​(String... addAnotherValueMsg)
        Specifies that this profile parameter can accept multiple values.
        Parameters:
        addAnotherValueMsg - Strings representing the paragraphs of the message to be printed to ask if another value must be added for this parameter
        Returns:
        This profile parameter
      • expressionAllowed

        public P expressionAllowed()
        Specifies that common configuration expressions can be specified for this profile parameter.
        Returns:
        This profile parameter
      • optional

        public final P optional​(String... optionalPromptMsg)
        Specifies that this profile parameter is optional.

        Profile framework will not fail if no value has been provided for an optional parameter.

        Parameters:
        optionalPromptMsg - Strings representing the paragraphs of message to ask the user to know whether a value should be provided for this parameter
        Returns:
        This profile parameter
      • optional

        public final P optional()
        Specifies that this profile parameter is optional.

        Profile framework will not fail if no value has been provided for an optional parameter.

        Returns:
        This profile parameter
      • descriptionIfNoValueSet

        public P descriptionIfNoValueSet​(String descriptionIfNoValueSetMsg)
        Sets the message to be displayed instead of the parameter description if no value is provided for this parameter.

        Message will be used by setup tool interactive mode in summaries, hence it should be concise.

        Parameters:
        descriptionIfNoValueSetMsg - Strings representing the parameter description message paragraphs
        Returns:
        This profile parameter
      • prompt

        public final P prompt​(String... promptForValueMsg)
        Sets this profile parameter prompt message.
        Parameters:
        promptForValueMsg - Strings representing the paragraphs of the message to be printed when resolving this profile parameter value
        Returns:
        This profile parameter
      • property

        public final P property​(String property)
        Sets this profile parameter property.
        Parameters:
        property - The property to be associated to this parameter
        Returns:
        This profile parameter
      • parseStringValue

        public abstract T parseStringValue​(String strValue)
                                    throws com.forgerock.opendj.cli.ArgumentException
        Parses provided string value into this parameter type and returns the typed value.
        Parameters:
        strValue - A string representing the parameter value to be parsed
        Returns:
        The typed value associated to provided string
        Throws:
        com.forgerock.opendj.cli.ArgumentException - If an error occurred while parsing provided string value
      • isAdvanced

        public final boolean isAdvanced()
        Returns whether this profile parameter is advanced.

        the setup interactive mode does not prompt for an advanced profile parameter value.

        Returns:
        true if this profile parameter is advanced, false otherwise
        See Also:
        advanced()
      • defaultValueCanBeDerivedAtSetup

        public boolean defaultValueCanBeDerivedAtSetup()
        Returns true if the default value of this parameter can be derived from the setup global options.
        Returns:
        true if the default value of this parameter can be derived from the setup global options, false otherwise
        See Also:
        defaultValueFromSetupTool(String)
      • getDescriptionMsg

        public final LocalizableMessage getDescriptionMsg()
        Returns this profile parameter description.

        If no message has been set for the description to be returned, a generic message is used.

        Returns:
        A LocalizableMessage representing this profile parameter description
      • getDescriptionIfNoValueSetMsg

        public final LocalizableMessage getDescriptionIfNoValueSetMsg()
        Returns this profile parameter description to be used when no value is provided.

        If no message has been set for this particular use case, the profile parameter description is returned.

        Returns:
        A LocalizableMessage representing this profile parameter description when no value is provided
      • getOptionalPromptMsg

        public final LocalizableMessage getOptionalPromptMsg()
        Returns prompt message to know whether a value should be provided for this parameter.
        Returns:
        A LocalizableMessage printed when asking if a value should be provided for this parameter
      • getAddAnotherValueMsg

        public LocalizableMessage getAddAnotherValueMsg()
        Returns prompt message to know whether another value should be added for this parameter.
        Returns:
        A LocalizableMessage printed when asking if a value should be added for this parameter
      • getVariableName

        public final String getVariableName()
        Returns this profile parameter variable name.
        Returns:
        A string representing this profile parameter variable name
      • equals

        public final boolean equals​(Object obj)
        Overrides:
        equals in class Object
      • hashCode

        public final int hashCode()
        Overrides:
        hashCode in class Object
      • getSyntax

        public final String getSyntax()
        Returns this parameter type.
        Returns:
        A string representing this parameter type
      • getSyntaxWithoutExpression

        public final String getSyntaxWithoutExpression()
        Returns this parameter type.

        The returned string does not mention that this parameter can contain configuration expression.

        Returns:
        A string representing this parameter type
      • accept

        public abstract <R,​P2,​E extends Exception> R accept​(Profile.ParameterVisitor<R,​P2,​E> visitor,
                                                                        P2 p)
                                                                 throws E extends Exception
        Type Parameters:
        R - The return type of the visitor's methods
        P2 - The type of the additional parameter to this visitor's methods. Use Void for visitors that do not need an additional parameter
        E - The type of the exception thrown by the visitor method if it fails, or NeverThrowsException if the visitor cannot fail
        Parameters:
        visitor - The parameter visitor
        p - Optional additional visitor parameter
        Returns:
        A result as specified by the visitor
        Throws:
        E - If the visitor failed
        E extends Exception