Package org.ldaptive

Class AbstractMessage

  • All Implemented Interfaces:
    Message
    Direct Known Subclasses:
    AbstractResult, IntermediateResponse, LdapEntry, SearchResultReference

    public abstract class AbstractMessage
    extends Object
    implements Message
    LDAP message envelope defined as:
       LDAPMessage ::= SEQUENCE {
         messageID       MessageID,
         protocolOp      CHOICE {
           ...,
         controls       [0] Controls OPTIONAL }
    
       Control ::= SEQUENCE {
         controlType             LDAPOID,
         criticality             BOOLEAN DEFAULT FALSE,
         controlValue            OCTET STRING OPTIONAL }
     
    • Field Detail

      • messageID

        private int messageID
        Protocol message ID.
    • Constructor Detail

      • AbstractMessage

        public AbstractMessage()
    • Method Detail

      • getMessageID

        public final int getMessageID()
        Description copied from interface: Message
        Returns the ID for this message.
        Specified by:
        getMessageID in interface Message
        Returns:
        message ID
      • setMessageID

        protected void setMessageID​(int id)
      • getControls

        public final ResponseControl[] getControls()
        Description copied from interface: Message
        Returns the response controls for this message.
        Specified by:
        getControls in interface Message
        Returns:
        response controls
      • addControls

        protected final void addControls​(ResponseControl... cntrls)
        Adds the supplied controls to this message.
        Parameters:
        cntrls - to add
      • copyValues

        protected <T extends Message> void copyValues​(T message)
        Copies the property values from the supplied message to this message.
        Type Parameters:
        T - type of message
        Parameters:
        message - to copy from
      • equalsMessage

        public final boolean equalsMessage​(Message message)
        Returns whether the base properties of this message are equal. Those include message ID and controls.
        Parameters:
        message - to compare
        Returns:
        whether message properties are equal
      • hashCode

        public abstract int hashCode()
        Returns the hash code for this object.
        Overrides:
        hashCode in class Object
        Returns:
        hash code