javax.naming.ldap
Interface Control

All Superinterfaces:
Serializable sample code for java.io.Serializable definition code for java.io.Serializable
All Known Implementing Classes:
BasicControl sample code for javax.naming.ldap.BasicControl definition code for javax.naming.ldap.BasicControl , ManageReferralControl sample code for javax.naming.ldap.ManageReferralControl definition code for javax.naming.ldap.ManageReferralControl , PagedResultsControl sample code for javax.naming.ldap.PagedResultsControl definition code for javax.naming.ldap.PagedResultsControl , PagedResultsResponseControl sample code for javax.naming.ldap.PagedResultsResponseControl definition code for javax.naming.ldap.PagedResultsResponseControl , SortControl sample code for javax.naming.ldap.SortControl definition code for javax.naming.ldap.SortControl , SortResponseControl sample code for javax.naming.ldap.SortResponseControl definition code for javax.naming.ldap.SortResponseControl

public interface Control
extends Serializable sample code for java.io.Serializable definition code for java.io.Serializable

This interface represents an LDAPv3 control as defined in RFC 2251.

The LDAPv3 protocol uses controls to send and receive additional data to affect the behavior of predefined operations. Controls can be sent along with any LDAP operation to the server. These are referred to as request controls. For example, a "sort" control can be sent with an LDAP search operation to request that the results be returned in a particular order. Solicited and unsolicited controls can also be returned with responses from the server. Such controls are referred to as response controls. For example, an LDAP server might define a special control to return change notifications.

This interface is used to represent both request and response controls.

Since:
1.3
See Also:
ControlFactory sample code for javax.naming.ldap.ControlFactory definition code for javax.naming.ldap.ControlFactory

Field Summary
static boolean CRITICAL sample code for javax.naming.ldap.Control.CRITICAL definition code for javax.naming.ldap.Control.CRITICAL
          Indicates a critical control.
static boolean NONCRITICAL sample code for javax.naming.ldap.Control.NONCRITICAL definition code for javax.naming.ldap.Control.NONCRITICAL
          Indicates a non-critical control.
 
Method Summary
 byte[] getEncodedValue sample code for javax.naming.ldap.Control.getEncodedValue() definition code for javax.naming.ldap.Control.getEncodedValue() ()
          Retrieves the ASN.1 BER encoded value of the LDAP control.
 String sample code for java.lang.String definition code for java.lang.String getID sample code for javax.naming.ldap.Control.getID() definition code for javax.naming.ldap.Control.getID() ()
          Retrieves the object identifier assigned for the LDAP control.
 boolean isCritical sample code for javax.naming.ldap.Control.isCritical() definition code for javax.naming.ldap.Control.isCritical() ()
          Determines the criticality of the LDAP control.
 

Field Detail

CRITICAL sample code for javax.naming.ldap.Control.CRITICAL

static final boolean CRITICAL
Indicates a critical control. The value of this constant is true.

See Also:
Constant Field Values

NONCRITICAL sample code for javax.naming.ldap.Control.NONCRITICAL

static final boolean NONCRITICAL
Indicates a non-critical control. The value of this constant is false.

See Also:
Constant Field Values
Method Detail

getID sample code for javax.naming.ldap.Control.getID() definition code for javax.naming.ldap.Control.getID()

String sample code for java.lang.String definition code for java.lang.String  getID()
Retrieves the object identifier assigned for the LDAP control.

Returns:
The non-null object identifier string.

isCritical sample code for javax.naming.ldap.Control.isCritical() definition code for javax.naming.ldap.Control.isCritical()

boolean isCritical()
Determines the criticality of the LDAP control. A critical control must not be ignored by the server. In other words, if the server receives a critical control that it does not support, regardless of whether the control makes sense for the operation, the operation will not be performed and an OperationNotSupportedException will be thrown.

Returns:
true if this control is critical; false otherwise.

getEncodedValue sample code for javax.naming.ldap.Control.getEncodedValue() definition code for javax.naming.ldap.Control.getEncodedValue()

byte[] getEncodedValue()
Retrieves the ASN.1 BER encoded value of the LDAP control. The result is the raw BER bytes including the tag and length of the control's value. It does not include the controls OID or criticality. Null is returned if the value is absent.

Returns:
A possibly null byte array representing the ASN.1 BER encoded value of the LDAP control.