Class OperationCallable<RequestT,​ResponseT,​MetadataT>

  • Direct Known Subclasses:
    TracedOperationCallable

    public abstract class OperationCallable<RequestT,​ResponseT,​MetadataT>
    extends Object
    An OperationCallable is an immutable object which is capable of initiating RPC calls to long-running API methods and returning an OperationFuture to manage the polling of the Operation and getting the response.

    It is considered advanced usage for a user to create an OperationCallable themselves. This class is intended to be created by a generated client class, and configured by instances of OperationCallSettings.Builder which are exposed through the client settings class.

    • Constructor Detail

      • OperationCallable

        protected OperationCallable()
    • Method Detail

      • call

        public ResponseT call​(RequestT request,
                              ApiCallContext context)
        Perform a call synchronously.
        Parameters:
        request - The request to initiate the operation.
        context - ApiCallContext to make the call with
        Returns:
        the call result
        Throws:
        ApiException - if there is any bad status in the response.
        RuntimeException - if there is any other exception unrelated to bad status.
      • resumeFutureCall

        public abstract OperationFuture<ResponseT,​MetadataT> resumeFutureCall​(String operationName,
                                                                                    ApiCallContext context)
        Creates a new OperationFuture to watch an operation that has been initiated previously. Note: This is not type-safe at static time; the result type can only be checked once the operation finishes.
        Parameters:
        operationName - The name of the operation to resume.
        context - ApiCallContext to make the call with
        Returns:
        OperationFuture for the call result.
      • resumeFutureCall

        public OperationFuture<ResponseT,​MetadataT> resumeFutureCall​(String operationName)
        Creates a new OperationFuture to watch an operation that has been initiated previously. Note: This is not type-safe at static time; the result type can only be checked once the operation finishes.
        Parameters:
        operationName - The name of the operation to resume.
        Returns:
        OperationFuture for the call result.
      • cancel

        public abstract com.google.api.core.ApiFuture<Void> cancel​(String operationName,
                                                                   ApiCallContext context)
        Sends a cancellation request to the server for the operation with name operationName.
        Parameters:
        operationName - The name of the operation to cancel.
        context - ApiCallContext to make the call with
        Returns:
        the future which completes once the operation is canceled on the server side.
      • cancel

        public com.google.api.core.ApiFuture<Void> cancel​(String operationName)
        Sends a cancellation request to the server for the operation with name operationName.
        Parameters:
        operationName - The name of the operation to cancel.
        Returns:
        the future which completes once the operation is canceled on the server side.