Class AccessLogFieldRequestControl
java.lang.Object
com.unboundid.ldap.sdk.Control
com.unboundid.ldap.sdk.unboundidds.controls.AccessLogFieldRequestControl
- All Implemented Interfaces:
Serializable
@NotMutable
@ThreadSafety(level=COMPLETELY_THREADSAFE)
public final class AccessLogFieldRequestControl
extends Control
This class provides a request control that can be included in any type of
request to indicate that the server should include one or more fields,
specified as name-value pairs, that should appear in the Ping Identity
Directory Server's access log message for the operation.
The OID for this control is 1.3.6.1.4.1.30221.2.5.66, the criticality may be either
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.
The OID for this control is 1.3.6.1.4.1.30221.2.5.66, the criticality may be either
true or false. Its value should be the string
representation of a JSON object whose fields will represent the fields to
include in the access log message for the operation. The JSON object may
only include Boolean, number, and string fields; array, null, and object
fields will not be permitted.- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringThe OID (1.3.6.1.4.1.30221.2.5.66) for the generate access token request control. -
Constructor Summary
ConstructorsConstructorDescriptionAccessLogFieldRequestControl(boolean isCritical, JSONField... fields) Creates a new access log field request control with the specified criticality.AccessLogFieldRequestControl(boolean isCritical, JSONObject fieldsObject) Creates a new access log field request control with the specified criticality.AccessLogFieldRequestControl(boolean isCritical, Collection<JSONField> fields) Creates a new access log field request control with the specified criticality.AccessLogFieldRequestControl(Control control) Creates a new access log field request control which is decoded from the provided generic control.AccessLogFieldRequestControl(JSONField... fields) Creates a new access log field request control with the provided fields.Creates a new access log field request control with the provided fields. -
Method Summary
Modifier and TypeMethodDescriptionstatic AccessLogFieldRequestControldecodeJSONControl(JSONObject controlObject, boolean strict) Attempts to decode the provided object as a JSON representation of an access log field request control.Retrieves the user-friendly name for this control, if available.Retrieves a JSON object containing the set of fields to include in the access log message.Retrieves a representation of this generate access token request control as a JSON object.voidtoString(StringBuilder buffer) Appends a string representation of this LDAP control to the provided buffer.Methods inherited from class com.unboundid.ldap.sdk.Control
decode, decode, decodeControls, decodeJSONControl, deregisterDecodeableControl, encode, encodeControls, equals, getOID, getValue, hashCode, hasValue, isCritical, readFrom, registerDecodeableControl, registerDecodeableControl, toString, writeTo
-
Field Details
-
ACCESS_LOG_FIELD_REQUEST_OID
The OID (1.3.6.1.4.1.30221.2.5.66) for the generate access token request control.- See Also:
-
-
Constructor Details
-
AccessLogFieldRequestControl
Creates a new access log field request control with the provided fields. It will not be marked critical.- Parameters:
fields- The set of fields to include in the access log message. It must not benullor empty, and the values may only have Boolean, number, or string types. Array, null, and object fields will not be allowed.- Throws:
LDAPException- If the provided set of fields is not acceptable.
-
AccessLogFieldRequestControl
Creates a new access log field request control with the provided fields. It will not be marked critical.- Parameters:
fields- The set of fields to include in the access log message. It must not benullor empty, and the values may only have Boolean, number, or string types. Array, null, and object fields will not be allowed.- Throws:
LDAPException- If the provided set of fields is not acceptable.
-
AccessLogFieldRequestControl
public AccessLogFieldRequestControl(boolean isCritical, @NotNull JSONField... fields) throws LDAPException Creates a new access log field request control with the specified criticality.- Parameters:
isCritical- Indicates whether this control should be marked critical.fields- The set of fields to include in the access log message. It must not benullor empty, and the values may only have Boolean, number, or string types. Array, null, and object fields will not be allowed.- Throws:
LDAPException- If the provided set of fields is not acceptable.
-
AccessLogFieldRequestControl
public AccessLogFieldRequestControl(boolean isCritical, @NotNull Collection<JSONField> fields) throws LDAPException Creates a new access log field request control with the specified criticality.- Parameters:
isCritical- Indicates whether this control should be marked critical.fields- The set of fields to include in the access log message. It must not benullor empty, and the values may only have Boolean, number, or string types. Array, null, and object fields will not be allowed.- Throws:
LDAPException- If the provided set of fields is not acceptable.
-
AccessLogFieldRequestControl
public AccessLogFieldRequestControl(boolean isCritical, @NotNull JSONObject fieldsObject) throws LDAPException Creates a new access log field request control with the specified criticality.- Parameters:
isCritical- Indicates whether this control should be marked critical.fieldsObject- A JSON object containing the set of fields to include in the access log message. It must not benull, it must have at least one field, and it may only have Boolean, number, or string fields. Array, null, and object fields will not be allowed.- Throws:
LDAPException- If the provided object has an unacceptable set of fields.
-
AccessLogFieldRequestControl
Creates a new access log field request control which is decoded from the provided generic control.- Parameters:
control- The generic control to be decoded as an access log field request control.- Throws:
LDAPException- If the provided control cannot be decoded as an access log field request control.
-
-
Method Details
-
getFieldsObject
Retrieves a JSON object containing the set of fields to include in the access log message.- Returns:
- A JSON object containing the set of fields to include in the access log message.
-
getControlName
Retrieves the user-friendly name for this control, if available. If no user-friendly name has been defined, then the OID will be returned.- Overrides:
getControlNamein classControl- Returns:
- The user-friendly name for this control, or the OID if no user-friendly name is available.
-
toJSONControl
Retrieves a representation of this generate access token request control as a JSON object. The JSON object uses the following fields:-
oid-- A mandatory string field whose value is the object identifier for this control. For the access log field request control, the OID is "1.3.6.1.4.1.30221.2.5.66". -
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, theoidfield 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 access log field request control. Exactly one of thevalue-base64andvalue-jsonfields must be present. -
value-json-- An optional JSON object field in which the object contains the set of fields to include in the access log message. Exactly one of thevalue-base64andvalue-jsonfields must be present, and if thevalue-jsonfield is used, then the object must not be empty and it must contain only Boolean, number, and string fields.
- Overrides:
toJSONControlin classControl- Returns:
- A JSON object that contains a representation of this control.
-
-
decodeJSONControl
@NotNull public static AccessLogFieldRequestControl decodeJSONControl(@NotNull JSONObject controlObject, boolean strict) throws LDAPException Attempts to decode the provided object as a JSON representation of an access log field request control.- Parameters:
controlObject- The JSON object to be decoded. It must not benull.strict- Indicates whether to use strict mode when decoding the provided JSON object. If this istrue, then this method will throw an exception if the provided JSON object contains any unrecognized fields. If this isfalse, then unrecognized fields will be ignored.- Returns:
- The access log field request control that was decoded from the provided JSON object.
- Throws:
LDAPException- If the provided JSON object cannot be parsed as a valid access log field request control.
-
toString
Appends a string representation of this LDAP control to the provided buffer.
-