Module java.base

Class ChoiceCallback

java.lang.Object
javax.security.auth.callback.ChoiceCallback
All Implemented Interfaces:
Serializable, Callback
Direct Known Subclasses:
RealmChoiceCallback

public class ChoiceCallback
extends Object
implements Callback, Serializable

Underlying security services instantiate and pass a ChoiceCallback to the handle method of a CallbackHandler to display a list of choices and to retrieve the selected choice(s).

Since:
1.4
See Also:
CallbackHandler, Serialized Form
  • Constructor Details

    • ChoiceCallback

      public ChoiceCallback(String prompt, String[] choices, int defaultChoice, boolean multipleSelectionsAllowed)
      Construct a ChoiceCallback with a prompt, a list of choices, a default choice, and a boolean specifying whether or not multiple selections from the list of choices are allowed.
      Parameters:
      prompt - the prompt used to describe the list of choices.
      choices - the list of choices. The array is cloned to protect against subsequent modification.
      defaultChoice - the choice to be used as the default choice when the list of choices are displayed. This value is represented as an index into the choices array.
      multipleSelectionsAllowed - boolean specifying whether or not multiple selections can be made from the list of choices.
      Throws:
      IllegalArgumentException - if prompt is null, if prompt has a length of 0, if choices is null, if choices has a length of 0, if any element from choices is null, if any element from choices has a length of 0 or if defaultChoice does not fall within the array boundaries of choices.
  • Method Details

    • getPrompt

      public String getPrompt()
      Get the prompt.
      Returns:
      the prompt.
    • getChoices

      public String[] getChoices()
      Get the list of choices.
      Returns:
      a copy of the list of choices.
    • getDefaultChoice

      public int getDefaultChoice()
      Get the defaultChoice.
      Returns:
      the defaultChoice, represented as an index into the choices list.
    • allowMultipleSelections

      public boolean allowMultipleSelections()
      Get the boolean determining whether multiple selections from the choices list are allowed.
      Returns:
      whether multiple selections are allowed.
    • setSelectedIndex

      public void setSelectedIndex(int selection)
      Set the selected choice.
      Parameters:
      selection - the selection represented as an index into the choices list.
      See Also:
      getSelectedIndexes()
    • setSelectedIndexes

      public void setSelectedIndexes(int[] selections)
      Set the selected choices.
      Parameters:
      selections - the selections represented as indexes into the choices list. The array is cloned to protect against subsequent modification.
      Throws:
      UnsupportedOperationException - if multiple selections are not allowed, as determined by allowMultipleSelections.
      See Also:
      getSelectedIndexes()
    • getSelectedIndexes

      public int[] getSelectedIndexes()
      Get the selected choices.
      Returns:
      a copy of the selected choices, represented as indexes into the choices list.
      See Also:
      setSelectedIndexes(int[])