org.apache.directory.shared.ldap.codec.extended
Class ExtendedRequestCodec

java.lang.Object
  extended by org.apache.directory.shared.asn1.AbstractAsn1Object
      extended by org.apache.directory.shared.ldap.codec.LdapMessageCodec
          extended by org.apache.directory.shared.ldap.codec.extended.ExtendedRequestCodec
All Implemented Interfaces:
Asn1Object

public class ExtendedRequestCodec
extends LdapMessageCodec

A ExtendedRequest Message. Its syntax is : ExtendedRequest ::= [APPLICATION 23] SEQUENCE { requestName [0] LDAPOID, requestValue [1] OCTET STRING OPTIONAL }

Version:
$Rev: 912399 $, $Date: 2010-02-21 21:52:31 +0100 (Sun, 21 Feb 2010) $,
Author:
Apache Directory Project

Field Summary
 
Fields inherited from class org.apache.directory.shared.ldap.codec.LdapMessageCodec
ldapMessageLength
 
Fields inherited from class org.apache.directory.shared.asn1.AbstractAsn1Object
parent
 
Constructor Summary
ExtendedRequestCodec()
          Creates a new ExtendedRequest object.
 
Method Summary
protected  int computeLengthProtocolOp()
          Compute the ExtendedRequest length ExtendedRequest : 0x77 L1 | +--> 0x80 L2 name [+--> 0x81 L3 value] L1 = Length(0x80) + Length(L2) + L2 [+ Length(0x81) + Length(L3) + L3] Length(ExtendedRequest) = Length(0x77) + Length(L1) + L1
protected  void encodeProtocolOp(java.nio.ByteBuffer buffer)
          Encode the ExtendedRequest message to a PDU.
 MessageTypeEnum getMessageType()
          Get the message type
 java.lang.String getMessageTypeName()
          Get the message type Name
 java.lang.String getRequestName()
          Get the extended request name
 byte[] getRequestValue()
          Get the extended request value
 void setRequestName(OID requestName)
          Set the extended request name
 void setRequestValue(byte[] requestValue)
          Set the extended request value
 java.lang.String toString()
          Get a String representation of an Extended Request
 
Methods inherited from class org.apache.directory.shared.ldap.codec.LdapMessageCodec
addControl, addControls, computeLength, encode, getCodecControl, getControls, getControls, getCurrentControl, getMessageId, initControls, setMessageId, toString
 
Methods inherited from class org.apache.directory.shared.asn1.AbstractAsn1Object
addLength, encode, getCurrentLength, getExpectedLength, getParent, getTlvId, setCurrentLength, setExpectedLength, setParent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ExtendedRequestCodec

public ExtendedRequestCodec()
Creates a new ExtendedRequest object.

Method Detail

getMessageType

public MessageTypeEnum getMessageType()
Get the message type

Specified by:
getMessageType in class LdapMessageCodec
Returns:
Returns the type.

getMessageTypeName

public java.lang.String getMessageTypeName()
Get the message type Name

Specified by:
getMessageTypeName in class LdapMessageCodec
Returns:
The message type name

getRequestName

public java.lang.String getRequestName()
Get the extended request name

Returns:
Returns the request name.

setRequestName

public void setRequestName(OID requestName)
Set the extended request name

Parameters:
requestName - The request name to set.

getRequestValue

public byte[] getRequestValue()
Get the extended request value

Returns:
Returns the request value.

setRequestValue

public void setRequestValue(byte[] requestValue)
Set the extended request value

Parameters:
requestValue - The request value to set.

computeLengthProtocolOp

protected int computeLengthProtocolOp()
Compute the ExtendedRequest length ExtendedRequest : 0x77 L1 | +--> 0x80 L2 name [+--> 0x81 L3 value] L1 = Length(0x80) + Length(L2) + L2 [+ Length(0x81) + Length(L3) + L3] Length(ExtendedRequest) = Length(0x77) + Length(L1) + L1

Specified by:
computeLengthProtocolOp in class LdapMessageCodec

encodeProtocolOp

protected void encodeProtocolOp(java.nio.ByteBuffer buffer)
                         throws EncoderException
Encode the ExtendedRequest message to a PDU. ExtendedRequest : 0x80 LL resquest name [0x81 LL request value]

Specified by:
encodeProtocolOp in class LdapMessageCodec
Parameters:
buffer - The buffer where to put the PDU
Throws:
EncoderException

toString

public java.lang.String toString()
Get a String representation of an Extended Request

Overrides:
toString in class java.lang.Object
Returns:
an Extended Request String


Copyright © 2003-2011 Apache Software Foundation. All Rights Reserved.