Class ModifiablePasswordPolicyStateJSONBuilder
java.lang.Object
com.unboundid.ldap.sdk.unboundidds.ModifiablePasswordPolicyStateJSONBuilder
- All Implemented Interfaces:
Serializable
@Mutable
@ThreadSafety(level=NOT_THREADSAFE)
public final class ModifiablePasswordPolicyStateJSONBuilder
extends Object
implements Serializable
This class provides support for generating a JSON object that may be included
in a REPLACE modification to the ds-pwp-modifiable-state-json operational
attribute to manipulate elements in the user's password policy state.
NOTE: This class, and other classes within the
com.unboundid.ldap.sdk.unboundidds package structure, are only
supported for use against Ping Identity, UnboundID, and
Nokia/Alcatel-Lucent 8661 server products. These classes provide support
for proprietary functionality or for external specifications that are not
considered stable or mature enough to be guaranteed to work in an
interoperable way with other types of LDAP servers.
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionCreates a new builder instance with none of the fields set.Creates a new builder instance with values set from the provided modifiable password policy state object. -
Method Summary
Modifier and TypeMethodDescriptionbuild()Creates aModifiablePasswordPolicyStateJSONobject from the contents of this builder.Updates this builder so that any existing account activation time value will be cleared in the user entry.Updates this builder so that any existing account expiration time value will be cleared in the user entry.Updates this builder so that any existing password changed time value will be cleared in the user entry.Updates this builder so that any existing password expiration warned time value will be cleared in the user entry.Retrieves a timestamp that indicates the time the user's account became (or will become) active.Retrieves a timestamp that indicates the time the user's account will (or did) expire.Retrieves the value of a flag that indicates whether the user's account has been administratively disabled.Retrieves the value of a flag that indicates whether the user account is currently locked as a result of too many failed authentication attempts.Retrieves the value of a flag that indicates whether the user must change their password before they will be allowed to perform any other operations in the server.Retrieves a timestamp that indicates the time the user's password was last changed.Retrieves a timestamp that indicates the time the user was first warned about an upcoming password expiration.setAccountActivationTime(Long accountActivationTime) Updates this builder with a new account activation time.setAccountActivationTime(Date accountActivationTime) Updates this builder with a new account activation time.setAccountExpirationTime(Long accountExpirationTime) Updates this builder with a new account expiration time.setAccountExpirationTime(Date accountExpirationTime) Updates this builder with a new account expiration time.setAccountIsDisabled(Boolean accountIsDisabled) Updates this builder with a new value for the flag indicating whether the user's account should be considered disabled.setAccountIsFailureLocked(Boolean accountIsFailureLocked) Updates this builder with a new value for the flag indicating whether the user's account should be considered locked as a result of too many failed authentication attempts.setMustChangePassword(Boolean mustChangePassword) Updates this builder with a new value for the flag indicating whether the user must change their password before they will be allowed to perform other operations in the server.setPasswordChangedTime(Long passwordChangedTime) Updates this builder with a new password changed time.setPasswordChangedTime(Date passwordChangedTime) Updates this builder with a new password changed time.setPasswordExpirationWarnedTime(Long passwordExpirationWarnedTime) Updates this builder with a new password expiration warned time.setPasswordExpirationWarnedTime(Date passwordExpirationWarnedTime) Updates this builder with a new password expiration warned time.Retrieves a JSON object with an encoded representation of the modifiable password policy state created from this builder.toModifyRequest(String userDN) Creates a modify request that may be used to update the specified user with the appropriate password policy state changes from this builder.toString()Retrieves a string representation of the password policy state information.
-
Constructor Details
-
ModifiablePasswordPolicyStateJSONBuilder
Creates a new builder instance with none of the fields set. -
ModifiablePasswordPolicyStateJSONBuilder
Creates a new builder instance with values set from the provided modifiable password policy state object.- Parameters:
state- The modifiable password policy state object to use to set the initial values for all of the fields.
-
-
Method Details
-
getPasswordChangedTime
Retrieves a timestamp that indicates the time the user's password was last changed.- Returns:
- A non-negative value that represents the password changed time in
number of milliseconds since the epoch (the same format used by
System.currentTimeMillis), a negative value if the field was present with a JSON null value (indicating that the user doesn't have a password changed time), ornullif the field was not included in the JSON object.
-
setPasswordChangedTime
@NotNull public ModifiablePasswordPolicyStateJSONBuilder setPasswordChangedTime(@Nullable Long passwordChangedTime) Updates this builder with a new password changed time.- Parameters:
passwordChangedTime- The new password changed time value to use. It may be a positive value representing the number of milliseconds since the epoch (the same format used bySystem.currentTimeMillis) for the password changed time, a negative value to indicate that any existing password changed time value should be cleared, ornullif the value should not be set in this builder (and therefore omitted from any JSON object orModifiablePasswordPolicyStateJSONthat is created).- Returns:
- This builder object.
-
setPasswordChangedTime
@NotNull public ModifiablePasswordPolicyStateJSONBuilder setPasswordChangedTime(@Nullable Date passwordChangedTime) Updates this builder with a new password changed time.- Parameters:
passwordChangedTime- The new password changed time value to use. It may benullif any existing password changed time value should be cleared.- Returns:
- This builder object.
-
clearPasswordChangedTime
Updates this builder so that any existing password changed time value will be cleared in the user entry.- Returns:
- This builder object.
-
getAccountIsDisabled
Retrieves the value of a flag that indicates whether the user's account has been administratively disabled.- Returns:
Boolean.TRUEif the account has been administratively disabled,Boolean.FALSEif the account has not been administratively disabled, ornullif this flag was not included in the password policy state JSON object.
-
setAccountIsDisabled
@NotNull public ModifiablePasswordPolicyStateJSONBuilder setAccountIsDisabled(@Nullable Boolean accountIsDisabled) Updates this builder with a new value for the flag indicating whether the user's account should be considered disabled.- Parameters:
accountIsDisabled- The new account is disabled value to use. It may benullif the value should not be set in this builder (and therefore omitted from any JSON object orModifiablePasswordPolicyStateJSONthat is created).- Returns:
- This builder object.
-
getAccountActivationTime
Retrieves a timestamp that indicates the time the user's account became (or will become) active.- Returns:
- A non-negative value that represents the account activation time
in number of milliseconds since the epoch (the same format used by
System.currentTimeMillis), a negative value if the field was present with a JSON null value (indicating that the user doesn't have an account activation time), ornullif the field was not included in the JSON object.
-
setAccountActivationTime
@NotNull public ModifiablePasswordPolicyStateJSONBuilder setAccountActivationTime(@Nullable Long accountActivationTime) Updates this builder with a new account activation time.- Parameters:
accountActivationTime- The new account activation time value to use. It may be a positive value representing the number of milliseconds since the epoch (the same format used bySystem.currentTimeMillis) for the account activation time, a negative value to indicate that any existing account activation time value should be cleared, ornullif the value should not be set in this builder (and therefore omitted from any JSON object orModifiablePasswordPolicyStateJSONthat is created).- Returns:
- This builder object.
-
setAccountActivationTime
@NotNull public ModifiablePasswordPolicyStateJSONBuilder setAccountActivationTime(@Nullable Date accountActivationTime) Updates this builder with a new account activation time.- Parameters:
accountActivationTime- The new account activation time value to use. It may benullif any existing account activation time value should be cleared.- Returns:
- This builder object.
-
clearAccountActivationTime
Updates this builder so that any existing account activation time value will be cleared in the user entry.- Returns:
- This builder object.
-
getAccountExpirationTime
Retrieves a timestamp that indicates the time the user's account will (or did) expire.- Returns:
- A non-negative value that represents the account expiration time
in number of milliseconds since the epoch (the same format used by
System.currentTimeMillis), a negative value if the field was present with a JSON null value (indicating that the user doesn't have an account expiration time), ornullif the field was not included in the JSON object.
-
setAccountExpirationTime
@NotNull public ModifiablePasswordPolicyStateJSONBuilder setAccountExpirationTime(@Nullable Long accountExpirationTime) Updates this builder with a new account expiration time.- Parameters:
accountExpirationTime- The new account expiration time value to use. It may be a positive value representing the number of milliseconds since the epoch (the same format used bySystem.currentTimeMillis) for the account expiration time, a negative value to indicate that any existing account expiration time value should be cleared, ornullif the value should not be set in this builder (and therefore omitted from any JSON object orModifiablePasswordPolicyStateJSONthat is created).- Returns:
- This builder object.
-
setAccountExpirationTime
@NotNull public ModifiablePasswordPolicyStateJSONBuilder setAccountExpirationTime(@Nullable Date accountExpirationTime) Updates this builder with a new account expiration time.- Parameters:
accountExpirationTime- The new account expiration time value to use. It may benullif any existing account expiration time value should be cleared.- Returns:
- This builder object.
-
clearAccountExpirationTime
Updates this builder so that any existing account expiration time value will be cleared in the user entry.- Returns:
- This builder object.
-
getAccountIsFailureLocked
Retrieves the value of a flag that indicates whether the user account is currently locked as a result of too many failed authentication attempts.- Returns:
Boolean.TRUEif the user account is locked as a result of too many failed authentication attempts,Boolean.FALSEif the user account is not locked because of too many failed authentication attempts, ornullif this flag was not included in the password policy state JSON object.
-
setAccountIsFailureLocked
@NotNull public ModifiablePasswordPolicyStateJSONBuilder setAccountIsFailureLocked(@Nullable Boolean accountIsFailureLocked) Updates this builder with a new value for the flag indicating whether the user's account should be considered locked as a result of too many failed authentication attempts. Note that the server may reject an attempt to set the value toBoolean.TRUEif failure lockout is not enabled in the server.- Parameters:
accountIsFailureLocked- The new account is failure-locked value to use. It may benullif the value should not be set in this builder (and therefore omitted from any JSON object orModifiablePasswordPolicyStateJSONthat is created).- Returns:
- This builder object.
-
getPasswordExpirationWarnedTime
Retrieves a timestamp that indicates the time the user was first warned about an upcoming password expiration.- Returns:
- A non-negative value that represents the password expiration
warned time in number of milliseconds since the epoch (the same
format used by
System.currentTimeMillis), a negative value if the field was present with a JSON null value (indicating that the user doesn't have an password expiration warned time), ornullif the field was not included in the JSON object.
-
setPasswordExpirationWarnedTime
@NotNull public ModifiablePasswordPolicyStateJSONBuilder setPasswordExpirationWarnedTime(@Nullable Long passwordExpirationWarnedTime) Updates this builder with a new password expiration warned time.- Parameters:
passwordExpirationWarnedTime- The new password expiration warned time value to use. It may be a positive value representing the number of milliseconds since the epoch (the same format used bySystem.currentTimeMillis) for the password expiration warned time, a negative value to indicate that any existing password expiration warned time value should be cleared, ornullif the value should not be set in this builder (and therefore omitted from any JSON object orModifiablePasswordPolicyStateJSONthat is created).- Returns:
- This builder object.
-
setPasswordExpirationWarnedTime
@NotNull public ModifiablePasswordPolicyStateJSONBuilder setPasswordExpirationWarnedTime(@Nullable Date passwordExpirationWarnedTime) Updates this builder with a new password expiration warned time.- Parameters:
passwordExpirationWarnedTime- The new password expiration warned time value to use. It may benullif any existing password expiration warned time value should be cleared.- Returns:
- This builder object.
-
clearPasswordExpirationWarnedTime
Updates this builder so that any existing password expiration warned time value will be cleared in the user entry.- Returns:
- This builder object.
-
getMustChangePassword
Retrieves the value of a flag that indicates whether the user must change their password before they will be allowed to perform any other operations in the server.- Returns:
Boolean.TRUEif the user must change their password before they will be allowed to perform any other operations in the server,Boolean.FALSEif the user is not required to change their password, ornullif this flag was not included in the password policy state JSON object.
-
setMustChangePassword
@NotNull public ModifiablePasswordPolicyStateJSONBuilder setMustChangePassword(@Nullable Boolean mustChangePassword) Updates this builder with a new value for the flag indicating whether the user must change their password before they will be allowed to perform other operations in the server.- Parameters:
mustChangePassword- The new must change password value to use. It may benullif the value should not be set in this builder (and therefore omitted from any JSON object orModifiablePasswordPolicyStateJSONthat is created).- Returns:
- This builder object.
-
toJSONObject
Retrieves a JSON object with an encoded representation of the modifiable password policy state created from this builder.- Returns:
- A JSON object with an encoded representation of the modifiable password policy state created from this builder.
-
build
Creates aModifiablePasswordPolicyStateJSONobject from the contents of this builder.- Returns:
- The
ModifiablePasswordPolicyStateJSONobject created from the contents of this builder.
-
toModifyRequest
Creates a modify request that may be used to update the specified user with the appropriate password policy state changes from this builder.- Parameters:
userDN- The DN of the user whose password policy state should be updated.- Returns:
- A modify request that may be used to update the specified user with the appropriate password policy state changes from this builder.
-
toString
Retrieves a string representation of the password policy state information.
-