@NotMutable @ThreadSafety(level=COMPLETELY_THREADSAFE) public final class StartInteractiveTransactionExtendedResult extends ExtendedResult
NOTE: The use of interactive transactions is discouraged because it can create conditions which are prone to deadlocks between operations that may result in the cancellation of one or both operations. It is strongly recommended that standard LDAP transactions (which may be started using aThis class implements a data structure for storing the information from an extended result for the start interactive transaction extended request. It is able to decode a generic extended result to extract the transaction ID and base DNs that it may contain, if the operation was successful.StartTransactionExtendedRequest
) or a multi-update extended operation be used instead. Although they cannot include arbitrary read operations, LDAP transactions and multi-update operations may be used in conjunction with theAssertionRequestControl
,PreReadRequestControl
, andPostReadRequestControl
to incorporate some read capability into a transaction, and in conjunction with theModificationType.INCREMENT
modification type to increment integer values without the need to know the precise value before or after the operation (although the pre-read and/or post-read controls may be used to determine that).
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.
StartInteractiveTransactionExtendedRequest
class for an example that
demonstrates the use of interactive transactions.NO_CONTROLS
Constructor and Description |
---|
StartInteractiveTransactionExtendedResult(ExtendedResult extendedResult)
Creates a new start interactive transaction extended result from the
provided extended result.
|
StartInteractiveTransactionExtendedResult(int messageID,
ResultCode resultCode,
java.lang.String diagnosticMessage,
java.lang.String matchedDN,
java.lang.String[] referralURLs,
ASN1OctetString transactionID,
java.util.List<java.lang.String> baseDNs,
Control[] responseControls)
Creates a new start interactive transaction extended result with the
provided information.
|
Modifier and Type | Method and Description |
---|---|
java.util.List<java.lang.String> |
getBaseDNs()
Retrieves the list of base DNs for this start interactive transaction
extended result, if available.
|
java.lang.String |
getExtendedResultName()
Retrieves the user-friendly name for the extended result, if available.
|
ASN1OctetString |
getTransactionID()
Retrieves the transaction ID for this start interactive transaction
extended result, if available.
|
void |
toString(java.lang.StringBuilder buffer)
Appends a string representation of this extended response to the provided
buffer.
|
getOID, getValue, hasValue, toString
getDiagnosticMessage, getMatchedDN, getMessageID, getOperationType, getReferralURLs, getResponseControl, getResponseControls, getResultCode, getResultString, hasResponseControl, hasResponseControl
public StartInteractiveTransactionExtendedResult(ExtendedResult extendedResult) throws LDAPException
extendedResult
- The extended result to be decoded as a start
interactive transaction extended result. It must
not be null
.LDAPException
- If a problem occurs while attempting to decode the
provided extended result as a start interactive
transaction extended result.public StartInteractiveTransactionExtendedResult(int messageID, ResultCode resultCode, java.lang.String diagnosticMessage, java.lang.String matchedDN, java.lang.String[] referralURLs, ASN1OctetString transactionID, java.util.List<java.lang.String> baseDNs, Control[] responseControls)
messageID
- The message ID for the LDAP message that is
associated with this LDAP result.resultCode
- The result code from the response.diagnosticMessage
- The diagnostic message from the response, if
available.matchedDN
- The matched DN from the response, if available.referralURLs
- The set of referral URLs from the response, if
available.transactionID
- The transaction ID for this response, if
available.baseDNs
- The list of base DNs for this response, if
available.responseControls
- The set of controls from the response, if
available.public ASN1OctetString getTransactionID()
null
if none was provided.public java.util.List<java.lang.String> getBaseDNs()
null
if no base DN list was provided.public java.lang.String getExtendedResultName()
null
will be returned.getExtendedResultName
in class ExtendedResult
null
if neither a user-friendly name nor a response OID
are available.public void toString(java.lang.StringBuilder buffer)
toString
in interface LDAPResponse
toString
in class ExtendedResult
buffer
- The buffer to which a string representation of this
extended response will be appended.