Class ClientActorContext

java.lang.Object
org.opendaylight.controller.cluster.access.client.ClientActorContext
All Implemented Interfaces:
Identifiable<ClientIdentifier>, Mutable

public class ClientActorContext extends Object implements Identifiable<ClientIdentifier>
An actor context associated with this AbstractClientActor.

Time-keeping in a client actor is based on monotonic time. The precision of this time can be expected to be the same as System.nanoTime(), but it is not tied to that particular clock. Actor clock is exposed as a Ticker, which can be obtained via ticker(). This class is thread-safe.

  • Method Details

    • getIdentifier

      public ClientIdentifier getIdentifier()
      Specified by:
      getIdentifier in interface Identifiable<ClientIdentifier>
    • config

      public @NonNull ClientActorConfig config()
    • dispatchers

      public @NonNull Dispatchers dispatchers()
    • messageSlicer

      public @NonNull MessageSlicer messageSlicer()
    • ticker

      public @NonNull Ticker ticker()
      Return the time ticker for this ClientActorContext. This should be used for in all time-tracking done within a client actor. Subclasses of ClientActorBehavior are encouraged to use Stopwatch.
      Returns:
      Client actor time source
    • executeInActor

      public <T extends BackendInfo> void executeInActor(@NonNull InternalCommand<T> command)
      Execute a command in the context of the client actor.
      Type Parameters:
      T - BackendInfo type
      Parameters:
      command - Block of code which needs to be execute
    • executeInActor

      public <T extends BackendInfo> org.apache.pekko.actor.Cancellable executeInActor(@NonNull InternalCommand<T> command, Duration delay)
    • self

      public final @NonNull org.apache.pekko.actor.ActorRef self()