Class WorkflowsClient (2.41.0)

GitHub RepositoryProduct ReferenceREST Documentation

Service Description: Workflows is used to deploy and execute workflow programs. Workflows makes sure the program executes reliably, despite hardware and networking interruptions.

This class provides the ability to make remote calls to the backing service through method calls that map to API methods. Sample code to get started:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   WorkflowName name = WorkflowName.of("[PROJECT]", "[LOCATION]", "[WORKFLOW]");
   Workflow response = workflowsClient.getWorkflow(name);
 }
 

Note: close() needs to be called on the WorkflowsClient object to clean up resources such as threads. In the example above, try-with-resources is used, which automatically calls close().

Methods
MethodDescriptionMethod Variants

ListWorkflows

Lists workflows in a given project and location. The default order is not specified.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • listWorkflows(ListWorkflowsRequest request)

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

  • listWorkflows(LocationName parent)

  • listWorkflows(String parent)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • listWorkflowsPagedCallable()

  • listWorkflowsCallable()

GetWorkflow

Gets details of a single workflow.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • getWorkflow(GetWorkflowRequest request)

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

  • getWorkflow(WorkflowName name)

  • getWorkflow(String name)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • getWorkflowCallable()

CreateWorkflow

Creates a new workflow. If a workflow with the specified name already exists in the specified project and location, the long running operation returns a ALREADY_EXISTS error.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • createWorkflowAsync(CreateWorkflowRequest request)

Methods that return long-running operations have "Async" method variants that return OperationFuture, which is used to track polling of the service.

  • createWorkflowAsync(LocationName parent, Workflow workflow, String workflowId)

  • createWorkflowAsync(String parent, Workflow workflow, String workflowId)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • createWorkflowOperationCallable()

  • createWorkflowCallable()

DeleteWorkflow

Deletes a workflow with the specified name. This method also cancels and deletes all running executions of the workflow.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • deleteWorkflowAsync(DeleteWorkflowRequest request)

Methods that return long-running operations have "Async" method variants that return OperationFuture, which is used to track polling of the service.

  • deleteWorkflowAsync(WorkflowName name)

  • deleteWorkflowAsync(String name)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • deleteWorkflowOperationCallable()

  • deleteWorkflowCallable()

UpdateWorkflow

Updates an existing workflow. Running this method has no impact on already running executions of the workflow. A new revision of the workflow might be created as a result of a successful update operation. In that case, the new revision is used in new workflow executions.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • updateWorkflowAsync(UpdateWorkflowRequest request)

Methods that return long-running operations have "Async" method variants that return OperationFuture, which is used to track polling of the service.

  • updateWorkflowAsync(Workflow workflow, FieldMask updateMask)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • updateWorkflowOperationCallable()

  • updateWorkflowCallable()

ListLocations

Lists information about the supported locations for this service.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • listLocations(ListLocationsRequest request)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • listLocationsPagedCallable()

  • listLocationsCallable()

GetLocation

Gets information about a location.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • getLocation(GetLocationRequest request)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • getLocationCallable()

See the individual methods for example code.

Many parameters require resource names to be formatted in a particular way. To assist with these names, this class includes a format method for each type of name, and additionally a parse method to extract the individual identifiers contained within names that are returned.

This class can be customized by passing in a custom instance of WorkflowsSettings to create(). For example:

To customize credentials:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 WorkflowsSettings workflowsSettings =
     WorkflowsSettings.newBuilder()
         .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
         .build();
 WorkflowsClient workflowsClient = WorkflowsClient.create(workflowsSettings);
 

To customize the endpoint:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 WorkflowsSettings workflowsSettings =
     WorkflowsSettings.newBuilder().setEndpoint(myEndpoint).build();
 WorkflowsClient workflowsClient = WorkflowsClient.create(workflowsSettings);
 

To use REST (HTTP1.1/JSON) transport (instead of gRPC) for sending and receiving requests over the wire:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 WorkflowsSettings workflowsSettings = WorkflowsSettings.newHttpJsonBuilder().build();
 WorkflowsClient workflowsClient = WorkflowsClient.create(workflowsSettings);
 

Please refer to the GitHub repository's samples for more quickstart code snippets.

Inheritance

java.lang.Object > WorkflowsClient

Static Methods

create()

public static final WorkflowsClient create()

Constructs an instance of WorkflowsClient with default settings.

Returns
TypeDescription
WorkflowsClient
Exceptions
TypeDescription
IOException

create(WorkflowsSettings settings)

public static final WorkflowsClient create(WorkflowsSettings settings)

Constructs an instance of WorkflowsClient, using the given settings. The channels are created based on the settings passed in, or defaults for any settings that are not set.

Parameter
NameDescription
settingsWorkflowsSettings
Returns
TypeDescription
WorkflowsClient
Exceptions
TypeDescription
IOException

create(WorkflowsStub stub)

public static final WorkflowsClient create(WorkflowsStub stub)

Constructs an instance of WorkflowsClient, using the given stub for making calls. This is for advanced usage - prefer using create(WorkflowsSettings).

Parameter
NameDescription
stubWorkflowsStub
Returns
TypeDescription
WorkflowsClient

Constructors

WorkflowsClient(WorkflowsSettings settings)

protected WorkflowsClient(WorkflowsSettings settings)

Constructs an instance of WorkflowsClient, using the given settings. This is protected so that it is easy to make a subclass, but otherwise, the static factory methods should be preferred.

Parameter
NameDescription
settingsWorkflowsSettings

WorkflowsClient(WorkflowsStub stub)

protected WorkflowsClient(WorkflowsStub stub)
Parameter
NameDescription
stubWorkflowsStub

Methods

awaitTermination(long duration, TimeUnit unit)

public boolean awaitTermination(long duration, TimeUnit unit)
Parameters
NameDescription
durationlong
unitTimeUnit
Returns
TypeDescription
boolean
Exceptions
TypeDescription
InterruptedException

close()

public final void close()

createWorkflowAsync(CreateWorkflowRequest request)

public final OperationFuture<Workflow,OperationMetadata> createWorkflowAsync(CreateWorkflowRequest request)

Creates a new workflow. If a workflow with the specified name already exists in the specified project and location, the long running operation returns a ALREADY_EXISTS error.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   CreateWorkflowRequest request =
       CreateWorkflowRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setWorkflow(Workflow.newBuilder().build())
           .setWorkflowId("workflowId-360387270")
           .build();
   Workflow response = workflowsClient.createWorkflowAsync(request).get();
 }
 
Parameter
NameDescription
requestCreateWorkflowRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
OperationFuture<Workflow,OperationMetadata>

createWorkflowAsync(LocationName parent, Workflow workflow, String workflowId)

public final OperationFuture<Workflow,OperationMetadata> createWorkflowAsync(LocationName parent, Workflow workflow, String workflowId)

Creates a new workflow. If a workflow with the specified name already exists in the specified project and location, the long running operation returns a ALREADY_EXISTS error.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]");
   Workflow workflow = Workflow.newBuilder().build();
   String workflowId = "workflowId-360387270";
   Workflow response = workflowsClient.createWorkflowAsync(parent, workflow, workflowId).get();
 }
 
Parameters
NameDescription
parentLocationName

Required. Project and location in which the workflow should be created. Format: projects/{project}/locations/{location}

workflowWorkflow

Required. Workflow to be created.

workflowIdString

Required. The ID of the workflow to be created. It has to fulfill the following requirements:

  • Must contain only letters, numbers, underscores and hyphens.
  • Must start with a letter.
  • Must be between 1-64 characters.
  • Must end with a number or a letter.
  • Must be unique within the customer project and location.

Returns
TypeDescription
OperationFuture<Workflow,OperationMetadata>

createWorkflowAsync(String parent, Workflow workflow, String workflowId)

public final OperationFuture<Workflow,OperationMetadata> createWorkflowAsync(String parent, Workflow workflow, String workflowId)

Creates a new workflow. If a workflow with the specified name already exists in the specified project and location, the long running operation returns a ALREADY_EXISTS error.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   String parent = LocationName.of("[PROJECT]", "[LOCATION]").toString();
   Workflow workflow = Workflow.newBuilder().build();
   String workflowId = "workflowId-360387270";
   Workflow response = workflowsClient.createWorkflowAsync(parent, workflow, workflowId).get();
 }
 
Parameters
NameDescription
parentString

Required. Project and location in which the workflow should be created. Format: projects/{project}/locations/{location}

workflowWorkflow

Required. Workflow to be created.

workflowIdString

Required. The ID of the workflow to be created. It has to fulfill the following requirements:

  • Must contain only letters, numbers, underscores and hyphens.
  • Must start with a letter.
  • Must be between 1-64 characters.
  • Must end with a number or a letter.
  • Must be unique within the customer project and location.

Returns
TypeDescription
OperationFuture<Workflow,OperationMetadata>

createWorkflowCallable()

public final UnaryCallable<CreateWorkflowRequest,Operation> createWorkflowCallable()

Creates a new workflow. If a workflow with the specified name already exists in the specified project and location, the long running operation returns a ALREADY_EXISTS error.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   CreateWorkflowRequest request =
       CreateWorkflowRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setWorkflow(Workflow.newBuilder().build())
           .setWorkflowId("workflowId-360387270")
           .build();
   ApiFuture<Operation> future = workflowsClient.createWorkflowCallable().futureCall(request);
   // Do something.
   Operation response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<CreateWorkflowRequest,Operation>

createWorkflowOperationCallable()

public final OperationCallable<CreateWorkflowRequest,Workflow,OperationMetadata> createWorkflowOperationCallable()

Creates a new workflow. If a workflow with the specified name already exists in the specified project and location, the long running operation returns a ALREADY_EXISTS error.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   CreateWorkflowRequest request =
       CreateWorkflowRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setWorkflow(Workflow.newBuilder().build())
           .setWorkflowId("workflowId-360387270")
           .build();
   OperationFuture<Workflow, OperationMetadata> future =
       workflowsClient.createWorkflowOperationCallable().futureCall(request);
   // Do something.
   Workflow response = future.get();
 }
 
Returns
TypeDescription
OperationCallable<CreateWorkflowRequest,Workflow,OperationMetadata>

deleteWorkflowAsync(DeleteWorkflowRequest request)

public final OperationFuture<Empty,OperationMetadata> deleteWorkflowAsync(DeleteWorkflowRequest request)

Deletes a workflow with the specified name. This method also cancels and deletes all running executions of the workflow.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   DeleteWorkflowRequest request =
       DeleteWorkflowRequest.newBuilder()
           .setName(WorkflowName.of("[PROJECT]", "[LOCATION]", "[WORKFLOW]").toString())
           .build();
   workflowsClient.deleteWorkflowAsync(request).get();
 }
 
Parameter
NameDescription
requestDeleteWorkflowRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
OperationFuture<Empty,OperationMetadata>

deleteWorkflowAsync(WorkflowName name)

public final OperationFuture<Empty,OperationMetadata> deleteWorkflowAsync(WorkflowName name)

Deletes a workflow with the specified name. This method also cancels and deletes all running executions of the workflow.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   WorkflowName name = WorkflowName.of("[PROJECT]", "[LOCATION]", "[WORKFLOW]");
   workflowsClient.deleteWorkflowAsync(name).get();
 }
 
Parameter
NameDescription
nameWorkflowName

Required. Name of the workflow to be deleted. Format: projects/{project}/locations/{location}/workflows/{workflow}

Returns
TypeDescription
OperationFuture<Empty,OperationMetadata>

deleteWorkflowAsync(String name)

public final OperationFuture<Empty,OperationMetadata> deleteWorkflowAsync(String name)

Deletes a workflow with the specified name. This method also cancels and deletes all running executions of the workflow.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   String name = WorkflowName.of("[PROJECT]", "[LOCATION]", "[WORKFLOW]").toString();
   workflowsClient.deleteWorkflowAsync(name).get();
 }
 
Parameter
NameDescription
nameString

Required. Name of the workflow to be deleted. Format: projects/{project}/locations/{location}/workflows/{workflow}

Returns
TypeDescription
OperationFuture<Empty,OperationMetadata>

deleteWorkflowCallable()

public final UnaryCallable<DeleteWorkflowRequest,Operation> deleteWorkflowCallable()

Deletes a workflow with the specified name. This method also cancels and deletes all running executions of the workflow.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   DeleteWorkflowRequest request =
       DeleteWorkflowRequest.newBuilder()
           .setName(WorkflowName.of("[PROJECT]", "[LOCATION]", "[WORKFLOW]").toString())
           .build();
   ApiFuture<Operation> future = workflowsClient.deleteWorkflowCallable().futureCall(request);
   // Do something.
   future.get();
 }
 
Returns
TypeDescription
UnaryCallable<DeleteWorkflowRequest,Operation>

deleteWorkflowOperationCallable()

public final OperationCallable<DeleteWorkflowRequest,Empty,OperationMetadata> deleteWorkflowOperationCallable()

Deletes a workflow with the specified name. This method also cancels and deletes all running executions of the workflow.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   DeleteWorkflowRequest request =
       DeleteWorkflowRequest.newBuilder()
           .setName(WorkflowName.of("[PROJECT]", "[LOCATION]", "[WORKFLOW]").toString())
           .build();
   OperationFuture<Empty, OperationMetadata> future =
       workflowsClient.deleteWorkflowOperationCallable().futureCall(request);
   // Do something.
   future.get();
 }
 
Returns
TypeDescription
OperationCallable<DeleteWorkflowRequest,Empty,OperationMetadata>

getHttpJsonOperationsClient()

public final OperationsClient getHttpJsonOperationsClient()

Returns the OperationsClient that can be used to query the status of a long-running operation returned by another API method call.

Returns
TypeDescription
OperationsClient

getLocation(GetLocationRequest request)

public final Location getLocation(GetLocationRequest request)

Gets information about a location.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   GetLocationRequest request = GetLocationRequest.newBuilder().setName("name3373707").build();
   Location response = workflowsClient.getLocation(request);
 }
 
Parameter
NameDescription
requestcom.google.cloud.location.GetLocationRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
com.google.cloud.location.Location

getLocationCallable()

public final UnaryCallable<GetLocationRequest,Location> getLocationCallable()

Gets information about a location.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   GetLocationRequest request = GetLocationRequest.newBuilder().setName("name3373707").build();
   ApiFuture<Location> future = workflowsClient.getLocationCallable().futureCall(request);
   // Do something.
   Location response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<com.google.cloud.location.GetLocationRequest,com.google.cloud.location.Location>

getOperationsClient()

public final OperationsClient getOperationsClient()

Returns the OperationsClient that can be used to query the status of a long-running operation returned by another API method call.

Returns
TypeDescription
OperationsClient

getSettings()

public final WorkflowsSettings getSettings()
Returns
TypeDescription
WorkflowsSettings

getStub()

public WorkflowsStub getStub()
Returns
TypeDescription
WorkflowsStub

getWorkflow(GetWorkflowRequest request)

public final Workflow getWorkflow(GetWorkflowRequest request)

Gets details of a single workflow.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   GetWorkflowRequest request =
       GetWorkflowRequest.newBuilder()
           .setName(WorkflowName.of("[PROJECT]", "[LOCATION]", "[WORKFLOW]").toString())
           .setRevisionId("revisionId-1507445162")
           .build();
   Workflow response = workflowsClient.getWorkflow(request);
 }
 
Parameter
NameDescription
requestGetWorkflowRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
Workflow

getWorkflow(WorkflowName name)

public final Workflow getWorkflow(WorkflowName name)

Gets details of a single workflow.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   WorkflowName name = WorkflowName.of("[PROJECT]", "[LOCATION]", "[WORKFLOW]");
   Workflow response = workflowsClient.getWorkflow(name);
 }
 
Parameter
NameDescription
nameWorkflowName

Required. Name of the workflow for which information should be retrieved. Format: projects/{project}/locations/{location}/workflows/{workflow}

Returns
TypeDescription
Workflow

getWorkflow(String name)

public final Workflow getWorkflow(String name)

Gets details of a single workflow.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   String name = WorkflowName.of("[PROJECT]", "[LOCATION]", "[WORKFLOW]").toString();
   Workflow response = workflowsClient.getWorkflow(name);
 }
 
Parameter
NameDescription
nameString

Required. Name of the workflow for which information should be retrieved. Format: projects/{project}/locations/{location}/workflows/{workflow}

Returns
TypeDescription
Workflow

getWorkflowCallable()

public final UnaryCallable<GetWorkflowRequest,Workflow> getWorkflowCallable()

Gets details of a single workflow.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   GetWorkflowRequest request =
       GetWorkflowRequest.newBuilder()
           .setName(WorkflowName.of("[PROJECT]", "[LOCATION]", "[WORKFLOW]").toString())
           .setRevisionId("revisionId-1507445162")
           .build();
   ApiFuture<Workflow> future = workflowsClient.getWorkflowCallable().futureCall(request);
   // Do something.
   Workflow response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<GetWorkflowRequest,Workflow>

isShutdown()

public boolean isShutdown()
Returns
TypeDescription
boolean

isTerminated()

public boolean isTerminated()
Returns
TypeDescription
boolean

listLocations(ListLocationsRequest request)

public final WorkflowsClient.ListLocationsPagedResponse listLocations(ListLocationsRequest request)

Lists information about the supported locations for this service.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   ListLocationsRequest request =
       ListLocationsRequest.newBuilder()
           .setName("name3373707")
           .setFilter("filter-1274492040")
           .setPageSize(883849137)
           .setPageToken("pageToken873572522")
           .build();
   for (Location element : workflowsClient.listLocations(request).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameter
NameDescription
requestcom.google.cloud.location.ListLocationsRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
WorkflowsClient.ListLocationsPagedResponse

listLocationsCallable()

public final UnaryCallable<ListLocationsRequest,ListLocationsResponse> listLocationsCallable()

Lists information about the supported locations for this service.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   ListLocationsRequest request =
       ListLocationsRequest.newBuilder()
           .setName("name3373707")
           .setFilter("filter-1274492040")
           .setPageSize(883849137)
           .setPageToken("pageToken873572522")
           .build();
   while (true) {
     ListLocationsResponse response = workflowsClient.listLocationsCallable().call(request);
     for (Location element : response.getLocationsList()) {
       // doThingsWith(element);
     }
     String nextPageToken = response.getNextPageToken();
     if (!Strings.isNullOrEmpty(nextPageToken)) {
       request = request.toBuilder().setPageToken(nextPageToken).build();
     } else {
       break;
     }
   }
 }
 
Returns
TypeDescription
UnaryCallable<com.google.cloud.location.ListLocationsRequest,com.google.cloud.location.ListLocationsResponse>

listLocationsPagedCallable()

public final UnaryCallable<ListLocationsRequest,WorkflowsClient.ListLocationsPagedResponse> listLocationsPagedCallable()

Lists information about the supported locations for this service.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   ListLocationsRequest request =
       ListLocationsRequest.newBuilder()
           .setName("name3373707")
           .setFilter("filter-1274492040")
           .setPageSize(883849137)
           .setPageToken("pageToken873572522")
           .build();
   ApiFuture<Location> future = workflowsClient.listLocationsPagedCallable().futureCall(request);
   // Do something.
   for (Location element : future.get().iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Returns
TypeDescription
UnaryCallable<com.google.cloud.location.ListLocationsRequest,ListLocationsPagedResponse>

listWorkflows(ListWorkflowsRequest request)

public final WorkflowsClient.ListWorkflowsPagedResponse listWorkflows(ListWorkflowsRequest request)

Lists workflows in a given project and location. The default order is not specified.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   ListWorkflowsRequest request =
       ListWorkflowsRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setPageSize(883849137)
           .setPageToken("pageToken873572522")
           .setFilter("filter-1274492040")
           .setOrderBy("orderBy-1207110587")
           .build();
   for (Workflow element : workflowsClient.listWorkflows(request).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameter
NameDescription
requestListWorkflowsRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
WorkflowsClient.ListWorkflowsPagedResponse

listWorkflows(LocationName parent)

public final WorkflowsClient.ListWorkflowsPagedResponse listWorkflows(LocationName parent)

Lists workflows in a given project and location. The default order is not specified.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]");
   for (Workflow element : workflowsClient.listWorkflows(parent).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameter
NameDescription
parentLocationName

Required. Project and location from which the workflows should be listed. Format: projects/{project}/locations/{location}

Returns
TypeDescription
WorkflowsClient.ListWorkflowsPagedResponse

listWorkflows(String parent)

public final WorkflowsClient.ListWorkflowsPagedResponse listWorkflows(String parent)

Lists workflows in a given project and location. The default order is not specified.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   String parent = LocationName.of("[PROJECT]", "[LOCATION]").toString();
   for (Workflow element : workflowsClient.listWorkflows(parent).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameter
NameDescription
parentString

Required. Project and location from which the workflows should be listed. Format: projects/{project}/locations/{location}

Returns
TypeDescription
WorkflowsClient.ListWorkflowsPagedResponse

listWorkflowsCallable()

public final UnaryCallable<ListWorkflowsRequest,ListWorkflowsResponse> listWorkflowsCallable()

Lists workflows in a given project and location. The default order is not specified.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   ListWorkflowsRequest request =
       ListWorkflowsRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setPageSize(883849137)
           .setPageToken("pageToken873572522")
           .setFilter("filter-1274492040")
           .setOrderBy("orderBy-1207110587")
           .build();
   while (true) {
     ListWorkflowsResponse response = workflowsClient.listWorkflowsCallable().call(request);
     for (Workflow element : response.getWorkflowsList()) {
       // doThingsWith(element);
     }
     String nextPageToken = response.getNextPageToken();
     if (!Strings.isNullOrEmpty(nextPageToken)) {
       request = request.toBuilder().setPageToken(nextPageToken).build();
     } else {
       break;
     }
   }
 }
 
Returns
TypeDescription
UnaryCallable<ListWorkflowsRequest,ListWorkflowsResponse>

listWorkflowsPagedCallable()

public final UnaryCallable<ListWorkflowsRequest,WorkflowsClient.ListWorkflowsPagedResponse> listWorkflowsPagedCallable()

Lists workflows in a given project and location. The default order is not specified.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   ListWorkflowsRequest request =
       ListWorkflowsRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setPageSize(883849137)
           .setPageToken("pageToken873572522")
           .setFilter("filter-1274492040")
           .setOrderBy("orderBy-1207110587")
           .build();
   ApiFuture<Workflow> future = workflowsClient.listWorkflowsPagedCallable().futureCall(request);
   // Do something.
   for (Workflow element : future.get().iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Returns
TypeDescription
UnaryCallable<ListWorkflowsRequest,ListWorkflowsPagedResponse>

shutdown()

public void shutdown()

shutdownNow()

public void shutdownNow()

updateWorkflowAsync(UpdateWorkflowRequest request)

public final OperationFuture<Workflow,OperationMetadata> updateWorkflowAsync(UpdateWorkflowRequest request)

Updates an existing workflow. Running this method has no impact on already running executions of the workflow. A new revision of the workflow might be created as a result of a successful update operation. In that case, the new revision is used in new workflow executions.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   UpdateWorkflowRequest request =
       UpdateWorkflowRequest.newBuilder()
           .setWorkflow(Workflow.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   Workflow response = workflowsClient.updateWorkflowAsync(request).get();
 }
 
Parameter
NameDescription
requestUpdateWorkflowRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
OperationFuture<Workflow,OperationMetadata>

updateWorkflowAsync(Workflow workflow, FieldMask updateMask)

public final OperationFuture<Workflow,OperationMetadata> updateWorkflowAsync(Workflow workflow, FieldMask updateMask)

Updates an existing workflow. Running this method has no impact on already running executions of the workflow. A new revision of the workflow might be created as a result of a successful update operation. In that case, the new revision is used in new workflow executions.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   Workflow workflow = Workflow.newBuilder().build();
   FieldMask updateMask = FieldMask.newBuilder().build();
   Workflow response = workflowsClient.updateWorkflowAsync(workflow, updateMask).get();
 }
 
Parameters
NameDescription
workflowWorkflow

Required. Workflow to be updated.

updateMaskFieldMask

List of fields to be updated. If not present, the entire workflow will be updated.

Returns
TypeDescription
OperationFuture<Workflow,OperationMetadata>

updateWorkflowCallable()

public final UnaryCallable<UpdateWorkflowRequest,Operation> updateWorkflowCallable()

Updates an existing workflow. Running this method has no impact on already running executions of the workflow. A new revision of the workflow might be created as a result of a successful update operation. In that case, the new revision is used in new workflow executions.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   UpdateWorkflowRequest request =
       UpdateWorkflowRequest.newBuilder()
           .setWorkflow(Workflow.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   ApiFuture<Operation> future = workflowsClient.updateWorkflowCallable().futureCall(request);
   // Do something.
   Operation response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<UpdateWorkflowRequest,Operation>

updateWorkflowOperationCallable()

public final OperationCallable<UpdateWorkflowRequest,Workflow,OperationMetadata> updateWorkflowOperationCallable()

Updates an existing workflow. Running this method has no impact on already running executions of the workflow. A new revision of the workflow might be created as a result of a successful update operation. In that case, the new revision is used in new workflow executions.

Sample code:


 // This snippet has been automatically generated and should be regarded as a code template only.
 // It will require modifications to work:
 // - It may require correct/in-range values for request initialization.
 // - It may require specifying regional endpoints when creating the service client as shown in
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 try (WorkflowsClient workflowsClient = WorkflowsClient.create()) {
   UpdateWorkflowRequest request =
       UpdateWorkflowRequest.newBuilder()
           .setWorkflow(Workflow.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   OperationFuture<Workflow, OperationMetadata> future =
       workflowsClient.updateWorkflowOperationCallable().futureCall(request);
   // Do something.
   Workflow response = future.get();
 }
 
Returns
TypeDescription
OperationCallable<UpdateWorkflowRequest,Workflow,OperationMetadata>