java.lang.Object
com.github.rvesse.airline.builder.AbstractBuilder<Prompt<TOption>>
com.github.rvesse.airline.prompts.builders.PromptBuilder<TOption>
Type Parameters:
TOption - Option

public class PromptBuilder<TOption> extends AbstractBuilder<Prompt<TOption>>
A prompt builder is used to define a prompt in a Fluent API style
  • Field Details

  • Constructor Details

    • PromptBuilder

      public PromptBuilder()
  • Method Details

    • withDefaultPromptProvider

      public PromptBuilder<TOption> withDefaultPromptProvider()
      Specifies that the default prompt provider should be used
      Returns:
      Builder
    • withPromptProvider

      public PromptBuilder<TOption> withPromptProvider(PromptProvider provider)
      Specifies that the given prompt provider should be used
      Parameters:
      provider - Prompt provider
      Returns:
      Builder
    • withTimeoutUnit

      public PromptBuilder<TOption> withTimeoutUnit(TimeUnit unit)
      Specifies the time unit used to apply timeouts to prompts
      Parameters:
      unit - Time Unit
      Returns:
      Builder
    • withTimeout

      public PromptBuilder<TOption> withTimeout(long timeout)
      Specifies the timeout
      Parameters:
      timeout - Timeout
      Returns:
      Builder
    • withTimeout

      public PromptBuilder<TOption> withTimeout(long timeout, TimeUnit unit)
      Specifies the timeout
      Parameters:
      timeout - Timeout
      unit - Time Unit
      Returns:
      Builder
    • withoutTimeout

      public PromptBuilder<TOption> withoutTimeout()
      Specifies that no timeout should be used
      Returns:
      Builder
    • withOptions

      public PromptBuilder<TOption> withOptions(TOption... options)
      Specifies one/more options for the prompt
      Parameters:
      options - Options
      Returns:
      Builder
    • withOption

      public PromptBuilder<TOption> withOption(TOption option)
      Specifies an option for the prompt
      Parameters:
      option - Option
      Returns:
      Builder
    • clearOptions

      public PromptBuilder<TOption> clearOptions()
      Clears all previously specified options
      Returns:
      Builder
    • withNumericOptionSelection

      public PromptBuilder<TOption> withNumericOptionSelection()
      Enables numeric option selection
      Returns:
      Builder
    • withoutNumericOptionSelection

      public PromptBuilder<TOption> withoutNumericOptionSelection()
      Disables numeric option selection
      Returns:
      Builder
    • withOptionMatcher

      public PromptBuilder<TOption> withOptionMatcher(PromptOptionMatcher<TOption> matcher)
      Specifies the option matcher to use
      Parameters:
      matcher - Option matcher
      Returns:
      Builder
    • withDefaultOptionMatcher

      public PromptBuilder<TOption> withDefaultOptionMatcher()
      Specifies that the default option matcher be used
      Returns:
      Builder
    • withPromptMessage

      public PromptBuilder<TOption> withPromptMessage(String message)
      Specifies the prompt message to display
      Parameters:
      message - Message
      Returns:
      Builder
    • withFormatter

      public PromptBuilder<TOption> withFormatter(PromptFormatter formatter)
      Specifies the prompt formatter to use
      Parameters:
      formatter - Formatter
      Returns:
      Builder
    • withFormatBuilder

      public PromptBuilder<TOption> withFormatBuilder(PromptFormatBuilder<TOption> formatBuilder)
      Specifies the prompt formatter builder to use
      Parameters:
      formatBuilder - Format Builder
      Returns:
      Builder
    • withFormatBuilder

      public PromptFormatBuilder<TOption> withFormatBuilder()
      Switches to a child builder for the prompt format
      Returns:
      Prompt Format Builder
    • withListFormatBuilder

      public ListFormatBuilder<TOption> withListFormatBuilder()
      Switches to a child builder for the list formatter
      Returns:
      List Format Builder
    • withListFormatter

      public PromptBuilder<TOption> withListFormatter()
      Specifies that a list formatter should be used
      Returns:
      Builder
    • withQuestionFormatter

      public PromptBuilder<TOption> withQuestionFormatter()
      Specifies that a question formatter should be used
      Returns:
      Builder
    • withDefaultFormatter

      public PromptBuilder<TOption> withDefaultFormatter()
      Specifies that the default formatter should be used, this is the list formatter
      Returns:
      Builder
    • withTypeConverter

      public PromptBuilder<TOption> withTypeConverter(TypeConverter converter)
      Specifies the type converter to use
      Parameters:
      converter - Type Converter
      Returns:
      Builder
    • withDefaultTypeConverter

      public PromptBuilder<TOption> withDefaultTypeConverter()
      Specifies that the default type converter be used
      Returns:
    • build

      public Prompt<TOption> build()
      Description copied from class: AbstractBuilder
      Builds the type
      Specified by:
      build in class AbstractBuilder<Prompt<TOption>>
      Returns:
      Type instance