com.ibm.net.rdma.jverbs.verbs

Interface StatefulVerbsMethod<T>

  • Type Parameters:
    T - the type of the result of this SVM.
    All Known Implementing Classes:
    DeregisterMemoryRegionMethod, PollCQMethod, PostReceiveMethod, PostSendMethod, RegisterMemoryRegionMethod, RequestNotifyCQMethod


    public interface StatefulVerbsMethod<T>

    StatefulVerbsMethod represents a verb method for a given set of parameter values, known as a stateful verb method (SVM). An application uses execute() method to execute the SVM object. The execute() returns a call specific type, T, which can be queried for the result of the operation.

    One key advantage of SVM implementations is that they can be cached and re-executed many times. Semantically, each execution of an SVM object is identical to a jVerbs call evaluated against the current parameter state of the SVM object. Any serialization state that is necessary while executing the SVM object, has to be created only when executing the object for the first time. Subsequent calls use the serialization state that is already established and run much faster. When the SVM object is no longer needed, resources can be freed using the free() API call.

    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method and Description
      T execute()
      Execute the state of this verbs call.
      T free()
      Free any resources associated with this SVM.
      boolean isSuccess()
      Returns whether last call is successful or not
      boolean isValid()
      Checks if this SVM object is still valid and can be executed.
    • Method Detail

      • execute

        T execute()
        Execute the state of this verbs call. This call does nothing if object is already freed
        Returns:
        the call-specific SVM object which can be used to query the result.
      • free

        T free()
        Free any resources associated with this SVM.
        Returns:
        the SVM object itself.
      • isSuccess

        boolean isSuccess()
        Returns whether last call is successful or not
        Returns:
        true, if the call was success
      • isValid

        boolean isValid()
        Checks if this SVM object is still valid and can be executed.
        Returns:
        true, if is valid