Package org.zeromq

Class ZActor.SimpleActor

java.lang.Object
org.zeromq.ZActor.SimpleActor
All Implemented Interfaces:
ZActor.Actor
Direct Known Subclasses:
ZAuth.AuthActor, ZMonitor.MonitorActor, ZProxy.ProxyActor
Enclosing class:
ZActor

public static class ZActor.SimpleActor extends Object implements ZActor.Actor
Simple adapter for an actor, with no sockets, blocking calls and immediate termination.
  • Constructor Details

    • SimpleActor

      public SimpleActor()
  • Method Details

    • premiere

      public String premiere(ZMQ.Socket pipe)
      Description copied from interface: ZActor.Actor
      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.
      Specified by:
      premiere in interface ZActor.Actor
      Parameters:
      pipe - the backstage control pipe
      Returns:
      the name of the upcoming performance
    • createSockets

      public List<ZMQ.Socket> createSockets(ZContext ctx, Object... args)
      Description copied from interface: ZActor.Actor
      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.
      Specified by:
      createSockets in interface ZActor.Actor
      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

      public void start(ZMQ.Socket pipe, List<ZMQ.Socket> sockets, ZPoller poller)
      Description copied from interface: ZActor.Actor
      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.
      Specified by:
      start in interface ZActor.Actor
      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

      public long looping(ZMQ.Socket pipe, ZPoller poller)
      Description copied from interface: ZActor.Actor
      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.
      Specified by:
      looping in interface ZActor.Actor
      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

      public boolean backstage(ZMQ.Socket pipe, ZPoller poller, int events)
      Description copied from interface: ZActor.Actor
      Called when the actor received a control message from its pipe during a loop. 2nd in the order call of the new loop.
      Specified by:
      backstage in interface ZActor.Actor
      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

      public boolean stage(ZMQ.Socket socket, ZMQ.Socket pipe, ZPoller poller, int events)
      Description copied from interface: ZActor.Actor
      The actor received a message from the created sockets during a loop. 2nd ex-aequo in the order call of the new loop.
      Specified by:
      stage in interface ZActor.Actor
      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

      public boolean looped(ZMQ.Socket pipe, ZPoller poller)
      Description copied from interface: ZActor.Actor
      Called at the end of each loop. 3rd in the order call of the new loop.
      Specified by:
      looped in interface ZActor.Actor
      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

      public void closed(ZMQ.Socket socket)
      Description copied from interface: ZActor.Actor
      Called when a created socket has been closed. The process of destroying the double has already started.
      Specified by:
      closed in interface ZActor.Actor
      Parameters:
      socket - the closed socked.
    • destroyed

      public boolean destroyed(ZContext ctx, ZMQ.Socket pipe, ZPoller poller)
      Description copied from interface: ZActor.Actor
      Called when the current double has been destroyed. Last in the order call of the double.
      Specified by:
      destroyed in interface ZActor.Actor
      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

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