Package org.ldaptive.control
Class PasswordPolicyControl
- java.lang.Object
-
- org.ldaptive.control.AbstractControl
-
- org.ldaptive.control.PasswordPolicyControl
-
- All Implemented Interfaces:
Control,RequestControl,ResponseControl
public class PasswordPolicyControl extends AbstractControl implements RequestControl, ResponseControl
Request/response control for password policy. See http://tools.ietf.org/html/draft-behera-ldap-password-policy-11. Control is defined as:PasswordPolicyResponseValue ::= SEQUENCE { warning [0] CHOICE { timeBeforeExpiration [0] INTEGER (0 .. maxInt), graceAuthNsRemaining [1] INTEGER (0 .. maxInt) } OPTIONAL, error [1] ENUMERATED { passwordExpired (0), accountLocked (1), changeAfterReset (2), passwordModNotAllowed (3), mustSupplyOldPassword (4), insufficientPasswordQuality (5), passwordTooShort (6), passwordTooYoung (7), passwordInHistory (8), passwordTooLong (9) } OPTIONAL }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classPasswordPolicyControl.ErrorEnum for ppolicy errors.private static classPasswordPolicyControl.ErrorHandlerParse handler implementation for the error.private static classPasswordPolicyControl.GraceAuthnsRemainingHandlerParse handler implementation for the grace authns remaining.private static classPasswordPolicyControl.TimeBeforeExpirationHandlerParse handler implementation for the time before expiration.
-
Field Summary
Fields Modifier and Type Field Description private PasswordPolicyControl.ErrorerrorPpolicy error.private intgraceAuthNsRemainingPpolicy warning.private static intHASH_CODE_SEEDhash code seed.static StringOIDOID of this control.private inttimeBeforeExpirationPpolicy warning.-
Fields inherited from class org.ldaptive.control.AbstractControl
logger
-
-
Constructor Summary
Constructors Constructor Description PasswordPolicyControl()Default constructor.PasswordPolicyControl(boolean critical)Creates a new password policy control.PasswordPolicyControl(int time, int count)Creates a new password policy control.PasswordPolicyControl(int time, int count, boolean critical)Creates a new password policy control.PasswordPolicyControl(int time, int count, PasswordPolicyControl.Error err)Creates a new password policy control.PasswordPolicyControl(int time, int count, PasswordPolicyControl.Error err, boolean critical)Creates a new password policy control.PasswordPolicyControl(PasswordPolicyControl.Error err)Creates a new password policy control.PasswordPolicyControl(PasswordPolicyControl.Error err, boolean critical)Creates a new password policy control.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddecode(DERBuffer encoded)Initializes this response control with the supplied BER encoded data.byte[]encode()Provides the BER encoding of this control.booleanequals(Object o)PasswordPolicyControl.ErrorgetError()Returns the password policy error.intgetGraceAuthNsRemaining()Returns the number of grace authentications remaining.intgetTimeBeforeExpiration()Returns the time before expiration in seconds.inthashCode()Returns the hash code for this object.booleanhasValue()Returns whether the control has a value associated with it.voidsetError(PasswordPolicyControl.Error e)Sets the password policy error.voidsetGraceAuthNsRemaining(int count)Sets the number of grace authentications remaining.voidsetTimeBeforeExpiration(int time)Sets the time before expiration in seconds.StringtoString()-
Methods inherited from class org.ldaptive.control.AbstractControl
getCriticality, getOID
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.ldaptive.control.Control
getCriticality, getOID
-
-
-
-
Field Detail
-
OID
public static final String OID
OID of this control.- See Also:
- Constant Field Values
-
HASH_CODE_SEED
private static final int HASH_CODE_SEED
hash code seed.- See Also:
- Constant Field Values
-
timeBeforeExpiration
private int timeBeforeExpiration
Ppolicy warning.
-
graceAuthNsRemaining
private int graceAuthNsRemaining
Ppolicy warning.
-
error
private PasswordPolicyControl.Error error
Ppolicy error.
-
-
Constructor Detail
-
PasswordPolicyControl
public PasswordPolicyControl()
Default constructor.
-
PasswordPolicyControl
public PasswordPolicyControl(boolean critical)
Creates a new password policy control.- Parameters:
critical- whether this control is critical
-
PasswordPolicyControl
public PasswordPolicyControl(int time, int count)Creates a new password policy control.- Parameters:
time- time before expirationcount- grace authns remaining
-
PasswordPolicyControl
public PasswordPolicyControl(int time, int count, boolean critical)Creates a new password policy control.- Parameters:
time- time before expirationcount- grace authns remainingcritical- whether this control is critical
-
PasswordPolicyControl
public PasswordPolicyControl(PasswordPolicyControl.Error err)
Creates a new password policy control.- Parameters:
err- ppolicy error
-
PasswordPolicyControl
public PasswordPolicyControl(PasswordPolicyControl.Error err, boolean critical)
Creates a new password policy control.- Parameters:
err- ppolicy errorcritical- whether this control is critical
-
PasswordPolicyControl
public PasswordPolicyControl(int time, int count, PasswordPolicyControl.Error err)Creates a new password policy control.- Parameters:
time- time before expirationcount- grace authns remainingerr- ppolicy error
-
PasswordPolicyControl
public PasswordPolicyControl(int time, int count, PasswordPolicyControl.Error err, boolean critical)Creates a new password policy control.- Parameters:
time- time before expirationcount- grace authns remainingerr- ppolicy errorcritical- whether this control is critical
-
-
Method Detail
-
hasValue
public boolean hasValue()
Description copied from interface:RequestControlReturns whether the control has a value associated with it.- Specified by:
hasValuein interfaceRequestControl- Returns:
- whether the control has a value
-
getTimeBeforeExpiration
public int getTimeBeforeExpiration()
Returns the time before expiration in seconds.- Returns:
- time before expiration
-
setTimeBeforeExpiration
public void setTimeBeforeExpiration(int time)
Sets the time before expiration in seconds.- Parameters:
time- before expiration
-
getGraceAuthNsRemaining
public int getGraceAuthNsRemaining()
Returns the number of grace authentications remaining.- Returns:
- number of grace authentications remaining
-
setGraceAuthNsRemaining
public void setGraceAuthNsRemaining(int count)
Sets the number of grace authentications remaining.- Parameters:
count- number of grace authentications remaining
-
getError
public PasswordPolicyControl.Error getError()
Returns the password policy error.- Returns:
- password policy error
-
setError
public void setError(PasswordPolicyControl.Error e)
Sets the password policy error.- Parameters:
e- password policy error
-
equals
public boolean equals(Object o)
- Overrides:
equalsin classAbstractControl
-
hashCode
public int hashCode()
Description copied from class:AbstractControlReturns the hash code for this object.- Specified by:
hashCodein classAbstractControl- Returns:
- hash code
-
toString
public String toString()
- Overrides:
toStringin classAbstractControl
-
encode
public byte[] encode()
Description copied from interface:RequestControlProvides the BER encoding of this control.- Specified by:
encodein interfaceRequestControl- Returns:
- BER encoded request control
-
decode
public void decode(DERBuffer encoded)
Description copied from interface:ResponseControlInitializes this response control with the supplied BER encoded data.- Specified by:
decodein interfaceResponseControl- Parameters:
encoded- BER encoded response control
-
-