Class InteractiveTransactionSpecificationResponseControl
- java.lang.Object
-
- com.unboundid.ldap.sdk.Control
-
- com.unboundid.ldap.sdk.unboundidds.controls.InteractiveTransactionSpecificationResponseControl
-
- All Implemented Interfaces:
DecodeableControl
,java.io.Serializable
@NotMutable @ThreadSafety(level=COMPLETELY_THREADSAFE) public final class InteractiveTransactionSpecificationResponseControl extends Control implements DecodeableControl
This class defines an interactive transaction specification response control, which will be included in the server's response to an operation that included theInteractiveTransactionSpecificationRequestControl
.
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.
It provides information about the state of the transaction, which may include:transactionValid
-- Indicates whether the transaction is still valid in the server. This should be checked if the associated operation did not complete successfully.baseDNs
-- This may specify the set of base DNs below which the client is allowed to request operations as part of this transaction. It may be absent if there are no restrictions on which base DNs may be used, or if it has not changed since the last response within this transaction.
StartInteractiveTransactionExtendedRequest
class for an example of processing interactive transactions.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
INTERACTIVE_TRANSACTION_SPECIFICATION_RESPONSE_OID
The OID (1.3.6.1.4.1.30221.2.5.4) for the interactive transaction specification response control.
-
Constructor Summary
Constructors Constructor Description InteractiveTransactionSpecificationResponseControl(boolean transactionValid, java.util.List<java.lang.String> baseDNs)
Creates a new interactive transaction specification response control with the provided information.InteractiveTransactionSpecificationResponseControl(java.lang.String oid, boolean isCritical, ASN1OctetString value)
Creates a new interactive transaction specification response control with the provided information.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description InteractiveTransactionSpecificationResponseControl
decodeControl(java.lang.String oid, boolean isCritical, ASN1OctetString value)
Creates a new instance of this decodeable control from the provided information.static InteractiveTransactionSpecificationResponseControl
get(LDAPResult result)
Extracts an interactive transaction specification response control from the provided result.java.util.List<java.lang.String>
getBaseDNs()
Retrieves the set of base DNs below which operations which are part of the transaction may be performed.java.lang.String
getControlName()
Retrieves the user-friendly name for this control, if available.void
toString(java.lang.StringBuilder buffer)
Appends a string representation of this LDAP control to the provided buffer.boolean
transactionValid()
Indicates whether the associated transaction is still valid on the server.-
Methods inherited from class com.unboundid.ldap.sdk.Control
decode, decode, decodeControls, deregisterDecodeableControl, encode, encodeControls, equals, getOID, getValue, hashCode, hasValue, isCritical, readFrom, registerDecodeableControl, toString, writeTo
-
-
-
-
Field Detail
-
INTERACTIVE_TRANSACTION_SPECIFICATION_RESPONSE_OID
public static final java.lang.String INTERACTIVE_TRANSACTION_SPECIFICATION_RESPONSE_OID
The OID (1.3.6.1.4.1.30221.2.5.4) for the interactive transaction specification response control.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
InteractiveTransactionSpecificationResponseControl
public InteractiveTransactionSpecificationResponseControl(boolean transactionValid, java.util.List<java.lang.String> baseDNs)
Creates a new interactive transaction specification response control with the provided information. It will not be marked critical.- Parameters:
transactionValid
- Indicates whether the associated transaction is still valid.baseDNs
- The set of base DNs that may be targeted over the course of the transaction. It may benull
if there are no restrictions or the set of restrictions has not changed since the last response.
-
InteractiveTransactionSpecificationResponseControl
public InteractiveTransactionSpecificationResponseControl(java.lang.String oid, boolean isCritical, ASN1OctetString value) throws LDAPException
Creates a new interactive transaction specification response control with the provided information.- Parameters:
oid
- The OID for the control.isCritical
- Indicates whether the control should be marked critical.value
- The encoded value for the control. This may benull
if no value was provided.- Throws:
LDAPException
- If the provided control cannot be decoded as an interactive transaction specification response control.
-
-
Method Detail
-
decodeControl
public InteractiveTransactionSpecificationResponseControl decodeControl(java.lang.String oid, boolean isCritical, ASN1OctetString value) throws LDAPException
Creates a new instance of this decodeable control from the provided information.- Specified by:
decodeControl
in interfaceDecodeableControl
- Parameters:
oid
- The OID for the control.isCritical
- Indicates whether the control should be marked critical.value
- The encoded value for the control. This may benull
if no value was provided.- Returns:
- The decoded representation of this control.
- Throws:
LDAPException
- If the provided information cannot be decoded as a valid instance of this decodeable control.
-
get
public static InteractiveTransactionSpecificationResponseControl get(LDAPResult result) throws LDAPException
Extracts an interactive transaction specification response control from the provided result.- Parameters:
result
- The result from which to retrieve the interactive transaction specification response control.- Returns:
- The interactive transaction specification response control
contained in the provided result, or
null
if the result did not contain an interactive transaction specification response control. - Throws:
LDAPException
- If a problem is encountered while attempting to decode the interactive transaction specification response control contained in the provided result.
-
transactionValid
public boolean transactionValid()
Indicates whether the associated transaction is still valid on the server.- Returns:
true
if the associated transaction is still valid on the server and may be used for future operations, orfalse
if the transaction has been aborted and may no longer be used.
-
getBaseDNs
public java.util.List<java.lang.String> getBaseDNs()
Retrieves the set of base DNs below which operations which are part of the transaction may be performed.- Returns:
- The set of base DNs below which operations may be performed as
part of the transaction, or
null
if there are no restrictions or if the set of restrictions has not changed since the last response.
-
getControlName
public java.lang.String 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:
getControlName
in classControl
- Returns:
- The user-friendly name for this control, or the OID if no user-friendly name is available.
-
-