Class Request<T extends org.opendaylight.yangtools.concepts.WritableIdentifier,C extends Request<T,C>>

java.lang.Object
org.opendaylight.controller.cluster.access.concepts.Message<T,C>
org.opendaylight.controller.cluster.access.concepts.Request<T,C>
Type Parameters:
T - Target identifier type
C - Message type
All Implemented Interfaces:
Serializable, org.opendaylight.yangtools.concepts.Immutable
Direct Known Subclasses:
ConnectClientRequest, LocalHistoryRequest, TransactionRequest

public abstract class Request<T extends org.opendaylight.yangtools.concepts.WritableIdentifier,C extends Request<T,C>> extends Message<T,C>
A request message concept. Upon receipt of this message, the recipient will respond with either a RequestSuccess or a RequestFailure message.
See Also:
  • Constructor Details

    • Request

      protected Request(@NonNull T target, long sequence, @NonNull akka.actor.ActorRef replyTo)
    • Request

      protected Request(@NonNull C request, @NonNull ABIVersion version)
  • Method Details

    • getReplyTo

      public final @NonNull akka.actor.ActorRef getReplyTo()
      Return the return address where responses to this request should be directed to.
      Returns:
      Original requestor
    • toRequestFailure

      public abstract @NonNull RequestFailure<T,?> toRequestFailure(@NonNull RequestException cause)
      Return a RequestFailure for this request, caused by a RequestException.
      Parameters:
      cause - Failure cause
      Returns:
      RequestFailure corresponding to this request
    • addToStringAttributes

      protected com.google.common.base.MoreObjects.ToStringHelper addToStringAttributes(com.google.common.base.MoreObjects.ToStringHelper toStringHelper)
      Description copied from class: Message
      Add attributes to the output of Message.toString(). Subclasses wanting to contribute additional information should override this method. Any null attributes will be omitted from the output.
      Overrides:
      addToStringAttributes in class Message<T extends org.opendaylight.yangtools.concepts.WritableIdentifier,C extends Request<T,C>>
      Parameters:
      toStringHelper - a MoreObjects.ToStringHelper instance
      Returns:
      The MoreObjects.ToStringHelper passed in as argument
    • externalizableProxy

      protected abstract Request.SerialForm<T,C> externalizableProxy(ABIVersion version)
      Description copied from class: Message
      Instantiate a serialization proxy for this object for the target ABI version. Implementations should return different objects for incompatible ABIVersions. This method should never fail, as any compatibility checks should have been done by Message.cloneAsVersion(ABIVersion).
      Specified by:
      externalizableProxy in class Message<T extends org.opendaylight.yangtools.concepts.WritableIdentifier,C extends Request<T,C>>
      Parameters:
      version - Requested ABI version
      Returns:
      Proxy for this object