Class ProtocolCommandSupport

  • All Implemented Interfaces:
    java.io.Serializable

    public class ProtocolCommandSupport
    extends java.lang.Object
    implements java.io.Serializable
    ProtocolCommandSupport is a convenience class for managing a list of ProtocolCommandListeners and firing ProtocolCommandEvents. You can simply delegate ProtocolCommandEvent firing and listener registering/unregistering tasks to this class.
    See Also:
    ProtocolCommandEvent, ProtocolCommandListener, Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      ProtocolCommandSupport​(java.lang.Object source)
      Creates a ProtocolCommandSupport instance using the indicated source as the source of ProtocolCommandEvents.
    • Field Detail

      • serialVersionUID

        private static final long serialVersionUID
        Serialization is unnecessary for this class. Reject attempts to do so until such time as the Serializable attribute can be dropped.
        See Also:
        Constant Field Values
      • source

        private final java.lang.Object source
        The source to use for all generated ProtocolCommandEvents.
    • Constructor Detail

      • ProtocolCommandSupport

        public ProtocolCommandSupport​(java.lang.Object source)
        Creates a ProtocolCommandSupport instance using the indicated source as the source of ProtocolCommandEvents.
        Parameters:
        source - The source to use for all generated ProtocolCommandEvents.
    • Method Detail

      • addProtocolCommandListener

        public void addProtocolCommandListener​(ProtocolCommandListener listener)
        Adds a ProtocolCommandListener.
        Parameters:
        listener - The ProtocolCommandListener to add.
      • fireCommandSent

        public void fireCommandSent​(java.lang.String command,
                                    java.lang.String message)
        Fires a ProtocolCommandEvent signaling the sending of a command to all registered listeners, invoking their protocolCommandSent() methods.
        Parameters:
        command - The string representation of the command type sent, not including the arguments (e.g., "STAT" or "GET").
        message - The entire command string verbatim as sent to the server, including all arguments.
      • fireReplyReceived

        public void fireReplyReceived​(int replyCode,
                                      java.lang.String message)
        Fires a ProtocolCommandEvent signaling the reception of a command reply to all registered listeners, invoking their protocolReplyReceived() methods.
        Parameters:
        replyCode - The integer code indicating the nature of the reply. This will be the protocol integer value for protocols that use integer reply codes, or the reply class constant corresponding to the reply for protocols like POP3 that use strings like OK rather than integer codes (i.e., POP3Repy.OK).
        message - The entire reply as received from the server.
      • getListenerCount

        public int getListenerCount()
        Gets the number of ProtocolCommandListeners currently registered.
        Returns:
        The number of ProtocolCommandListeners currently registered.
      • readObject

        private void readObject​(java.io.ObjectInputStream ignored)
        Throws UnsupportedOperationException.
        Parameters:
        ignored - Ignored.
      • removeProtocolCommandListener

        public void removeProtocolCommandListener​(ProtocolCommandListener listener)
        Removes a ProtocolCommandListener.
        Parameters:
        listener - The ProtocolCommandListener to remove.
      • writeObject

        private void writeObject​(java.io.ObjectOutputStream ignored)
        Always throws UnsupportedOperationException.
        Parameters:
        ignored - ignored.
        Throws:
        java.lang.UnsupportedOperationException - Always thrown.