Package org.zeromq

Interface ZAgent

All Known Implementing Classes:
ZActor, ZAgent.SimpleAgent, ZStar

public interface ZAgent
First implementation of an agent for a remotely controlled background service for ØMQ. Used in conjunction with a ZStar, but not mandatory.

An agent is a mechanism allowing to send messages from one thread to another, and to receive messages from this other thread.

Its built-in implementation provides an easy communication-lock system that will close the access once the remote thread is finished.

Are proposed for you a restrained set of simple but powerful messaging commands for a quick learning curve and an access to the underlying Socket for advanced usage.

  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static class 
     
    static interface 
    Deprecated. 
    static final class 
    Creates a very simple agent with an easy lock mechanism.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Closes the pipe.
    Returns the socket used for communication.
    Receives a control message sent from the Plateau in the Corbeille.
    recv(boolean wait)
    Receives a control message sent from the Plateau in the Corbeille.
    recv(int timeout)
    Receives a control message sent from the Plateau in the Corbeille.
    boolean
    send(String word)
    Sends a control message from the Corbeille to the Plateau side.
    boolean
    send(String word, boolean more)
    Sends a control message from the Corbeille to the Plateau side.
    boolean
    send(ZMsg message)
    Sends a control message from the Corbeille to the Plateau.
    boolean
    send(ZMsg msg, boolean destroy)
    Sends a control message from Corbeille side to the Plateau side.
    boolean
    Gives a sign if the distant Star is here.
  • Method Details

    • recv

      ZMsg recv()
      Receives a control message sent from the Plateau in the Corbeille. The call is blocking.
      Returns:
      the received message or null if the context was shut down.
    • recv

      ZMsg recv(int timeout)
      Receives a control message sent from the Plateau in the Corbeille. The call times out if there is no message after the elapsed time.
      Parameters:
      timeout - the timeout in milliseconds before returning null.
      Returns:
      the received message or null if the context was shut down or if no message after the timeout.
    • recv

      ZMsg recv(boolean wait)
      Receives a control message sent from the Plateau in the Corbeille. The call is blocking depending on the parameter.
      Parameters:
      wait - true to make a blocking call, false to not wait, and possibly return null
      Returns:
      the received message or null if the context was shut down or if there is no message when not blocking.
    • send

      boolean send(ZMsg message)
      Sends a control message from the Corbeille to the Plateau.
      Parameters:
      message - the message to send
      Returns:
      true if the message was sent, otherwise false (if the distant Star is dead for example)
    • send

      boolean send(ZMsg msg, boolean destroy)
      Sends a control message from Corbeille side to the Plateau side.
      Parameters:
      msg - the message to send
      destroy - true to destroy the message after sending it.
      Returns:
      true if the message was sent, otherwise false (if the distant Star is dead for example)
    • send

      boolean send(String word)
      Sends a control message from the Corbeille to the Plateau side.
      Parameters:
      word - the message to send
      Returns:
      true if the message was sent, otherwise false (if the distant Star is dead for example)
    • send

      boolean send(String word, boolean more)
      Sends a control message from the Corbeille to the Plateau side.
      Parameters:
      word - the message to send
      more - true to send more strings in a single message
      Returns:
      true if the message was sent, otherwise false (if the distant Star is dead for example)
    • sign

      boolean sign()
      Gives a sign if the distant Star is here.
      Returns:
      true if here, otherwise false
    • pipe

      ZMQ.Socket pipe()
      Returns the socket used for communication. For advanced usage.
      Returns:
      the socket used to communicate with the distant Star.
    • close

      void close()
      Closes the pipe.