Class FunctionServiceClient (2.5.0)

public class FunctionServiceClient implements BackgroundResource

Service Description: Google Cloud Functions is used to deploy functions that are executed by Google in response to various events. Data connected with that event is passed to a function as the input data.

A **function** is a resource which describes a function that should be executed and how it is triggered.

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 for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   FunctionName name = FunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]");
   Function response = functionServiceClient.getFunction(name);
 }
 

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

The surface of this class includes several types of Java methods for each of the API's methods:

  1. A "flattened" method. With this type of method, the fields of the request type have been converted into function parameters. It may be the case that not all fields are available as parameters, and not every API method will have a flattened method entry point.
  2. A "request object" method. This type of method only takes one parameter, a request object, which must be constructed before the call. Not every API method will have a request object method.
  3. A "callable" method. This type of method takes no parameters and returns an immutable API callable object, which can be used to initiate calls to the service.

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 FunctionServiceSettings to create(). For example:

To customize credentials:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 FunctionServiceSettings functionServiceSettings =
     FunctionServiceSettings.newBuilder()
         .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
         .build();
 FunctionServiceClient functionServiceClient =
     FunctionServiceClient.create(functionServiceSettings);
 

To customize the endpoint:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 FunctionServiceSettings functionServiceSettings =
     FunctionServiceSettings.newBuilder().setEndpoint(myEndpoint).build();
 FunctionServiceClient functionServiceClient =
     FunctionServiceClient.create(functionServiceSettings);
 

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


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 FunctionServiceSettings functionServiceSettings =
     FunctionServiceSettings.newBuilder()
         .setTransportChannelProvider(
             FunctionServiceSettings.defaultHttpJsonTransportProviderBuilder().build())
         .build();
 FunctionServiceClient functionServiceClient =
     FunctionServiceClient.create(functionServiceSettings);
 

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

Inheritance

java.lang.Object > FunctionServiceClient

Implements

BackgroundResource

Static Methods

create()

public static final FunctionServiceClient create()

Constructs an instance of FunctionServiceClient with default settings.

Returns
TypeDescription
FunctionServiceClient
Exceptions
TypeDescription
IOException

create(FunctionServiceSettings settings)

public static final FunctionServiceClient create(FunctionServiceSettings settings)

Constructs an instance of FunctionServiceClient, 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
settingsFunctionServiceSettings
Returns
TypeDescription
FunctionServiceClient
Exceptions
TypeDescription
IOException

create(FunctionServiceStub stub)

public static final FunctionServiceClient create(FunctionServiceStub stub)

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

Parameter
NameDescription
stubFunctionServiceStub
Returns
TypeDescription
FunctionServiceClient

Constructors

FunctionServiceClient(FunctionServiceSettings settings)

protected FunctionServiceClient(FunctionServiceSettings settings)

Constructs an instance of FunctionServiceClient, 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
settingsFunctionServiceSettings

FunctionServiceClient(FunctionServiceStub stub)

protected FunctionServiceClient(FunctionServiceStub stub)
Parameter
NameDescription
stubFunctionServiceStub

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()

createFunctionAsync(CreateFunctionRequest request)

public final OperationFuture<Function,OperationMetadata> createFunctionAsync(CreateFunctionRequest request)

Creates a new function. If a function with the given name already exists in the specified project, the long running operation will return ALREADY_EXISTS error.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   CreateFunctionRequest request =
       CreateFunctionRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setFunction(Function.newBuilder().build())
           .setFunctionId("functionId-62789869")
           .build();
   Function response = functionServiceClient.createFunctionAsync(request).get();
 }
 
Parameter
NameDescription
requestCreateFunctionRequest

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

Returns
TypeDescription
OperationFuture<Function,OperationMetadata>

createFunctionAsync(LocationName parent, Function function, String functionId)

public final OperationFuture<Function,OperationMetadata> createFunctionAsync(LocationName parent, Function function, String functionId)

Creates a new function. If a function with the given name already exists in the specified project, the long running operation will return ALREADY_EXISTS error.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]");
   Function function = Function.newBuilder().build();
   String functionId = "functionId-62789869";
   Function response =
       functionServiceClient.createFunctionAsync(parent, function, functionId).get();
 }
 
Parameters
NameDescription
parentLocationName

Required. The project and location in which the function should be created, specified in the format projects/*/locations/*

functionFunction

Required. Function to be created.

functionIdString

The ID to use for the function, which will become the final component of the function's resource name.

This value should be 4-63 characters, and valid characters are /a-z-/.

Returns
TypeDescription
OperationFuture<Function,OperationMetadata>

createFunctionAsync(String parent, Function function, String functionId)

public final OperationFuture<Function,OperationMetadata> createFunctionAsync(String parent, Function function, String functionId)

Creates a new function. If a function with the given name already exists in the specified project, the long running operation will return ALREADY_EXISTS error.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   String parent = LocationName.of("[PROJECT]", "[LOCATION]").toString();
   Function function = Function.newBuilder().build();
   String functionId = "functionId-62789869";
   Function response =
       functionServiceClient.createFunctionAsync(parent, function, functionId).get();
 }
 
Parameters
NameDescription
parentString

Required. The project and location in which the function should be created, specified in the format projects/*/locations/*

functionFunction

Required. Function to be created.

functionIdString

The ID to use for the function, which will become the final component of the function's resource name.

This value should be 4-63 characters, and valid characters are /a-z-/.

Returns
TypeDescription
OperationFuture<Function,OperationMetadata>

createFunctionCallable()

public final UnaryCallable<CreateFunctionRequest,Operation> createFunctionCallable()

Creates a new function. If a function with the given name already exists in the specified project, the long running operation will return ALREADY_EXISTS error.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   CreateFunctionRequest request =
       CreateFunctionRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setFunction(Function.newBuilder().build())
           .setFunctionId("functionId-62789869")
           .build();
   ApiFuture<Operation> future =
       functionServiceClient.createFunctionCallable().futureCall(request);
   // Do something.
   Operation response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<CreateFunctionRequest,Operation>

createFunctionOperationCallable()

public final OperationCallable<CreateFunctionRequest,Function,OperationMetadata> createFunctionOperationCallable()

Creates a new function. If a function with the given name already exists in the specified project, the long running operation will return ALREADY_EXISTS error.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   CreateFunctionRequest request =
       CreateFunctionRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setFunction(Function.newBuilder().build())
           .setFunctionId("functionId-62789869")
           .build();
   OperationFuture<Function, OperationMetadata> future =
       functionServiceClient.createFunctionOperationCallable().futureCall(request);
   // Do something.
   Function response = future.get();
 }
 
Returns
TypeDescription
OperationCallable<CreateFunctionRequest,Function,OperationMetadata>

deleteFunctionAsync(DeleteFunctionRequest request)

public final OperationFuture<Empty,OperationMetadata> deleteFunctionAsync(DeleteFunctionRequest request)

Deletes a function with the given name from the specified project. If the given function is used by some trigger, the trigger will be updated to remove this function.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   DeleteFunctionRequest request =
       DeleteFunctionRequest.newBuilder()
           .setName(FunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .build();
   functionServiceClient.deleteFunctionAsync(request).get();
 }
 
Parameter
NameDescription
requestDeleteFunctionRequest

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

Returns
TypeDescription
OperationFuture<Empty,OperationMetadata>

deleteFunctionAsync(FunctionName name)

public final OperationFuture<Empty,OperationMetadata> deleteFunctionAsync(FunctionName name)

Deletes a function with the given name from the specified project. If the given function is used by some trigger, the trigger will be updated to remove this function.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   FunctionName name = FunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]");
   functionServiceClient.deleteFunctionAsync(name).get();
 }
 
Parameter
NameDescription
nameFunctionName

Required. The name of the function which should be deleted.

Returns
TypeDescription
OperationFuture<Empty,OperationMetadata>

deleteFunctionAsync(String name)

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

Deletes a function with the given name from the specified project. If the given function is used by some trigger, the trigger will be updated to remove this function.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   String name = FunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString();
   functionServiceClient.deleteFunctionAsync(name).get();
 }
 
Parameter
NameDescription
nameString

Required. The name of the function which should be deleted.

Returns
TypeDescription
OperationFuture<Empty,OperationMetadata>

deleteFunctionCallable()

public final UnaryCallable<DeleteFunctionRequest,Operation> deleteFunctionCallable()

Deletes a function with the given name from the specified project. If the given function is used by some trigger, the trigger will be updated to remove this function.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   DeleteFunctionRequest request =
       DeleteFunctionRequest.newBuilder()
           .setName(FunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .build();
   ApiFuture<Operation> future =
       functionServiceClient.deleteFunctionCallable().futureCall(request);
   // Do something.
   future.get();
 }
 
Returns
TypeDescription
UnaryCallable<DeleteFunctionRequest,Operation>

deleteFunctionOperationCallable()

public final OperationCallable<DeleteFunctionRequest,Empty,OperationMetadata> deleteFunctionOperationCallable()

Deletes a function with the given name from the specified project. If the given function is used by some trigger, the trigger will be updated to remove this function.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   DeleteFunctionRequest request =
       DeleteFunctionRequest.newBuilder()
           .setName(FunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .build();
   OperationFuture<Empty, OperationMetadata> future =
       functionServiceClient.deleteFunctionOperationCallable().futureCall(request);
   // Do something.
   future.get();
 }
 
Returns
TypeDescription
OperationCallable<DeleteFunctionRequest,Empty,OperationMetadata>

generateDownloadUrl(GenerateDownloadUrlRequest request)

public final GenerateDownloadUrlResponse generateDownloadUrl(GenerateDownloadUrlRequest request)

Returns a signed URL for downloading deployed function source code. The URL is only valid for a limited period and should be used within 30 minutes of generation. For more information about the signed URL usage see: https://cloud.google.com/storage/docs/access-control/signed-urls

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   GenerateDownloadUrlRequest request =
       GenerateDownloadUrlRequest.newBuilder()
           .setName(FunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .build();
   GenerateDownloadUrlResponse response = functionServiceClient.generateDownloadUrl(request);
 }
 
Parameter
NameDescription
requestGenerateDownloadUrlRequest

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

Returns
TypeDescription
GenerateDownloadUrlResponse

generateDownloadUrlCallable()

public final UnaryCallable<GenerateDownloadUrlRequest,GenerateDownloadUrlResponse> generateDownloadUrlCallable()

Returns a signed URL for downloading deployed function source code. The URL is only valid for a limited period and should be used within 30 minutes of generation. For more information about the signed URL usage see: https://cloud.google.com/storage/docs/access-control/signed-urls

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   GenerateDownloadUrlRequest request =
       GenerateDownloadUrlRequest.newBuilder()
           .setName(FunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .build();
   ApiFuture<GenerateDownloadUrlResponse> future =
       functionServiceClient.generateDownloadUrlCallable().futureCall(request);
   // Do something.
   GenerateDownloadUrlResponse response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<GenerateDownloadUrlRequest,GenerateDownloadUrlResponse>

generateUploadUrl(GenerateUploadUrlRequest request)

public final GenerateUploadUrlResponse generateUploadUrl(GenerateUploadUrlRequest request)

Returns a signed URL for uploading a function source code. For more information about the signed URL usage see: https://cloud.google.com/storage/docs/access-control/signed-urls. Once the function source code upload is complete, the used signed URL should be provided in CreateFunction or UpdateFunction request as a reference to the function source code.

When uploading source code to the generated signed URL, please follow these restrictions:

  • Source file type should be a zip file.
  • No credentials should be attached - the signed URLs provide access to the target bucket using internal service identity; if credentials were attached, the identity from the credentials would be used, but that identity does not have permissions to upload files to the URL.

When making a HTTP PUT request, these two headers need to be specified:

  • content-type: application/zip

And this header SHOULD NOT be specified:

  • Authorization: Bearer YOUR_TOKEN

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   GenerateUploadUrlRequest request =
       GenerateUploadUrlRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .build();
   GenerateUploadUrlResponse response = functionServiceClient.generateUploadUrl(request);
 }
 
Parameter
NameDescription
requestGenerateUploadUrlRequest

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

Returns
TypeDescription
GenerateUploadUrlResponse

generateUploadUrlCallable()

public final UnaryCallable<GenerateUploadUrlRequest,GenerateUploadUrlResponse> generateUploadUrlCallable()

Returns a signed URL for uploading a function source code. For more information about the signed URL usage see: https://cloud.google.com/storage/docs/access-control/signed-urls. Once the function source code upload is complete, the used signed URL should be provided in CreateFunction or UpdateFunction request as a reference to the function source code.

When uploading source code to the generated signed URL, please follow these restrictions:

  • Source file type should be a zip file.
  • No credentials should be attached - the signed URLs provide access to the target bucket using internal service identity; if credentials were attached, the identity from the credentials would be used, but that identity does not have permissions to upload files to the URL.

When making a HTTP PUT request, these two headers need to be specified:

  • content-type: application/zip

And this header SHOULD NOT be specified:

  • Authorization: Bearer YOUR_TOKEN

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   GenerateUploadUrlRequest request =
       GenerateUploadUrlRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .build();
   ApiFuture<GenerateUploadUrlResponse> future =
       functionServiceClient.generateUploadUrlCallable().futureCall(request);
   // Do something.
   GenerateUploadUrlResponse response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<GenerateUploadUrlRequest,GenerateUploadUrlResponse>

getFunction(FunctionName name)

public final Function getFunction(FunctionName name)

Returns a function with the given name from the requested project.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   FunctionName name = FunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]");
   Function response = functionServiceClient.getFunction(name);
 }
 
Parameter
NameDescription
nameFunctionName

Required. The name of the function which details should be obtained.

Returns
TypeDescription
Function

getFunction(GetFunctionRequest request)

public final Function getFunction(GetFunctionRequest request)

Returns a function with the given name from the requested project.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   GetFunctionRequest request =
       GetFunctionRequest.newBuilder()
           .setName(FunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .build();
   Function response = functionServiceClient.getFunction(request);
 }
 
Parameter
NameDescription
requestGetFunctionRequest

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

Returns
TypeDescription
Function

getFunction(String name)

public final Function getFunction(String name)

Returns a function with the given name from the requested project.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   String name = FunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString();
   Function response = functionServiceClient.getFunction(name);
 }
 
Parameter
NameDescription
nameString

Required. The name of the function which details should be obtained.

Returns
TypeDescription
Function

getFunctionCallable()

public final UnaryCallable<GetFunctionRequest,Function> getFunctionCallable()

Returns a function with the given name from the requested project.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   GetFunctionRequest request =
       GetFunctionRequest.newBuilder()
           .setName(FunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .build();
   ApiFuture<Function> future = functionServiceClient.getFunctionCallable().futureCall(request);
   // Do something.
   Function response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<GetFunctionRequest,Function>

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

getIamPolicy(GetIamPolicyRequest request)

public final Policy getIamPolicy(GetIamPolicyRequest request)

Gets the access control policy for a resource. Returns an empty policyif the resource exists and does not have a policy set.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   GetIamPolicyRequest request =
       GetIamPolicyRequest.newBuilder()
           .setResource(FunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .setOptions(GetPolicyOptions.newBuilder().build())
           .build();
   Policy response = functionServiceClient.getIamPolicy(request);
 }
 
Parameter
NameDescription
requestcom.google.iam.v1.GetIamPolicyRequest

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

Returns
TypeDescription
com.google.iam.v1.Policy

getIamPolicyCallable()

public final UnaryCallable<GetIamPolicyRequest,Policy> getIamPolicyCallable()

Gets the access control policy for a resource. Returns an empty policyif the resource exists and does not have a policy set.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   GetIamPolicyRequest request =
       GetIamPolicyRequest.newBuilder()
           .setResource(FunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .setOptions(GetPolicyOptions.newBuilder().build())
           .build();
   ApiFuture<Policy> future = functionServiceClient.getIamPolicyCallable().futureCall(request);
   // Do something.
   Policy response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<com.google.iam.v1.GetIamPolicyRequest,com.google.iam.v1.Policy>

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 FunctionServiceSettings getSettings()
Returns
TypeDescription
FunctionServiceSettings

getStub()

public FunctionServiceStub getStub()
Returns
TypeDescription
FunctionServiceStub

isShutdown()

public boolean isShutdown()
Returns
TypeDescription
boolean

isTerminated()

public boolean isTerminated()
Returns
TypeDescription
boolean

listFunctions(ListFunctionsRequest request)

public final FunctionServiceClient.ListFunctionsPagedResponse listFunctions(ListFunctionsRequest request)

Returns a list of functions that belong to the requested project.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   ListFunctionsRequest request =
       ListFunctionsRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setPageSize(883849137)
           .setPageToken("pageToken873572522")
           .setFilter("filter-1274492040")
           .setOrderBy("orderBy-1207110587")
           .build();
   for (Function element : functionServiceClient.listFunctions(request).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameter
NameDescription
requestListFunctionsRequest

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

Returns
TypeDescription
FunctionServiceClient.ListFunctionsPagedResponse

listFunctions(LocationName parent)

public final FunctionServiceClient.ListFunctionsPagedResponse listFunctions(LocationName parent)

Returns a list of functions that belong to the requested project.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]");
   for (Function element : functionServiceClient.listFunctions(parent).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameter
NameDescription
parentLocationName

Required. The project and location from which the function should be listed, specified in the format projects/*/locations/* If you want to list functions in all locations, use "-" in place of a location. When listing functions in all locations, if one or more location(s) are unreachable, the response will contain functions from all reachable locations along with the names of any unreachable locations.

Returns
TypeDescription
FunctionServiceClient.ListFunctionsPagedResponse

listFunctions(String parent)

public final FunctionServiceClient.ListFunctionsPagedResponse listFunctions(String parent)

Returns a list of functions that belong to the requested project.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   String parent = LocationName.of("[PROJECT]", "[LOCATION]").toString();
   for (Function element : functionServiceClient.listFunctions(parent).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameter
NameDescription
parentString

Required. The project and location from which the function should be listed, specified in the format projects/*/locations/* If you want to list functions in all locations, use "-" in place of a location. When listing functions in all locations, if one or more location(s) are unreachable, the response will contain functions from all reachable locations along with the names of any unreachable locations.

Returns
TypeDescription
FunctionServiceClient.ListFunctionsPagedResponse

listFunctionsCallable()

public final UnaryCallable<ListFunctionsRequest,ListFunctionsResponse> listFunctionsCallable()

Returns a list of functions that belong to the requested project.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   ListFunctionsRequest request =
       ListFunctionsRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setPageSize(883849137)
           .setPageToken("pageToken873572522")
           .setFilter("filter-1274492040")
           .setOrderBy("orderBy-1207110587")
           .build();
   while (true) {
     ListFunctionsResponse response =
         functionServiceClient.listFunctionsCallable().call(request);
     for (Function element : response.getFunctionsList()) {
       // doThingsWith(element);
     }
     String nextPageToken = response.getNextPageToken();
     if (!Strings.isNullOrEmpty(nextPageToken)) {
       request = request.toBuilder().setPageToken(nextPageToken).build();
     } else {
       break;
     }
   }
 }
 
Returns
TypeDescription
UnaryCallable<ListFunctionsRequest,ListFunctionsResponse>

listFunctionsPagedCallable()

public final UnaryCallable<ListFunctionsRequest,FunctionServiceClient.ListFunctionsPagedResponse> listFunctionsPagedCallable()

Returns a list of functions that belong to the requested project.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   ListFunctionsRequest request =
       ListFunctionsRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setPageSize(883849137)
           .setPageToken("pageToken873572522")
           .setFilter("filter-1274492040")
           .setOrderBy("orderBy-1207110587")
           .build();
   ApiFuture<Function> future =
       functionServiceClient.listFunctionsPagedCallable().futureCall(request);
   // Do something.
   for (Function element : future.get().iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Returns
TypeDescription
UnaryCallable<ListFunctionsRequest,ListFunctionsPagedResponse>

listLocations(ListLocationsRequest request)

public final FunctionServiceClient.ListLocationsPagedResponse listLocations(ListLocationsRequest request)

Lists information about the supported locations for this service.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   ListLocationsRequest request =
       ListLocationsRequest.newBuilder()
           .setName("name3373707")
           .setFilter("filter-1274492040")
           .setPageSize(883849137)
           .setPageToken("pageToken873572522")
           .build();
   for (Location element : functionServiceClient.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
FunctionServiceClient.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 for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   ListLocationsRequest request =
       ListLocationsRequest.newBuilder()
           .setName("name3373707")
           .setFilter("filter-1274492040")
           .setPageSize(883849137)
           .setPageToken("pageToken873572522")
           .build();
   while (true) {
     ListLocationsResponse response =
         functionServiceClient.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,FunctionServiceClient.ListLocationsPagedResponse> listLocationsPagedCallable()

Lists information about the supported locations for this service.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   ListLocationsRequest request =
       ListLocationsRequest.newBuilder()
           .setName("name3373707")
           .setFilter("filter-1274492040")
           .setPageSize(883849137)
           .setPageToken("pageToken873572522")
           .build();
   ApiFuture<Location> future =
       functionServiceClient.listLocationsPagedCallable().futureCall(request);
   // Do something.
   for (Location element : future.get().iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Returns
TypeDescription
UnaryCallable<com.google.cloud.location.ListLocationsRequest,ListLocationsPagedResponse>

listRuntimes(ListRuntimesRequest request)

public final ListRuntimesResponse listRuntimes(ListRuntimesRequest request)

Returns a list of runtimes that are supported for the requested project.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   ListRuntimesRequest request =
       ListRuntimesRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setFilter("filter-1274492040")
           .build();
   ListRuntimesResponse response = functionServiceClient.listRuntimes(request);
 }
 
Parameter
NameDescription
requestListRuntimesRequest

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

Returns
TypeDescription
ListRuntimesResponse

listRuntimes(LocationName parent)

public final ListRuntimesResponse listRuntimes(LocationName parent)

Returns a list of runtimes that are supported for the requested project.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]");
   ListRuntimesResponse response = functionServiceClient.listRuntimes(parent);
 }
 
Parameter
NameDescription
parentLocationName

Required. The project and location from which the runtimes should be listed, specified in the format projects/*/locations/*

Returns
TypeDescription
ListRuntimesResponse

listRuntimes(String parent)

public final ListRuntimesResponse listRuntimes(String parent)

Returns a list of runtimes that are supported for the requested project.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   String parent = LocationName.of("[PROJECT]", "[LOCATION]").toString();
   ListRuntimesResponse response = functionServiceClient.listRuntimes(parent);
 }
 
Parameter
NameDescription
parentString

Required. The project and location from which the runtimes should be listed, specified in the format projects/*/locations/*

Returns
TypeDescription
ListRuntimesResponse

listRuntimesCallable()

public final UnaryCallable<ListRuntimesRequest,ListRuntimesResponse> listRuntimesCallable()

Returns a list of runtimes that are supported for the requested project.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   ListRuntimesRequest request =
       ListRuntimesRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setFilter("filter-1274492040")
           .build();
   ApiFuture<ListRuntimesResponse> future =
       functionServiceClient.listRuntimesCallable().futureCall(request);
   // Do something.
   ListRuntimesResponse response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<ListRuntimesRequest,ListRuntimesResponse>

setIamPolicy(SetIamPolicyRequest request)

public final Policy setIamPolicy(SetIamPolicyRequest request)

Sets the access control policy on the specified resource. Replacesany existing policy.

Can return NOT_FOUND, INVALID_ARGUMENT, and PERMISSION_DENIEDerrors.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   SetIamPolicyRequest request =
       SetIamPolicyRequest.newBuilder()
           .setResource(FunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .setPolicy(Policy.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   Policy response = functionServiceClient.setIamPolicy(request);
 }
 
Parameter
NameDescription
requestcom.google.iam.v1.SetIamPolicyRequest

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

Returns
TypeDescription
com.google.iam.v1.Policy

setIamPolicyCallable()

public final UnaryCallable<SetIamPolicyRequest,Policy> setIamPolicyCallable()

Sets the access control policy on the specified resource. Replacesany existing policy.

Can return NOT_FOUND, INVALID_ARGUMENT, and PERMISSION_DENIEDerrors.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   SetIamPolicyRequest request =
       SetIamPolicyRequest.newBuilder()
           .setResource(FunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .setPolicy(Policy.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   ApiFuture<Policy> future = functionServiceClient.setIamPolicyCallable().futureCall(request);
   // Do something.
   Policy response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<com.google.iam.v1.SetIamPolicyRequest,com.google.iam.v1.Policy>

shutdown()

public void shutdown()

shutdownNow()

public void shutdownNow()

testIamPermissions(TestIamPermissionsRequest request)

public final TestIamPermissionsResponse testIamPermissions(TestIamPermissionsRequest request)

Returns permissions that a caller has on the specified resource. If theresource does not exist, this will return an empty set ofpermissions, not a NOT_FOUND error.

Note: This operation is designed to be used for buildingpermission-aware UIs and command-line tools, not for authorizationchecking. This operation may "fail open" without warning.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   TestIamPermissionsRequest request =
       TestIamPermissionsRequest.newBuilder()
           .setResource(FunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .addAllPermissions(new ArrayList<String>())
           .build();
   TestIamPermissionsResponse response = functionServiceClient.testIamPermissions(request);
 }
 
Parameter
NameDescription
requestcom.google.iam.v1.TestIamPermissionsRequest

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

Returns
TypeDescription
com.google.iam.v1.TestIamPermissionsResponse

testIamPermissionsCallable()

public final UnaryCallable<TestIamPermissionsRequest,TestIamPermissionsResponse> testIamPermissionsCallable()

Returns permissions that a caller has on the specified resource. If theresource does not exist, this will return an empty set ofpermissions, not a NOT_FOUND error.

Note: This operation is designed to be used for buildingpermission-aware UIs and command-line tools, not for authorizationchecking. This operation may "fail open" without warning.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   TestIamPermissionsRequest request =
       TestIamPermissionsRequest.newBuilder()
           .setResource(FunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .addAllPermissions(new ArrayList<String>())
           .build();
   ApiFuture<TestIamPermissionsResponse> future =
       functionServiceClient.testIamPermissionsCallable().futureCall(request);
   // Do something.
   TestIamPermissionsResponse response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<com.google.iam.v1.TestIamPermissionsRequest,com.google.iam.v1.TestIamPermissionsResponse>

updateFunctionAsync(Function function, FieldMask updateMask)

public final OperationFuture<Function,OperationMetadata> updateFunctionAsync(Function function, FieldMask updateMask)

Updates existing function.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   Function function = Function.newBuilder().build();
   FieldMask updateMask = FieldMask.newBuilder().build();
   Function response = functionServiceClient.updateFunctionAsync(function, updateMask).get();
 }
 
Parameters
NameDescription
functionFunction

Required. New version of the function.

updateMaskFieldMask

The list of fields to be updated. If no field mask is provided, all provided fields in the request will be updated.

Returns
TypeDescription
OperationFuture<Function,OperationMetadata>

updateFunctionAsync(UpdateFunctionRequest request)

public final OperationFuture<Function,OperationMetadata> updateFunctionAsync(UpdateFunctionRequest request)

Updates existing function.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   UpdateFunctionRequest request =
       UpdateFunctionRequest.newBuilder()
           .setFunction(Function.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   Function response = functionServiceClient.updateFunctionAsync(request).get();
 }
 
Parameter
NameDescription
requestUpdateFunctionRequest

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

Returns
TypeDescription
OperationFuture<Function,OperationMetadata>

updateFunctionCallable()

public final UnaryCallable<UpdateFunctionRequest,Operation> updateFunctionCallable()

Updates existing function.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   UpdateFunctionRequest request =
       UpdateFunctionRequest.newBuilder()
           .setFunction(Function.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   ApiFuture<Operation> future =
       functionServiceClient.updateFunctionCallable().futureCall(request);
   // Do something.
   Operation response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<UpdateFunctionRequest,Operation>

updateFunctionOperationCallable()

public final OperationCallable<UpdateFunctionRequest,Function,OperationMetadata> updateFunctionOperationCallable()

Updates existing function.

Sample code:


 // This snippet has been automatically generated for illustrative purposes only.
 // It may require modifications to work in your environment.
 try (FunctionServiceClient functionServiceClient = FunctionServiceClient.create()) {
   UpdateFunctionRequest request =
       UpdateFunctionRequest.newBuilder()
           .setFunction(Function.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   OperationFuture<Function, OperationMetadata> future =
       functionServiceClient.updateFunctionOperationCallable().futureCall(request);
   // Do something.
   Function response = future.get();
 }
 
Returns
TypeDescription
OperationCallable<UpdateFunctionRequest,Function,OperationMetadata>