Package org.apache.catalina.users

# Class AbstractUser

java.lang.Object
org.apache.catalina.users.AbstractUser

All Implemented Interfaces:
  `Principal`, `User`

Direct Known Subclasses:
  `GenericUser`

public abstract class AbstractUser extends Object implements User

Convenience base class for `User` implementations.

Since:
  4.1
Author:
  Craig R. McClanahan

## Field Summary

Fields
Modifier and Type
Field
Description
`protected String`
`fullName`
The full name of this user.
`protected String`
`password`
The logon password of this user.
`protected String`
`username`
The logon username of this user.

## Constructor Summary

Constructors
Constructor
Description
`AbstractUser()`

## Method Summary

Modifier and Type
Method
Description
`String`
`getFullName()`
`String`
`getName()`
Make the principal name the same as the group name.
`String`
`getPassword()`
`String`
`getUsername()`
`void`
`setFullName(String fullName)`
Set the full name of this user.
`void`
`setPassword(String password)`
Set the logon password of this user, optionally prefixed with the identifier of an encoding scheme surrounded by curly braces, such as `{md5}xxxxx`.
`void`
`setUsername(String username)`
Set the logon username of this user, which must be unique within the scope of a `UserDatabase`.

### Methods inherited from class java.lang.Object

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

### Methods inherited from interface java.security.Principal

`equals, hashCode, implies, toString`

### Methods inherited from interface org.apache.catalina.User

`addGroup, addRole, getGroups, getRoles, getUserDatabase, isInGroup, isInRole, removeGroup, removeGroups, removeRole, removeRoles`

## Field Details

### fullName

protected String fullName
The full name of this user.

### password

protected String password
The logon password of this user.

### username

protected String username
The logon username of this user.

## Constructor Details

### AbstractUser

public AbstractUser()

## Method Details

### getFullName

public String getFullName()

Specified by:
  `getFullName` in interface `User`
Returns:
  the full name of this user.

### setFullName

public void setFullName(String fullName)
Description copied from interface: `User`
Set the full name of this user.

Specified by:
  `setFullName` in interface `User`
Parameters:
  `fullName` - The new full name

### getPassword

public String getPassword()

Specified by:
  `getPassword` in interface `User`
Returns:
  the logon password of this user, optionally prefixed with the identifier of an encoding scheme surrounded by curly braces, such as `{md5}xxxxx`.

### setPassword

public void setPassword(String password)
Description copied from interface: `User`
Set the logon password of this user, optionally prefixed with the identifier of an encoding scheme surrounded by curly braces, such as `{md5}xxxxx`.

Specified by:
  `setPassword` in interface `User`
Parameters:
  `password` - The new logon password

### getUsername

public String getUsername()

Specified by:
  `getUsername` in interface `User`
Returns:
  the logon username of this user, which must be unique within the scope of a `UserDatabase`.

### setUsername

public void setUsername(String username)
Description copied from interface: `User`
Set the logon username of this user, which must be unique within the scope of a `UserDatabase`.

Specified by:
  `setUsername` in interface `User`
Parameters:
  `username` - The new logon username

### getName

public String getName()
Make the principal name the same as the group name.

Specified by:
  `getName` in interface `Principal`