Class CloudFunctionsServiceClient (2.17.0)

public class CloudFunctionsServiceClient implements BackgroundResource

Service Description: A service that application uses to manipulate triggers and functions.

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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   CloudFunctionName name = CloudFunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]");
   CloudFunction response = cloudFunctionsServiceClient.getFunction(name);
 }
 

Note: close() needs to be called on the CloudFunctionsServiceClient 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 CloudFunctionsServiceSettings 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
 CloudFunctionsServiceSettings cloudFunctionsServiceSettings =
     CloudFunctionsServiceSettings.newBuilder()
         .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
         .build();
 CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create(cloudFunctionsServiceSettings);
 

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
 CloudFunctionsServiceSettings cloudFunctionsServiceSettings =
     CloudFunctionsServiceSettings.newBuilder().setEndpoint(myEndpoint).build();
 CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create(cloudFunctionsServiceSettings);
 

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
 CloudFunctionsServiceSettings cloudFunctionsServiceSettings =
     CloudFunctionsServiceSettings.newHttpJsonBuilder().build();
 CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create(cloudFunctionsServiceSettings);
 

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

Inheritance

java.lang.Object > CloudFunctionsServiceClient

Implements

BackgroundResource

Static Methods

create()

public static final CloudFunctionsServiceClient create()

Constructs an instance of CloudFunctionsServiceClient with default settings.

Returns
TypeDescription
CloudFunctionsServiceClient
Exceptions
TypeDescription
IOException

create(CloudFunctionsServiceSettings settings)

public static final CloudFunctionsServiceClient create(CloudFunctionsServiceSettings settings)

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

create(CloudFunctionsServiceStub stub)

public static final CloudFunctionsServiceClient create(CloudFunctionsServiceStub stub)

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

Parameter
NameDescription
stubCloudFunctionsServiceStub
Returns
TypeDescription
CloudFunctionsServiceClient

Constructors

CloudFunctionsServiceClient(CloudFunctionsServiceSettings settings)

protected CloudFunctionsServiceClient(CloudFunctionsServiceSettings settings)

Constructs an instance of CloudFunctionsServiceClient, 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
settingsCloudFunctionsServiceSettings

CloudFunctionsServiceClient(CloudFunctionsServiceStub stub)

protected CloudFunctionsServiceClient(CloudFunctionsServiceStub stub)
Parameter
NameDescription
stubCloudFunctionsServiceStub

Methods

awaitTermination(long duration, TimeUnit unit)

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

callFunction(CallFunctionRequest request)

public final CallFunctionResponse callFunction(CallFunctionRequest request)

Synchronously invokes a deployed Cloud Function. To be used for testing purposes as very limited traffic is allowed. For more information on the actual limits, refer to Rate Limits.

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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   CallFunctionRequest request =
       CallFunctionRequest.newBuilder()
           .setName(CloudFunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .setData("data3076010")
           .build();
   CallFunctionResponse response = cloudFunctionsServiceClient.callFunction(request);
 }
 
Parameter
NameDescription
requestCallFunctionRequest

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

Returns
TypeDescription
CallFunctionResponse

callFunction(CloudFunctionName name, String data)

public final CallFunctionResponse callFunction(CloudFunctionName name, String data)

Synchronously invokes a deployed Cloud Function. To be used for testing purposes as very limited traffic is allowed. For more information on the actual limits, refer to Rate Limits.

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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   CloudFunctionName name = CloudFunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]");
   String data = "data3076010";
   CallFunctionResponse response = cloudFunctionsServiceClient.callFunction(name, data);
 }
 
Parameters
NameDescription
nameCloudFunctionName

Required. The name of the function to be called.

dataString

Required. Input to be passed to the function.

Returns
TypeDescription
CallFunctionResponse

callFunction(String name, String data)

public final CallFunctionResponse callFunction(String name, String data)

Synchronously invokes a deployed Cloud Function. To be used for testing purposes as very limited traffic is allowed. For more information on the actual limits, refer to Rate Limits.

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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   String name = CloudFunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString();
   String data = "data3076010";
   CallFunctionResponse response = cloudFunctionsServiceClient.callFunction(name, data);
 }
 
Parameters
NameDescription
nameString

Required. The name of the function to be called.

dataString

Required. Input to be passed to the function.

Returns
TypeDescription
CallFunctionResponse

callFunctionCallable()

public final UnaryCallable<CallFunctionRequest,CallFunctionResponse> callFunctionCallable()

Synchronously invokes a deployed Cloud Function. To be used for testing purposes as very limited traffic is allowed. For more information on the actual limits, refer to Rate Limits.

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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   CallFunctionRequest request =
       CallFunctionRequest.newBuilder()
           .setName(CloudFunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .setData("data3076010")
           .build();
   ApiFuture<CallFunctionResponse> future =
       cloudFunctionsServiceClient.callFunctionCallable().futureCall(request);
   // Do something.
   CallFunctionResponse response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<CallFunctionRequest,CallFunctionResponse>

close()

public final void close()

createFunctionAsync(CreateFunctionRequest request)

public final OperationFuture<CloudFunction,OperationMetadataV1> 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 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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   CreateFunctionRequest request =
       CreateFunctionRequest.newBuilder()
           .setLocation(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setFunction(CloudFunction.newBuilder().build())
           .build();
   CloudFunction response = cloudFunctionsServiceClient.createFunctionAsync(request).get();
 }
 
Parameter
NameDescription
requestCreateFunctionRequest

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

Returns
TypeDescription
OperationFuture<CloudFunction,OperationMetadataV1>

createFunctionAsync(LocationName location, CloudFunction function)

public final OperationFuture<CloudFunction,OperationMetadataV1> createFunctionAsync(LocationName location, CloudFunction function)

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 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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   LocationName location = LocationName.of("[PROJECT]", "[LOCATION]");
   CloudFunction function = CloudFunction.newBuilder().build();
   CloudFunction response =
       cloudFunctionsServiceClient.createFunctionAsync(location, function).get();
 }
 
Parameters
NameDescription
locationLocationName

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

functionCloudFunction

Required. Function to be created.

Returns
TypeDescription
OperationFuture<CloudFunction,OperationMetadataV1>

createFunctionAsync(String location, CloudFunction function)

public final OperationFuture<CloudFunction,OperationMetadataV1> createFunctionAsync(String location, CloudFunction function)

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 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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   String location = LocationName.of("[PROJECT]", "[LOCATION]").toString();
   CloudFunction function = CloudFunction.newBuilder().build();
   CloudFunction response =
       cloudFunctionsServiceClient.createFunctionAsync(location, function).get();
 }
 
Parameters
NameDescription
locationString

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

functionCloudFunction

Required. Function to be created.

Returns
TypeDescription
OperationFuture<CloudFunction,OperationMetadataV1>

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 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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   CreateFunctionRequest request =
       CreateFunctionRequest.newBuilder()
           .setLocation(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setFunction(CloudFunction.newBuilder().build())
           .build();
   ApiFuture<Operation> future =
       cloudFunctionsServiceClient.createFunctionCallable().futureCall(request);
   // Do something.
   Operation response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<CreateFunctionRequest,Operation>

createFunctionOperationCallable()

public final OperationCallable<CreateFunctionRequest,CloudFunction,OperationMetadataV1> 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 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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   CreateFunctionRequest request =
       CreateFunctionRequest.newBuilder()
           .setLocation(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setFunction(CloudFunction.newBuilder().build())
           .build();
   OperationFuture<CloudFunction, OperationMetadataV1> future =
       cloudFunctionsServiceClient.createFunctionOperationCallable().futureCall(request);
   // Do something.
   CloudFunction response = future.get();
 }
 
Returns
TypeDescription
OperationCallable<CreateFunctionRequest,CloudFunction,OperationMetadataV1>

deleteFunctionAsync(CloudFunctionName name)

public final OperationFuture<Empty,OperationMetadataV1> deleteFunctionAsync(CloudFunctionName 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 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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   CloudFunctionName name = CloudFunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]");
   cloudFunctionsServiceClient.deleteFunctionAsync(name).get();
 }
 
Parameter
NameDescription
nameCloudFunctionName

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

Returns
TypeDescription
OperationFuture<Empty,OperationMetadataV1>

deleteFunctionAsync(DeleteFunctionRequest request)

public final OperationFuture<Empty,OperationMetadataV1> 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 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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   DeleteFunctionRequest request =
       DeleteFunctionRequest.newBuilder()
           .setName(CloudFunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .build();
   cloudFunctionsServiceClient.deleteFunctionAsync(request).get();
 }
 
Parameter
NameDescription
requestDeleteFunctionRequest

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

Returns
TypeDescription
OperationFuture<Empty,OperationMetadataV1>

deleteFunctionAsync(String name)

public final OperationFuture<Empty,OperationMetadataV1> 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 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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   String name = CloudFunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString();
   cloudFunctionsServiceClient.deleteFunctionAsync(name).get();
 }
 
Parameter
NameDescription
nameString

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

Returns
TypeDescription
OperationFuture<Empty,OperationMetadataV1>

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 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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   DeleteFunctionRequest request =
       DeleteFunctionRequest.newBuilder()
           .setName(CloudFunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .build();
   ApiFuture<Operation> future =
       cloudFunctionsServiceClient.deleteFunctionCallable().futureCall(request);
   // Do something.
   future.get();
 }
 
Returns
TypeDescription
UnaryCallable<DeleteFunctionRequest,Operation>

deleteFunctionOperationCallable()

public final OperationCallable<DeleteFunctionRequest,Empty,OperationMetadataV1> 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 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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   DeleteFunctionRequest request =
       DeleteFunctionRequest.newBuilder()
           .setName(CloudFunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .build();
   OperationFuture<Empty, OperationMetadataV1> future =
       cloudFunctionsServiceClient.deleteFunctionOperationCallable().futureCall(request);
   // Do something.
   future.get();
 }
 
Returns
TypeDescription
OperationCallable<DeleteFunctionRequest,Empty,OperationMetadataV1>

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 minutes after 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 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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   GenerateDownloadUrlRequest request =
       GenerateDownloadUrlRequest.newBuilder()
           .setName("name3373707")
           .setVersionId(-670497310)
           .build();
   GenerateDownloadUrlResponse response =
       cloudFunctionsServiceClient.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 minutes after 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 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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   GenerateDownloadUrlRequest request =
       GenerateDownloadUrlRequest.newBuilder()
           .setName("name3373707")
           .setVersionId(-670497310)
           .build();
   ApiFuture<GenerateDownloadUrlResponse> future =
       cloudFunctionsServiceClient.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.
  • Source file size should not exceed 100MB limit.
  • 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
  • x-goog-content-length-range: 0,104857600

And this header SHOULD NOT be specified:

  • Authorization: Bearer YOUR_TOKEN

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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   GenerateUploadUrlRequest request =
       GenerateUploadUrlRequest.newBuilder()
           .setParent("parent-995424086")
           .setKmsKeyName(
               CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]")
                   .toString())
           .build();
   GenerateUploadUrlResponse response = cloudFunctionsServiceClient.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.
  • Source file size should not exceed 100MB limit.
  • 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
  • x-goog-content-length-range: 0,104857600

And this header SHOULD NOT be specified:

  • Authorization: Bearer YOUR_TOKEN

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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   GenerateUploadUrlRequest request =
       GenerateUploadUrlRequest.newBuilder()
           .setParent("parent-995424086")
           .setKmsKeyName(
               CryptoKeyName.of("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]")
                   .toString())
           .build();
   ApiFuture<GenerateUploadUrlResponse> future =
       cloudFunctionsServiceClient.generateUploadUrlCallable().futureCall(request);
   // Do something.
   GenerateUploadUrlResponse response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<GenerateUploadUrlRequest,GenerateUploadUrlResponse>

getFunction(CloudFunctionName name)

public final CloudFunction getFunction(CloudFunctionName name)

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

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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   CloudFunctionName name = CloudFunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]");
   CloudFunction response = cloudFunctionsServiceClient.getFunction(name);
 }
 
Parameter
NameDescription
nameCloudFunctionName

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

Returns
TypeDescription
CloudFunction

getFunction(GetFunctionRequest request)

public final CloudFunction getFunction(GetFunctionRequest request)

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

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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   GetFunctionRequest request =
       GetFunctionRequest.newBuilder()
           .setName(CloudFunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .build();
   CloudFunction response = cloudFunctionsServiceClient.getFunction(request);
 }
 
Parameter
NameDescription
requestGetFunctionRequest

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

Returns
TypeDescription
CloudFunction

getFunction(String name)

public final CloudFunction getFunction(String name)

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

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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   String name = CloudFunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString();
   CloudFunction response = cloudFunctionsServiceClient.getFunction(name);
 }
 
Parameter
NameDescription
nameString

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

Returns
TypeDescription
CloudFunction

getFunctionCallable()

public final UnaryCallable<GetFunctionRequest,CloudFunction> getFunctionCallable()

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

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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   GetFunctionRequest request =
       GetFunctionRequest.newBuilder()
           .setName(CloudFunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .build();
   ApiFuture<CloudFunction> future =
       cloudFunctionsServiceClient.getFunctionCallable().futureCall(request);
   // Do something.
   CloudFunction response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<GetFunctionRequest,CloudFunction>

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 IAM access control policy for a function. Returns an empty policy if the function exists and does not have a policy set.

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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   GetIamPolicyRequest request =
       GetIamPolicyRequest.newBuilder()
           .setResource(CloudFunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .setOptions(GetPolicyOptions.newBuilder().build())
           .build();
   Policy response = cloudFunctionsServiceClient.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 IAM access control policy for a function. Returns an empty policy if the function exists and does not have a policy set.

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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   GetIamPolicyRequest request =
       GetIamPolicyRequest.newBuilder()
           .setResource(CloudFunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .setOptions(GetPolicyOptions.newBuilder().build())
           .build();
   ApiFuture<Policy> future =
       cloudFunctionsServiceClient.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 CloudFunctionsServiceSettings getSettings()
Returns
TypeDescription
CloudFunctionsServiceSettings

getStub()

public CloudFunctionsServiceStub getStub()
Returns
TypeDescription
CloudFunctionsServiceStub

isShutdown()

public boolean isShutdown()
Returns
TypeDescription
boolean

isTerminated()

public boolean isTerminated()
Returns
TypeDescription
boolean

listFunctions(ListFunctionsRequest request)

public final CloudFunctionsServiceClient.ListFunctionsPagedResponse listFunctions(ListFunctionsRequest request)

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

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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   ListFunctionsRequest request =
       ListFunctionsRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setPageSize(883849137)
           .setPageToken("pageToken873572522")
           .build();
   for (CloudFunction element :
       cloudFunctionsServiceClient.listFunctions(request).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameter
NameDescription
requestListFunctionsRequest

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

Returns
TypeDescription
CloudFunctionsServiceClient.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 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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   ListFunctionsRequest request =
       ListFunctionsRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setPageSize(883849137)
           .setPageToken("pageToken873572522")
           .build();
   while (true) {
     ListFunctionsResponse response =
         cloudFunctionsServiceClient.listFunctionsCallable().call(request);
     for (CloudFunction 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,CloudFunctionsServiceClient.ListFunctionsPagedResponse> listFunctionsPagedCallable()

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

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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   ListFunctionsRequest request =
       ListFunctionsRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setPageSize(883849137)
           .setPageToken("pageToken873572522")
           .build();
   ApiFuture<CloudFunction> future =
       cloudFunctionsServiceClient.listFunctionsPagedCallable().futureCall(request);
   // Do something.
   for (CloudFunction element : future.get().iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Returns
TypeDescription
UnaryCallable<ListFunctionsRequest,ListFunctionsPagedResponse>

setIamPolicy(SetIamPolicyRequest request)

public final Policy setIamPolicy(SetIamPolicyRequest request)

Sets the IAM access control policy on the specified function. Replaces any existing policy.

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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   SetIamPolicyRequest request =
       SetIamPolicyRequest.newBuilder()
           .setResource(CloudFunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .setPolicy(Policy.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   Policy response = cloudFunctionsServiceClient.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 IAM access control policy on the specified function. Replaces any existing policy.

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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   SetIamPolicyRequest request =
       SetIamPolicyRequest.newBuilder()
           .setResource(CloudFunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .setPolicy(Policy.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   ApiFuture<Policy> future =
       cloudFunctionsServiceClient.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)

Tests the specified permissions against the IAM access control policy for a function. If the function does not exist, this will return an empty set of permissions, not a NOT_FOUND 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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   TestIamPermissionsRequest request =
       TestIamPermissionsRequest.newBuilder()
           .setResource(CloudFunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .addAllPermissions(new ArrayList<String>())
           .build();
   TestIamPermissionsResponse response = cloudFunctionsServiceClient.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()

Tests the specified permissions against the IAM access control policy for a function. If the function does not exist, this will return an empty set of permissions, not a NOT_FOUND 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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   TestIamPermissionsRequest request =
       TestIamPermissionsRequest.newBuilder()
           .setResource(CloudFunctionName.of("[PROJECT]", "[LOCATION]", "[FUNCTION]").toString())
           .addAllPermissions(new ArrayList<String>())
           .build();
   ApiFuture<TestIamPermissionsResponse> future =
       cloudFunctionsServiceClient.testIamPermissionsCallable().futureCall(request);
   // Do something.
   TestIamPermissionsResponse response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<com.google.iam.v1.TestIamPermissionsRequest,com.google.iam.v1.TestIamPermissionsResponse>

updateFunctionAsync(CloudFunction function)

public final OperationFuture<CloudFunction,OperationMetadataV1> updateFunctionAsync(CloudFunction function)

Updates existing function.

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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   CloudFunction function = CloudFunction.newBuilder().build();
   CloudFunction response = cloudFunctionsServiceClient.updateFunctionAsync(function).get();
 }
 
Parameter
NameDescription
functionCloudFunction

Required. New version of the function.

Returns
TypeDescription
OperationFuture<CloudFunction,OperationMetadataV1>

updateFunctionAsync(UpdateFunctionRequest request)

public final OperationFuture<CloudFunction,OperationMetadataV1> updateFunctionAsync(UpdateFunctionRequest request)

Updates existing function.

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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   UpdateFunctionRequest request =
       UpdateFunctionRequest.newBuilder()
           .setFunction(CloudFunction.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   CloudFunction response = cloudFunctionsServiceClient.updateFunctionAsync(request).get();
 }
 
Parameter
NameDescription
requestUpdateFunctionRequest

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

Returns
TypeDescription
OperationFuture<CloudFunction,OperationMetadataV1>

updateFunctionCallable()

public final UnaryCallable<UpdateFunctionRequest,Operation> updateFunctionCallable()

Updates existing function.

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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   UpdateFunctionRequest request =
       UpdateFunctionRequest.newBuilder()
           .setFunction(CloudFunction.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   ApiFuture<Operation> future =
       cloudFunctionsServiceClient.updateFunctionCallable().futureCall(request);
   // Do something.
   Operation response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<UpdateFunctionRequest,Operation>

updateFunctionOperationCallable()

public final OperationCallable<UpdateFunctionRequest,CloudFunction,OperationMetadataV1> updateFunctionOperationCallable()

Updates existing function.

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 (CloudFunctionsServiceClient cloudFunctionsServiceClient =
     CloudFunctionsServiceClient.create()) {
   UpdateFunctionRequest request =
       UpdateFunctionRequest.newBuilder()
           .setFunction(CloudFunction.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   OperationFuture<CloudFunction, OperationMetadataV1> future =
       cloudFunctionsServiceClient.updateFunctionOperationCallable().futureCall(request);
   // Do something.
   CloudFunction response = future.get();
 }
 
Returns
TypeDescription
OperationCallable<UpdateFunctionRequest,CloudFunction,OperationMetadataV1>