@NotMutable @ThreadSafety(level=COMPLETELY_THREADSAFE) public final class AccessLogFieldRequestControl extends Control
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.
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.Modifier and Type | Field and Description |
---|---|
static java.lang.String |
ACCESS_LOG_FIELD_REQUEST_OID
The OID (1.3.6.1.4.1.30221.2.5.66) for the generate access token request
control.
|
Constructor and Description |
---|
AccessLogFieldRequestControl(boolean isCritical,
java.util.Collection<JSONField> fields)
Creates a new access log field request control with the specified
criticality.
|
AccessLogFieldRequestControl(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(java.util.Collection<JSONField> fields)
Creates a new access log field request control with the provided fields.
|
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.
|
Modifier and Type | Method and Description |
---|---|
static AccessLogFieldRequestControl |
decodeJSONControl(JSONObject controlObject,
boolean strict)
Attempts to decode the provided object as a JSON representation of an
access log field request control.
|
java.lang.String |
getControlName()
Retrieves the user-friendly name for this control, if available.
|
JSONObject |
getFieldsObject()
Retrieves a JSON object containing the set of fields to include in the
access log message.
|
JSONObject |
toJSONControl()
Retrieves a representation of this generate access token request 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 ACCESS_LOG_FIELD_REQUEST_OID
public AccessLogFieldRequestControl(@NotNull JSONField... fields) throws LDAPException
fields
- The set of fields to include in the access log message. It
must not be null
or empty, and the values may only
have Boolean, number, or string types. Array, null, and
object fields will not be allowed.LDAPException
- If the provided set of fields is not acceptable.public AccessLogFieldRequestControl(@NotNull java.util.Collection<JSONField> fields) throws LDAPException
fields
- The set of fields to include in the access log message. It
must not be null
or empty, and the values may only
have Boolean, number, or string types. Array, null, and
object fields will not be allowed.LDAPException
- If the provided set of fields is not acceptable.public AccessLogFieldRequestControl(boolean isCritical, @NotNull JSONField... fields) throws LDAPException
isCritical
- Indicates whether this control should be marked
critical.fields
- The set of fields to include in the access log message.
It must not be null
or empty, and the values
may only have Boolean, number, or string types. Array,
null, and object fields will not be allowed.LDAPException
- If the provided set of fields is not acceptable.public AccessLogFieldRequestControl(boolean isCritical, @NotNull java.util.Collection<JSONField> fields) throws LDAPException
isCritical
- Indicates whether this control should be marked
critical.fields
- The set of fields to include in the access log message.
It must not be null
or empty, and the values
may only have Boolean, number, or string types. Array,
null, and object fields will not be allowed.LDAPException
- If the provided set of fields is not acceptable.public AccessLogFieldRequestControl(boolean isCritical, @NotNull JSONObject fieldsObject) throws LDAPException
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 be
null
, 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.LDAPException
- If the provided object has an unacceptable set of
fields.public AccessLogFieldRequestControl(@NotNull Control control) throws LDAPException
control
- The generic control to be decoded as an access log field
request control.LDAPException
- If the provided control cannot be decoded as an
access log field request control.@NotNull public JSONObject getFieldsObject()
@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 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, 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 access log
field request control. Exactly one of the value-base64
and
value-json
fields 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 the value-base64
and value-json
fields
must be present, and if the value-json
field is used, then the
object must not be empty and it must contain only Boolean, number, and
string fields.
toJSONControl
in class Control
@NotNull public static AccessLogFieldRequestControl 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 access log field request control.