com.unboundid.ldap.protocol
Class ExtendedRequestProtocolOp

java.lang.Object
  extended by com.unboundid.ldap.protocol.ExtendedRequestProtocolOp
All Implemented Interfaces:
ProtocolOp, java.io.Serializable

@InternalUseOnly
@NotMutable
@ThreadSafety(level=COMPLETELY_THREADSAFE)
public final class ExtendedRequestProtocolOp
extends java.lang.Object
implements ProtocolOp

This class provides an implementation of an LDAP extended request protocol op.

See Also:
Serialized Form

Field Summary
static byte TYPE_OID
          The BER type for the OID element.
static byte TYPE_VALUE
          The BER type for the value element.
 
Constructor Summary
ExtendedRequestProtocolOp(ExtendedRequest request)
          Creates a new extended request protocol op from the provided extended request object.
ExtendedRequestProtocolOp(java.lang.String oid, ASN1OctetString value)
          Creates a new extended request protocol op with the provided information.
 
Method Summary
static ExtendedRequestProtocolOp decodeProtocolOp(ASN1Element element)
          Decodes the provided ASN.1 element as an extended request protocol op.
 ASN1Element encodeProtocolOp()
          Encodes this protocol op to an ASN.1 element suitable for inclusion in an encoded LDAP message.
 java.lang.String getOID()
          Retrieves the OID for this extended request.
 byte getProtocolOpType()
          Retrieves the BER type for this protocol op.
 ASN1OctetString getValue()
          Retrieves the value for this extended request, if any.
 ExtendedRequest toExtendedRequest(Control... controls)
          Creates an extended request from this protocol op.
 java.lang.String toString()
          Retrieves a string representation of this protocol op.
 void toString(java.lang.StringBuilder buffer)
          Appends a string representation of this LDAP protocol op to the provided buffer.
 void writeTo(ASN1Buffer buffer)
          Writes an ASN.1-encoded representation of this LDAP protocol op to the provided ASN.1 buffer.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

TYPE_OID

public static final byte TYPE_OID
The BER type for the OID element.

See Also:
Constant Field Values

TYPE_VALUE

public static final byte TYPE_VALUE
The BER type for the value element.

See Also:
Constant Field Values
Constructor Detail

ExtendedRequestProtocolOp

public ExtendedRequestProtocolOp(java.lang.String oid,
                                 ASN1OctetString value)
Creates a new extended request protocol op with the provided information.

Parameters:
oid - The OID for this extended request.
value - The value for this extended request, or null if there should not be a value.

ExtendedRequestProtocolOp

public ExtendedRequestProtocolOp(ExtendedRequest request)
Creates a new extended request protocol op from the provided extended request object.

Parameters:
request - The extended request object to use to create this protocol op.
Method Detail

getOID

public java.lang.String getOID()
Retrieves the OID for this extended request.

Returns:
The OID for this extended request.

getValue

public ASN1OctetString getValue()
Retrieves the value for this extended request, if any.

Returns:
The value for this extended request, or null if there is no value.

getProtocolOpType

public byte getProtocolOpType()
Retrieves the BER type for this protocol op.

Specified by:
getProtocolOpType in interface ProtocolOp
Returns:
The BER type for this protocol op.

encodeProtocolOp

public ASN1Element encodeProtocolOp()
Encodes this protocol op to an ASN.1 element suitable for inclusion in an encoded LDAP message.

Specified by:
encodeProtocolOp in interface ProtocolOp
Returns:
The ASN.1 element containing the encoded protocol op.

decodeProtocolOp

public static ExtendedRequestProtocolOp decodeProtocolOp(ASN1Element element)
                                                  throws LDAPException
Decodes the provided ASN.1 element as an extended request protocol op.

Parameters:
element - The ASN.1 element to be decoded.
Returns:
The decoded extended request protocol op.
Throws:
LDAPException - If the provided ASN.1 element cannot be decoded as an extended request protocol op.

writeTo

public void writeTo(ASN1Buffer buffer)
Writes an ASN.1-encoded representation of this LDAP protocol op to the provided ASN.1 buffer. This method is intended for internal use only and should not be used by third-party code.

Specified by:
writeTo in interface ProtocolOp
Parameters:
buffer - The ASN.1 buffer to which the encoded representation should be written.

toExtendedRequest

public ExtendedRequest toExtendedRequest(Control... controls)
Creates an extended request from this protocol op.

Parameters:
controls - The set of controls to include in the extended request. It may be empty or null if no controls should be included.
Returns:
The extended request that was created.

toString

public java.lang.String toString()
Retrieves a string representation of this protocol op.

Overrides:
toString in class java.lang.Object
Returns:
A string representation of this protocol op.

toString

public void toString(java.lang.StringBuilder buffer)
Appends a string representation of this LDAP protocol op to the provided buffer.

Specified by:
toString in interface ProtocolOp
Parameters:
buffer - The buffer to which the string representation should be appended.