Cloud Functions v1 API - Class CloudFunctionsServiceClientImpl (2.5.0)

public sealed class CloudFunctionsServiceClientImpl : CloudFunctionsServiceClient

Reference documentation and code samples for the Cloud Functions v1 API class CloudFunctionsServiceClientImpl.

CloudFunctionsService client wrapper implementation, for convenient use.

Inheritance

object > CloudFunctionsServiceClient > CloudFunctionsServiceClientImpl

Namespace

Google.Cloud.Functions.V1

Assembly

Google.Cloud.Functions.V1.dll

Remarks

A service that application uses to manipulate triggers and functions.

Constructors

CloudFunctionsServiceClientImpl(CloudFunctionsServiceClient, CloudFunctionsServiceSettings, ILogger)

public CloudFunctionsServiceClientImpl(CloudFunctionsService.CloudFunctionsServiceClient grpcClient, CloudFunctionsServiceSettings settings, ILogger logger)

Constructs a client wrapper for the CloudFunctionsService service, with the specified gRPC client and settings.

Parameters
Name Description
grpcClient CloudFunctionsServiceCloudFunctionsServiceClient

The underlying gRPC client.

settings CloudFunctionsServiceSettings

The base CloudFunctionsServiceSettings used within this client.

logger ILogger

Optional ILogger to use within this client.

Properties

CreateFunctionOperationsClient

public override OperationsClient CreateFunctionOperationsClient { get; }

The long-running operations client for CreateFunction.

Property Value
Type Description
OperationsClient
Overrides

DeleteFunctionOperationsClient

public override OperationsClient DeleteFunctionOperationsClient { get; }

The long-running operations client for DeleteFunction.

Property Value
Type Description
OperationsClient
Overrides

GrpcClient

public override CloudFunctionsService.CloudFunctionsServiceClient GrpcClient { get; }

The underlying gRPC CloudFunctionsService client

Property Value
Type Description
CloudFunctionsServiceCloudFunctionsServiceClient
Overrides

IAMPolicyClient

public override IAMPolicyClient IAMPolicyClient { get; }

The IAMPolicyClient associated with this client.

Property Value
Type Description
IAMPolicyClient
Overrides

LocationsClient

public override LocationsClient LocationsClient { get; }

The LocationsClient associated with this client.

Property Value
Type Description
LocationsClient
Overrides

UpdateFunctionOperationsClient

public override OperationsClient UpdateFunctionOperationsClient { get; }

The long-running operations client for UpdateFunction.

Property Value
Type Description
OperationsClient
Overrides

Methods

CallFunction(CallFunctionRequest, CallSettings)

public override CallFunctionResponse CallFunction(CallFunctionRequest request, CallSettings callSettings = null)

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.

Parameters
Name Description
request CallFunctionRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
CallFunctionResponse

The RPC response.

Overrides

CallFunctionAsync(CallFunctionRequest, CallSettings)

public override Task<CallFunctionResponse> CallFunctionAsync(CallFunctionRequest request, CallSettings callSettings = null)

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.

Parameters
Name Description
request CallFunctionRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskCallFunctionResponse

A Task containing the RPC response.

Overrides

CreateFunction(CreateFunctionRequest, CallSettings)

public override Operation<CloudFunction, OperationMetadataV1> CreateFunction(CreateFunctionRequest request, CallSettings callSettings = null)

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.

Parameters
Name Description
request CreateFunctionRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
OperationCloudFunctionOperationMetadataV1

The RPC response.

Overrides

CreateFunctionAsync(CreateFunctionRequest, CallSettings)

public override Task<Operation<CloudFunction, OperationMetadataV1>> CreateFunctionAsync(CreateFunctionRequest request, CallSettings callSettings = null)

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.

Parameters
Name Description
request CreateFunctionRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskOperationCloudFunctionOperationMetadataV1

A Task containing the RPC response.

Overrides

DeleteFunction(DeleteFunctionRequest, CallSettings)

public override Operation<Empty, OperationMetadataV1> DeleteFunction(DeleteFunctionRequest request, CallSettings callSettings = null)

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.

Parameters
Name Description
request DeleteFunctionRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
OperationEmptyOperationMetadataV1

The RPC response.

Overrides

DeleteFunctionAsync(DeleteFunctionRequest, CallSettings)

public override Task<Operation<Empty, OperationMetadataV1>> DeleteFunctionAsync(DeleteFunctionRequest request, CallSettings callSettings = null)

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.

Parameters
Name Description
request DeleteFunctionRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskOperationEmptyOperationMetadataV1

A Task containing the RPC response.

Overrides

GenerateDownloadUrl(GenerateDownloadUrlRequest, CallSettings)

public override GenerateDownloadUrlResponse GenerateDownloadUrl(GenerateDownloadUrlRequest request, CallSettings callSettings = null)

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

Parameters
Name Description
request GenerateDownloadUrlRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
GenerateDownloadUrlResponse

The RPC response.

Overrides

GenerateDownloadUrlAsync(GenerateDownloadUrlRequest, CallSettings)

public override Task<GenerateDownloadUrlResponse> GenerateDownloadUrlAsync(GenerateDownloadUrlRequest request, CallSettings callSettings = null)

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

Parameters
Name Description
request GenerateDownloadUrlRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskGenerateDownloadUrlResponse

A Task containing the RPC response.

Overrides

GenerateUploadUrl(GenerateUploadUrlRequest, CallSettings)

public override GenerateUploadUrlResponse GenerateUploadUrl(GenerateUploadUrlRequest request, CallSettings callSettings = null)

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
Parameters
Name Description
request GenerateUploadUrlRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
GenerateUploadUrlResponse

The RPC response.

Overrides

GenerateUploadUrlAsync(GenerateUploadUrlRequest, CallSettings)

public override Task<GenerateUploadUrlResponse> GenerateUploadUrlAsync(GenerateUploadUrlRequest request, CallSettings callSettings = null)

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
Parameters
Name Description
request GenerateUploadUrlRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskGenerateUploadUrlResponse

A Task containing the RPC response.

Overrides

GetFunction(GetFunctionRequest, CallSettings)

public override CloudFunction GetFunction(GetFunctionRequest request, CallSettings callSettings = null)

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

Parameters
Name Description
request GetFunctionRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
CloudFunction

The RPC response.

Overrides

GetFunctionAsync(GetFunctionRequest, CallSettings)

public override Task<CloudFunction> GetFunctionAsync(GetFunctionRequest request, CallSettings callSettings = null)

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

Parameters
Name Description
request GetFunctionRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskCloudFunction

A Task containing the RPC response.

Overrides

GetIamPolicy(GetIamPolicyRequest, CallSettings)

public override Policy GetIamPolicy(GetIamPolicyRequest request, CallSettings callSettings = null)

Gets the IAM access control policy for a function. Returns an empty policy if the function exists and does not have a policy set.

Parameters
Name Description
request GetIamPolicyRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Policy

The RPC response.

Overrides

GetIamPolicyAsync(GetIamPolicyRequest, CallSettings)

public override Task<Policy> GetIamPolicyAsync(GetIamPolicyRequest request, CallSettings callSettings = null)

Gets the IAM access control policy for a function. Returns an empty policy if the function exists and does not have a policy set.

Parameters
Name Description
request GetIamPolicyRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskPolicy

A Task containing the RPC response.

Overrides

ListFunctions(ListFunctionsRequest, CallSettings)

public override PagedEnumerable<ListFunctionsResponse, CloudFunction> ListFunctions(ListFunctionsRequest request, CallSettings callSettings = null)

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

Parameters
Name Description
request ListFunctionsRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedEnumerableListFunctionsResponseCloudFunction

A pageable sequence of CloudFunction resources.

Overrides

ListFunctionsAsync(ListFunctionsRequest, CallSettings)

public override PagedAsyncEnumerable<ListFunctionsResponse, CloudFunction> ListFunctionsAsync(ListFunctionsRequest request, CallSettings callSettings = null)

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

Parameters
Name Description
request ListFunctionsRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
PagedAsyncEnumerableListFunctionsResponseCloudFunction

A pageable asynchronous sequence of CloudFunction resources.

Overrides

SetIamPolicy(SetIamPolicyRequest, CallSettings)

public override Policy SetIamPolicy(SetIamPolicyRequest request, CallSettings callSettings = null)

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

Parameters
Name Description
request SetIamPolicyRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
Policy

The RPC response.

Overrides

SetIamPolicyAsync(SetIamPolicyRequest, CallSettings)

public override Task<Policy> SetIamPolicyAsync(SetIamPolicyRequest request, CallSettings callSettings = null)

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

Parameters
Name Description
request SetIamPolicyRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskPolicy

A Task containing the RPC response.

Overrides

TestIamPermissions(TestIamPermissionsRequest, CallSettings)

public override TestIamPermissionsResponse TestIamPermissions(TestIamPermissionsRequest request, CallSettings callSettings = null)

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.

Parameters
Name Description
request TestIamPermissionsRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TestIamPermissionsResponse

The RPC response.

Overrides

TestIamPermissionsAsync(TestIamPermissionsRequest, CallSettings)

public override Task<TestIamPermissionsResponse> TestIamPermissionsAsync(TestIamPermissionsRequest request, CallSettings callSettings = null)

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.

Parameters
Name Description
request TestIamPermissionsRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskTestIamPermissionsResponse

A Task containing the RPC response.

Overrides

UpdateFunction(UpdateFunctionRequest, CallSettings)

public override Operation<CloudFunction, OperationMetadataV1> UpdateFunction(UpdateFunctionRequest request, CallSettings callSettings = null)

Updates existing function.

Parameters
Name Description
request UpdateFunctionRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
OperationCloudFunctionOperationMetadataV1

The RPC response.

Overrides

UpdateFunctionAsync(UpdateFunctionRequest, CallSettings)

public override Task<Operation<CloudFunction, OperationMetadataV1>> UpdateFunctionAsync(UpdateFunctionRequest request, CallSettings callSettings = null)

Updates existing function.

Parameters
Name Description
request UpdateFunctionRequest

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

callSettings CallSettings

If not null, applies overrides to this RPC call.

Returns
Type Description
TaskOperationCloudFunctionOperationMetadataV1

A Task containing the RPC response.

Overrides