W3cubDocs

/OpenJDK 21

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:

Constructor Summary

Constructor Description
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 multiple selections from the list of choices are allowed.

Method Summary

Modifier and Type Method Description
boolean allowMultipleSelections()
Get the boolean determining whether multiple selections from the choices list are allowed.
String[] getChoices()
Get the list of choices.
int getDefaultChoice()
Get the defaultChoice.
String getPrompt()
Get the prompt.
int[] getSelectedIndexes()
Get the selected choices.
void setSelectedIndex(int selection)
Set the selected choice.
void setSelectedIndexes(int[] selections)
Set the selected choices.

Methods declared in class java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

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 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 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:

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

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

© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.base/javax/security/auth/callback/ChoiceCallback.html