Package org.zeromq

Interface ZActor.Actor

All Known Implementing Classes:
ZActor.Duo, ZActor.SimpleActor, ZAuth.AuthActor, ZMonitor.MonitorActor, ZProxy.ProxyActor
Enclosing class:
ZActor

public static interface ZActor.Actor
Defines the contract for the acting instance.
  • Method Details

    • premiere

      String premiere(ZMQ.Socket pipe)
      This is the grand premiere! Called before the creation of the first double and the sockets 2nd in the order call of the global acting.
      Parameters:
      pipe - the backstage control pipe
      Returns:
      the name of the upcoming performance
    • createSockets

      List<ZMQ.Socket> createSockets(ZContext ctx, Object... args)
      Creates and initializes sockets for the double. This is done at each creation of a new double. 3rd in the order call of the global acting. 1st in the order call of the new double.
      Parameters:
      ctx - the context used to create sockets
      args - the arguments passed as parameters of the ZActor
      Returns:
      a list of created sockets that will be managed by the double. Not null.
    • start

      void start(ZMQ.Socket pipe, List<ZMQ.Socket> sockets, ZPoller poller)
      Called when the double is started, before the first loop. 4th in the order call of the global acting. 2nd in the order call of the new double.
      Parameters:
      pipe - the backstage control pipe
      sockets - the managed sockets that were created in the previous step
      poller - the poller where to eventually register the sockets for events
    • looping

      long looping(ZMQ.Socket pipe, ZPoller poller)
      Called every time just before a loop starts. 5th in the order call of the global acting. 3nd in the order call of the new double. 1st in the order call of the new loop.
      Parameters:
      pipe - the backstage control pipe
      poller - the poller of the double
      Returns:
      the timeout of the coming loop. -1 to block, 0 to not wait, > 0 to wait till max the returned duration in milliseconds
    • backstage

      boolean backstage(ZMQ.Socket pipe, ZPoller poller, int events)
      Called when the actor received a control message from its pipe during a loop. 2nd in the order call of the new loop.
      Parameters:
      pipe - the backstage control pipe receiving the message
      poller - the poller of the double.
      events - the events source of the call
      Returns:
      true in case of success, false to stop the actor.
    • stage

      boolean stage(ZMQ.Socket socket, ZMQ.Socket pipe, ZPoller poller, int events)
      The actor received a message from the created sockets during a loop. 2nd ex-aequo in the order call of the new loop.
      Parameters:
      socket - the socket receiving the message
      pipe - the backstage control pipe
      poller - the poller of the double.
      events - the events source of the call
      Returns:
      true in case of success, false to stop the actor.
    • looped

      boolean looped(ZMQ.Socket pipe, ZPoller poller)
      Called at the end of each loop. 3rd in the order call of the new loop.
      Parameters:
      pipe - the backstage control pipe
      poller - the poller of the double.
      Returns:
      true to continue with the current doppelganger, false to stop it.
    • closed

      void closed(ZMQ.Socket socket)
      Called when a created socket has been closed. The process of destroying the double has already started.
      Parameters:
      socket - the closed socked.
    • destroyed

      boolean destroyed(ZContext ctx, ZMQ.Socket pipe, ZPoller poller)
      Called when the current double has been destroyed. Last in the order call of the double.
      Parameters:
      ctx - the context.
      pipe - the backstage control pipe.
      poller - the poller of the double.
      Returns:
      true to restart a new double, false to stop the acting process
    • finished

      boolean finished(ZMQ.Socket pipe)
      Called when the stage is finished. This is the last call to the actor. Last in the order call of the global acting.
      Parameters:
      pipe - the backstage control pipe
      Returns:
      true to spread the word of the actor's leaving