NameCallback (Java SE 26 & JDK 26)
Description: declaration: module: java.base, package: javax.security.auth.callback, class: NameCallback
Keywords: javax.security.auth.callback.NameCallback class

# Class NameCallback

java.lang.Object
javax.security.auth.callback.NameCallback

All Implemented Interfaces:
  `Serializable, Callback`

public class NameCallback extends Object implements Callback, Serializable

Underlying security services instantiate and pass a `NameCallback` to the `handle` method of a `CallbackHandler` to retrieve name information.

Since:
  1.4
See Also:
  - `CallbackHandler`
  - Serialized Form

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `NameCallback(String prompt)`
  Construct a `NameCallback` with a prompt.
  `NameCallback(String prompt, String defaultName)`
  Construct a `NameCallback` with a prompt and default name.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `getDefaultName()`
  Get the default name.
  `String`
  `getName()`
  Get the retrieved name.
  `String`
  `getPrompt()`
  Get the prompt.
  `void`
  `setName(String name)`
  Set the retrieved name.

  ### Methods declared in class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`
  Modifier and Type
  Method
  Description
  `protected Object`
  `clone()`
  Creates and returns a copy of this object.
  `boolean`
  `equals(Object obj)`
  Indicates whether some other object is "equal to" this one.
  `protected void`
  `finalize()`
  Deprecated, for removal: This API element is subject to removal in a future version.
  Finalization is deprecated and subject to removal in a future release.
  `final Class<?>`
  `getClass()`
  Returns the runtime class of this `Object`.
  `int`
  `hashCode()`
  Returns a hash code value for this object.
  `final void`
  `notify()`
  Wakes up a single thread that is waiting on this object's monitor.
  `final void`
  `notifyAll()`
  Wakes up all threads that are waiting on this object's monitor.
  `String`
  `toString()`
  Returns a string representation of the object.
  `final void`
  `wait()`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
  `final void`
  `wait(long timeoutMillis)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
  `final void`
  `wait(long timeoutMillis, int nanos)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

- ## Constructor Details

  - ### NameCallback

    public NameCallback(String prompt)
    Construct a `NameCallback` with a prompt.
    Parameters:
      `prompt` - the prompt used to request the name.
    Throws:
      `IllegalArgumentException` - if `prompt` is null or if `prompt` has a length of 0.

  - ### NameCallback

    public NameCallback(String prompt, String defaultName)
    Construct a `NameCallback` with a prompt and default name.
    Parameters:
      `prompt` - the prompt used to request the information.
      `defaultName` - the name to be used as the default name displayed with the prompt.
    Throws:
      `IllegalArgumentException` - if `prompt` is null, if `prompt` has a length of 0, if `defaultName` is null, or if `defaultName` has a length of 0.

- ## Method Details

  - ### getPrompt

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

  - ### getDefaultName

    public String getDefaultName()
    Get the default name.
    Returns:
      the default name, or null if this `NameCallback` was not instantiated with a `defaultName`.

  - ### setName

    public void setName(String name)
    Set the retrieved name.
    Parameters:
      `name` - the retrieved name (which may be null).
    See Also:
      - `getName()`

  - ### getName

    public String getName()
    Get the retrieved name.
    Returns:
      the retrieved name (which may be null)
    See Also:
      - `setName(String)`