com.slamd.tools.ldapdecoder.protocol
Class AddRequest

java.lang.Object
  extended by com.slamd.tools.ldapdecoder.protocol.ProtocolOp
      extended by com.slamd.tools.ldapdecoder.protocol.AddRequest

public class AddRequest
extends ProtocolOp

This class defines an LDAP add request, which is used to add a new entry to a directory server.

Author:
Neil A. Wilson

Field Summary
 
Fields inherited from class com.slamd.tools.ldapdecoder.protocol.ProtocolOp
ABANDON_REQUEST_TYPE, ADD_REQUEST_TYPE, ADD_RESPONSE_TYPE, BIND_REQUEST_TYPE, BIND_RESPONSE_TYPE, COMPARE_REQUEST_TYPE, COMPARE_RESPONSE_TYPE, DELETE_REQUEST_TYPE, DELETE_RESPONSE_TYPE, EXTENDED_REQUEST_TYPE, EXTENDED_RESPONSE_TYPE, INTERMEDIATE_RESPONSE_TYPE, MODIFY_DN_REQUEST_TYPE, MODIFY_DN_RESPONSE_TYPE, MODIFY_REQUEST_TYPE, MODIFY_RESPONSE_TYPE, REFERRAL_TYPE, SEARCH_REQUEST_TYPE, SEARCH_RESULT_DONE_TYPE, SEARCH_RESULT_ENTRY_TYPE, SEARCH_RESULT_REFERENCE_TYPE, UNBIND_REQUEST_TYPE
 
Constructor Summary
AddRequest(java.lang.String dn, LDAPAttribute[] attributes)
          Creates a new add request with the provided information.
 
Method Summary
static AddRequest decodeAddRequest(ASN1Element element)
          Decodes the provided ASN.1 element as an add request protocol op.
 ASN1Element encode()
          Encodes this protocol op to an ASN.1 element.
 LDAPAttribute[] getAttributes()
          Retrieves the set of attributes for the entry to add.
 java.lang.String getDN()
          Retrieves the DN of the entry to add.
 java.lang.String getProtocolOpType()
          Retrieves a user-friendly name for this protocol op.
 void toSLAMDScript(java.io.PrintStream scriptWriter)
          Constructs a string representation of this LDAP message in a form that can be written to a SLAMD script.
 java.lang.String toString(int indent)
          Retrieves a string representation of this protocol op with the specified indent.
 
Methods inherited from class com.slamd.tools.ldapdecoder.protocol.ProtocolOp
decode, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

AddRequest

public AddRequest(java.lang.String dn,
                  LDAPAttribute[] attributes)
Creates a new add request with the provided information.

Parameters:
dn - The DN of the entry to add.
attributes - The set of attributes for the entry to add.
Method Detail

getDN

public java.lang.String getDN()
Retrieves the DN of the entry to add.

Returns:
The DN of the entry to add.

getAttributes

public LDAPAttribute[] getAttributes()
Retrieves the set of attributes for the entry to add.

Returns:
The set of attributes for the entry to add.

encode

public ASN1Element encode()
Encodes this protocol op to an ASN.1 element.

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

decodeAddRequest

public static AddRequest decodeAddRequest(ASN1Element element)
                                   throws ProtocolException
Decodes the provided ASN.1 element as an add request protocol op.

Parameters:
element - The ASN.1 element to be decoded.
Returns:
The decoded add request.
Throws:
ProtocolException - If a problem occurs while decoding the provided ASN.1 element as an add request.

getProtocolOpType

public java.lang.String getProtocolOpType()
Retrieves a user-friendly name for this protocol op.

Specified by:
getProtocolOpType in class ProtocolOp
Returns:
A user-friendly name for this protocol op.

toString

public java.lang.String toString(int indent)
Retrieves a string representation of this protocol op with the specified indent.

Specified by:
toString in class ProtocolOp
Parameters:
indent - The number of spaces to indent the output.
Returns:
A string representation of this protocol op with the specified indent.

toSLAMDScript

public void toSLAMDScript(java.io.PrintStream scriptWriter)
Constructs a string representation of this LDAP message in a form that can be written to a SLAMD script. It may be empty if this message isn't one that would be generated as part of a client request.

Specified by:
toSLAMDScript in class ProtocolOp
Parameters:
scriptWriter - The print stream to which the script contents should be written.