Class BioSender

  • All Implemented Interfaces:
    DataSender

    @Deprecated
    public class BioSender
    extends AbstractSender
    Deprecated.
    This will be removed in Tomcat 10
    Send cluster messages with only one socket. Ack and keep Alive Handling is supported
    Since:
    5.5.16
    Author:
    Peter Rossbach
    • Field Detail

      • sm

        protected static final StringManager sm
        Deprecated.
        The string manager for this package.
      • ackbuf

        protected final XByteBuffer ackbuf
        Deprecated.
    • Constructor Detail

      • BioSender

        public BioSender()
        Deprecated.
    • Method Detail

      • connect

        public void connect()
                     throws java.io.IOException
        Deprecated.
        Connect other cluster member receiver
        Specified by:
        connect in interface DataSender
        Specified by:
        connect in class AbstractSender
        Throws:
        java.io.IOException - TODO Implement this org.apache.catalina.tribes.transport.DataSender method
        See Also:
        DataSender.connect()
      • sendMessage

        public void sendMessage​(byte[] data,
                                boolean waitForAck)
                         throws java.io.IOException
        Deprecated.
        Send message.
        Parameters:
        data - The data to send
        waitForAck - Wait for an ack
        Throws:
        java.io.IOException - An IO error occurred sending the message
      • toString

        public java.lang.String toString()
        Deprecated.
        Overrides:
        toString in class java.lang.Object
      • openSocket

        protected void openSocket()
                           throws java.io.IOException
        Deprecated.
        Open real socket and set time out when waitForAck is enabled is socket open return directly.
        Throws:
        java.io.IOException - Error opening socket
      • closeSocket

        protected void closeSocket()
        Deprecated.
        Close socket.
        See Also:
        disconnect()
      • pushMessage

        protected void pushMessage​(byte[] data,
                                   boolean reconnect,
                                   boolean waitForAck)
                            throws java.io.IOException
        Deprecated.
        Push messages with only one socket at a time Wait for ack is needed and make auto retry when write message is failed. After sending error close and reopen socket again. After successful sending update stats WARNING: Subclasses must be very careful that only one thread call this pushMessage at once!!!
        Parameters:
        data - Data to send
        reconnect - Do a reconnect (close socket then reopen)
        waitForAck - Wait for an acknowledgement
        Throws:
        java.io.IOException - IO error writing data
        Since:
        5.5.10
        See Also:
        closeSocket(), openSocket(), sendMessage(byte[], boolean)
      • waitForAck

        protected void waitForAck()
                           throws java.io.IOException
        Deprecated.
        Wait for Acknowledgement from other server. FIXME Please, not wait only for three characters, better control that the wait ack message is correct.
        Throws:
        java.io.IOException - An IO error occurred