@NotMutable @ThreadSafety(level=COMPLETELY_THREADSAFE) public final class GetRecentLoginHistoryResponseControl extends Control implements DecodeableControl
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.
false
, and a value that is a JSON object with two top-level fields:
successful-attempts and failed-attempts. The value for each of these fields
will be an array of JSON objects with the following fields:
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
GET_RECENT_LOGIN_HISTORY_RESPONSE_OID
The OID (1.3.6.1.4.1.30221.2.5.62) for the get recent login history
response control.
|
Constructor and Description |
---|
GetRecentLoginHistoryResponseControl(RecentLoginHistory recentLoginHistory)
Creates a new instance of this control with the provided information.
|
GetRecentLoginHistoryResponseControl(java.lang.String oid,
boolean isCritical,
ASN1OctetString value)
Creates a new instance of this control that is decoded from the provided
generic control.
|
Modifier and Type | Method and Description |
---|---|
GetRecentLoginHistoryResponseControl |
decodeControl(java.lang.String oid,
boolean isCritical,
ASN1OctetString value)
Creates a new instance of this decodeable control from the provided
information.
|
static GetRecentLoginHistoryResponseControl |
decodeJSONControl(JSONObject controlObject,
boolean strict)
Attempts to decode the provided object as a JSON representation of a get
recent login history response control.
|
static GetRecentLoginHistoryResponseControl |
get(BindResult bindResult)
Extracts a get recent login history response control from the provided bind
result.
|
java.lang.String |
getControlName()
Retrieves the user-friendly name for this control, if available.
|
RecentLoginHistory |
getRecentLoginHistory()
Retrieves the recent login history contained in this response control.
|
JSONObject |
toJSONControl()
Retrieves a representation of this get recent login history response
control as a JSON object.
|
void |
toString(java.lang.StringBuilder buffer)
Appends a string representation of this LDAP control to the provided
buffer.
|
decode, decode, decodeControls, decodeJSONControl, deregisterDecodeableControl, encode, encodeControls, equals, getOID, getValue, hashCode, hasValue, isCritical, readFrom, registerDecodeableControl, registerDecodeableControl, toString, writeTo
@NotNull public static final java.lang.String GET_RECENT_LOGIN_HISTORY_RESPONSE_OID
public GetRecentLoginHistoryResponseControl(@NotNull RecentLoginHistory recentLoginHistory)
recentLoginHistory
- The recent login history to include in the
response control. It must not be null
.public GetRecentLoginHistoryResponseControl(@NotNull java.lang.String oid, boolean isCritical, @Nullable ASN1OctetString value) throws LDAPException
oid
- The OID for the control.isCritical
- Indicates whether this control should be marked
critical.value
- The encoded value for the control.LDAPException
- If a problem is encountered while attempting to
decode the provided control as a get recent login
history response control.@NotNull public GetRecentLoginHistoryResponseControl decodeControl(@NotNull java.lang.String oid, boolean isCritical, @Nullable ASN1OctetString value) throws LDAPException
decodeControl
in interface DecodeableControl
oid
- The OID for the control.isCritical
- Indicates whether the control should be marked
critical.value
- The encoded value for the control. This may be
null
if no value was provided.LDAPException
- If the provided information cannot be decoded as a
valid instance of this decodeable control.@NotNull public RecentLoginHistory getRecentLoginHistory()
@Nullable public static GetRecentLoginHistoryResponseControl get(@NotNull BindResult bindResult) throws LDAPException
bindResult
- The bind result from which to retrieve the get recent
login history response control.null
if the bind result did not
contain a get recent login history response control.LDAPException
- If a problem is encountered while attempting to
decode the get recent login history response
control contained in the provided bind result.@NotNull public java.lang.String getControlName()
getControlName
in class Control
@NotNull public JSONObject toJSONControl()
oid
-- A mandatory string field whose value is the object
identifier for this control. For the get recent login history response
control, the OID is "1.3.6.1.4.1.30221.2.5.62".
control-name
-- An optional string field whose value is a
human-readable name for this control. This field is only intended for
descriptive purposes, and when decoding a control, the oid
field should be used to identify the type of control.
criticality
-- A mandatory Boolean field used to indicate
whether this control is considered critical.
value-base64
-- An optional string field whose value is a
base64-encoded representation of the raw value for this get recent
login history response control. Exactly one of the
value-base64
and value-json
fields must be present.
value-json
-- An optional JSON object field whose value is a
user-friendly representation of the value for this get recent login
history response control. Exactly one of the value-base64
and
value-json
fields must be present, and if the
value-json
field is used, then it will use the following
fields:
successful-attempts
-- An optional array field whose values
are JSON objects with information about recent successful
authentication attempts by the user. These JSON objects will use
the following fields:
successful
-- A Boolean field that indicates whether
the attempt was successful. For JSON objects in the
successful-attempts
field, the value of this field will
always be true
.
timestamp
-- A string field whose value is a timestamp
(in the ISO 8601 format described in RFC 3339) for the
associated authentication attempt.
authentication-method
-- A string field whose value is
the name of the attempted authentication method.
client-ip-address
-- A string field whose value is
the IP address of the client that tried to authenticate.
additional-attempt-count
-- An optional integer field
whose value is the number of additional similar successful
attempts on the same date for the same user.
failed-attempts
-- An optional array field whose values
are JSON objects with information about recent failed
authentication attempts by the user. These JSON objects will use
the following fields:
successful
-- A Boolean field that indicates whether
the attempt was successful. For JSON objects in the
failed-attempts
field, the value of this field will
always be false
.
timestamp
-- A string field whose value is a timestamp
(in the ISO 8601 format described in RFC 3339) for the
associated authentication attempt.
authentication-method
-- A string field whose value is
the name of the attempted authentication method.
client-ip-address
-- A string field whose value is
the IP address of the client that tried to authenticate.
failure-reason
-- A string field whose value is
a general reason that the authentication attempt failed.
additional-attempt-count
-- An optional integer field
whose value is the number of additional similar successful
attempts on the same date for the same user.
toJSONControl
in class Control
@NotNull public static GetRecentLoginHistoryResponseControl decodeJSONControl(@NotNull JSONObject controlObject, boolean strict) throws LDAPException
controlObject
- The JSON object to be decoded. It must not be
null
.strict
- Indicates whether to use strict mode when decoding
the provided JSON object. If this is true
,
then this method will throw an exception if the
provided JSON object contains any unrecognized
fields. If this is false
, then unrecognized
fields will be ignored.LDAPException
- If the provided JSON object cannot be parsed as a
valid get recent login history response control.