Package org.jcsp.lang

Interface ConnectionServer<T>

    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void reply​(T data)
      Sends some data back to the client after a request has been received but keeps the connection open.
      void reply​(T data, boolean close)
      Sends some data back to the client after a request has been received.
      void replyAndClose​(T data)
      Sends some data back to the client and closes the connection.
      T request()
      Receives a request from a client.
    • Method Detail

      • request

        T request()
           throws java.lang.IllegalStateException

        Receives a request from a client. This will block until the client calls its request(Object) method. Implementations may make this ALTable.

        After this method has returned, the server should call one of the reply methods. Performing any external process synchronization between these method calls could be potentially hazardous and could lead to deadlock.

        Returns:
        the Object sent by the client.
        Throws:
        java.lang.IllegalStateException
      • reply

        void reply​(T data)
            throws java.lang.IllegalStateException

        Sends some data back to the client after a request has been received but keeps the connection open. After calling this method, the server should call recieve() to receive a further request.

        A call to this method is equivalent to a call to reply(Object, boolean) with the boolean set to false.

        Parameters:
        data - the data to send to the client.
        Throws:
        java.lang.IllegalStateException
      • reply

        void reply​(T data,
                   boolean close)

        Sends some data back to the client after a request has been received. The boolean close parameter indicates whether the connection should be closed after this reply has been sent.

        This method should not block.

        Parameters:
        data - the data to send back to client.
        close - boolean that should be true iff the connection should be dropped after the reply has been sent.
      • replyAndClose

        void replyAndClose​(T data)
                    throws java.lang.IllegalStateException

        Sends some data back to the client and closes the connection.

        A call to this method is equivalent to a call to reply(Object, boolean) with the boolean set to true.

        Parameters:
        data - the data to send back to client.
        Throws:
        java.lang.IllegalStateException