com.slamd.tools.ldapdecoder.protocol
Class CompareRequest

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

public class CompareRequest
extends ProtocolOp

This class defines an LDAP compare request, which is used to determine whether an entry has a given attribute name and value.

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, 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
CompareRequest(java.lang.String dn, java.lang.String attributeType, ASN1OctetString assertionValue)
          Creates a new compare request with the provided information.
 
Method Summary
static CompareRequest decodeCompareRequest(ASN1Element element)
          Decodes the provided ASN.1 element as a compare request protocol op.
 ASN1Element encode()
          Encodes this protocol op to an ASN.1 element.
 ASN1OctetString getAssertionValue()
          Retrieves the assertion value for this compare request.
 java.lang.String getAttributeType()
          Retrieves the attribute type for this compare request.
 java.lang.String getDN()
          Retrieves the DN of the entry for which to perform the comparison.
 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

CompareRequest

public CompareRequest(java.lang.String dn,
                      java.lang.String attributeType,
                      ASN1OctetString assertionValue)
Creates a new compare request with the provided information.

Parameters:
dn - The DN of the entry for which to perform the comparison.
attributeType - The attribute type for this compare request.
assertionValue - The assertion value for this compare request.
Method Detail

getDN

public java.lang.String getDN()
Retrieves the DN of the entry for which to perform the comparison.

Returns:
The DN of the entry for which to perform the comparison.

getAttributeType

public java.lang.String getAttributeType()
Retrieves the attribute type for this compare request.

Returns:
The attribute type for this compare request.

getAssertionValue

public ASN1OctetString getAssertionValue()
Retrieves the assertion value for this compare request.

Returns:
The assertion value for this compare request.

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.

decodeCompareRequest

public static CompareRequest decodeCompareRequest(ASN1Element element)
                                           throws ProtocolException
Decodes the provided ASN.1 element as a compare request protocol op.

Parameters:
element - The ASN.1 element to be decoded.
Returns:
The decoded compare request.
Throws:
ProtocolException - If a problem occurs while decoding the provided ASN.1 element as a compare 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.