Java™ Platform
Standard Ed. 6

javax.security.auth.callback
Class ChoiceCallback

java.lang.Object
  extended by 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).

See Also:
CallbackHandler, Serialized Form

Constructor Summary
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.
 
Method Summary
 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 inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

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.

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 Detail

getPrompt

public String getPrompt()
Get the prompt.

Returns:
the prompt.

getChoices

public String[] getChoices()
Get the list of choices.

Returns:
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.
Throws:
UnsupportedOperationException - if multiple selections are not allowed, as determined by allowMultipleSelections.
See Also:
getSelectedIndexes()

getSelectedIndexes

public int[] getSelectedIndexes()
Get the selected choices.

Returns:
the selected choices, represented as indexes into the choices list.
See Also:
setSelectedIndexes(int[])

Java™ Platform
Standard Ed. 6

Submit a bug or feature
For further API reference and developer documentation, see Java SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.