com.unboundid.ldap.sdk
Interface DecodeableControl

All Superinterfaces:
java.io.Serializable
All Known Implementing Classes:
ActiveDirectoryDirSyncControl, AuthorizationIdentityResponseControl, ContentSyncDoneControl, ContentSyncStateControl, DraftBeheraLDAPPasswordPolicy10ResponseControl, EntryChangeNotificationControl, PasswordExpiredControl, PasswordExpiringControl, PostReadResponseControl, PreReadResponseControl, ServerSideSortResponseControl, SimplePagedResultsControl, VirtualListViewResponseControl

@Extensible
@ThreadSafety(level=INTERFACE_THREADSAFE)
public interface DecodeableControl
extends java.io.Serializable

This interface defines a method that may be implemented by controls that may be included in the response from a directory server. The LDAP SDK will maintain a mapping between response control OIDs and the decodeable control classes that may be used to attempt to decode them. If a control cannot be decoded using this interface and an exception is thrown, then it will be treated as a generic control.


Method Summary
 Control decodeControl(java.lang.String oid, boolean isCritical, ASN1OctetString value)
          Creates a new instance of this decodeable control from the provided information.
 

Method Detail

decodeControl

Control decodeControl(java.lang.String oid,
                      boolean isCritical,
                      ASN1OctetString value)
                      throws LDAPException
Creates a new instance of this decodeable control from 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 be null 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.