Class NumericPrompt

  • All Implemented Interfaces:
    Cloneable, Prompt

    public abstract class NumericPrompt
    extends ValidatingPrompt
    NumericPrompt is the base class for any prompt that requires a Number response from the user.
    • Constructor Detail

      • NumericPrompt

        public NumericPrompt()
    • Method Detail

      • isInputValid

        protected boolean isInputValid​(@NotNull
                                       @NotNull ConversationContext context,
                                       @NotNull
                                       @NotNull String input)
        Description copied from class: ValidatingPrompt
        Override this method to check the validity of the player's input.
        Specified by:
        isInputValid in class ValidatingPrompt
        Parameters:
        context - Context information about the conversation.
        input - The player's raw console input.
        Returns:
        True or false depending on the validity of the input.
      • isNumberValid

        protected boolean isNumberValid​(@NotNull
                                        @NotNull ConversationContext context,
                                        @NotNull
                                        @NotNull Number input)
        Override this method to do further validation on the numeric player input after the input has been determined to actually be a number.
        Parameters:
        context - Context information about the conversation.
        input - The number the player provided.
        Returns:
        The validity of the player's input.
      • acceptValidatedInput

        @Nullable
        protected @Nullable Prompt acceptValidatedInput​(@NotNull
                                                        @NotNull ConversationContext context,
                                                        @NotNull
                                                        @NotNull String input)
        Description copied from class: ValidatingPrompt
        Override this method to accept and processes the validated input from the user. Using the input, the next Prompt in the prompt graph should be returned.
        Specified by:
        acceptValidatedInput in class ValidatingPrompt
        Parameters:
        context - Context information about the conversation.
        input - The validated input text from the user.
        Returns:
        The next Prompt in the prompt graph.
      • acceptValidatedInput

        @Nullable
        protected abstract @Nullable Prompt acceptValidatedInput​(@NotNull
                                                                 @NotNull ConversationContext context,
                                                                 @NotNull
                                                                 @NotNull Number input)
        Override this method to perform some action with the user's integer response.
        Parameters:
        context - Context information about the conversation.
        input - The user's response as a Number.
        Returns:
        The next Prompt in the prompt graph.
      • getFailedValidationText

        @Nullable
        protected @Nullable String getFailedValidationText​(@NotNull
                                                           @NotNull ConversationContext context,
                                                           @NotNull
                                                           @NotNull String invalidInput)
        Description copied from class: ValidatingPrompt
        Optionally override this method to display an additional message if the user enters an invalid input.
        Overrides:
        getFailedValidationText in class ValidatingPrompt
        Parameters:
        context - Context information about the conversation.
        invalidInput - The invalid input provided by the user.
        Returns:
        A message explaining how to correct the input.
      • getInputNotNumericText

        @Nullable
        protected @Nullable String getInputNotNumericText​(@NotNull
                                                          @NotNull ConversationContext context,
                                                          @NotNull
                                                          @NotNull String invalidInput)
        Optionally override this method to display an additional message if the user enters an invalid number.
        Parameters:
        context - Context information about the conversation.
        invalidInput - The invalid input provided by the user.
        Returns:
        A message explaining how to correct the input.
      • getFailedValidationText

        @Nullable
        protected @Nullable String getFailedValidationText​(@NotNull
                                                           @NotNull ConversationContext context,
                                                           @NotNull
                                                           @NotNull Number invalidInput)
        Optionally override this method to display an additional message if the user enters an invalid numeric input.
        Parameters:
        context - Context information about the conversation.
        invalidInput - The invalid input provided by the user.
        Returns:
        A message explaining how to correct the input.