@NotMutable @ThreadSafety(level=COMPLETELY_THREADSAFE) public final class PreReadResponseControl extends Control implements DecodeableControl
PreReadRequestControl and the operation was successful, then the
response for that operation should include the pre-read response control with
a read-only copy of the entry as it appeared immediately before processing
the request. If the operation was not successful, then the pre-read response
control will not be returned.| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
PRE_READ_RESPONSE_OID
The OID (1.3.6.1.1.13.1) for the pre-read response control.
|
| Constructor and Description |
|---|
PreReadResponseControl(ReadOnlyEntry entry)
Creates a new pre-read response control including the provided entry.
|
PreReadResponseControl(java.lang.String oid,
boolean isCritical,
ASN1OctetString value)
Creates a new pre-read response control with the provided information.
|
| Modifier and Type | Method and Description |
|---|---|
PreReadResponseControl |
decodeControl(java.lang.String oid,
boolean isCritical,
ASN1OctetString value)
Creates a new instance of this decodeable control from the provided
information.
|
static PreReadResponseControl |
decodeJSONControl(JSONObject controlObject,
boolean strict)
Attempts to decode the provided object as a JSON representation of a
pre-read response control.
|
static PreReadResponseControl |
get(LDAPResult result)
Extracts a pre-read response control from the provided result.
|
java.lang.String |
getControlName()
Retrieves the user-friendly name for this control, if available.
|
ReadOnlyEntry |
getEntry()
Retrieves a read-only copy of the entry returned by this post-read response
control.
|
JSONObject |
toJSONControl()
Retrieves a representation of this pre-read 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 PRE_READ_RESPONSE_OID
public PreReadResponseControl(@NotNull ReadOnlyEntry entry)
entry - The entry to include in this pre-read response control. It
must not be null.public PreReadResponseControl(@NotNull java.lang.String oid, boolean isCritical, @Nullable ASN1OctetString value) throws LDAPException
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 control cannot be decoded as a
pre-read response control.@NotNull public PreReadResponseControl decodeControl(@NotNull java.lang.String oid, boolean isCritical, @Nullable ASN1OctetString value) throws LDAPException
decodeControl in interface DecodeableControloid - 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.@Nullable public static PreReadResponseControl get(@NotNull LDAPResult result) throws LDAPException
result - The result from which to retrieve the pre-read response
control.null if the result did not contain a pre-read response
control.LDAPException - If a problem is encountered while attempting to
decode the pre-read response control contained in
the provided result.@NotNull public ReadOnlyEntry getEntry()
@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 pre-read response control, the
OID is "1.3.6.1.1.13.1".
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 pre-read
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 pre-read response
control. Exactly one of the value-base64 and
value-json fields must be present, and if the
value-json field is used, it must include a
"_dn" field whose value is the DN of the entry, and all other
fields will have a name that is the name of an LDAP attribute in the
entry and a value that is an array containing the string
representations of the values for that attribute.
toJSONControl in class Control@NotNull public static PreReadResponseControl 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 pre-read response control.