Cloud Functions v1 API - Class CloudFunctionsService.CloudFunctionsServiceBase (2.1.0)

[BindServiceMethod(typeof(CloudFunctionsService), "BindService")]
public abstract class CloudFunctionsServiceBase

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

Base class for server-side implementations of CloudFunctionsService

Inheritance

Object > CloudFunctionsService.CloudFunctionsServiceBase

Namespace

Google.Cloud.Functions.V1

Assembly

Google.Cloud.Functions.V1.dll

Methods

CallFunction(CallFunctionRequest, ServerCallContext)

public virtual Task<CallFunctionResponse> CallFunction(CallFunctionRequest request, ServerCallContext context)

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
NameDescription
requestCallFunctionRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<CallFunctionResponse>

The response to send back to the client (wrapped by a task).

CreateFunction(CreateFunctionRequest, ServerCallContext)

public virtual Task<Operation> CreateFunction(CreateFunctionRequest request, ServerCallContext context)

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
NameDescription
requestCreateFunctionRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<Operation>

The response to send back to the client (wrapped by a task).

DeleteFunction(DeleteFunctionRequest, ServerCallContext)

public virtual Task<Operation> DeleteFunction(DeleteFunctionRequest request, ServerCallContext context)

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
NameDescription
requestDeleteFunctionRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<Operation>

The response to send back to the client (wrapped by a task).

GenerateDownloadUrl(GenerateDownloadUrlRequest, ServerCallContext)

public virtual Task<GenerateDownloadUrlResponse> GenerateDownloadUrl(GenerateDownloadUrlRequest request, ServerCallContext context)

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
NameDescription
requestGenerateDownloadUrlRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<GenerateDownloadUrlResponse>

The response to send back to the client (wrapped by a task).

GenerateUploadUrl(GenerateUploadUrlRequest, ServerCallContext)

public virtual Task<GenerateUploadUrlResponse> GenerateUploadUrl(GenerateUploadUrlRequest request, ServerCallContext context)

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
NameDescription
requestGenerateUploadUrlRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<GenerateUploadUrlResponse>

The response to send back to the client (wrapped by a task).

GetFunction(GetFunctionRequest, ServerCallContext)

public virtual Task<CloudFunction> GetFunction(GetFunctionRequest request, ServerCallContext context)

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

Parameters
NameDescription
requestGetFunctionRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<CloudFunction>

The response to send back to the client (wrapped by a task).

GetIamPolicy(GetIamPolicyRequest, ServerCallContext)

public virtual Task<Policy> GetIamPolicy(GetIamPolicyRequest request, ServerCallContext context)

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
NameDescription
requestGetIamPolicyRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<Policy>

The response to send back to the client (wrapped by a task).

ListFunctions(ListFunctionsRequest, ServerCallContext)

public virtual Task<ListFunctionsResponse> ListFunctions(ListFunctionsRequest request, ServerCallContext context)

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

Parameters
NameDescription
requestListFunctionsRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<ListFunctionsResponse>

The response to send back to the client (wrapped by a task).

SetIamPolicy(SetIamPolicyRequest, ServerCallContext)

public virtual Task<Policy> SetIamPolicy(SetIamPolicyRequest request, ServerCallContext context)

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

Parameters
NameDescription
requestSetIamPolicyRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<Policy>

The response to send back to the client (wrapped by a task).

TestIamPermissions(TestIamPermissionsRequest, ServerCallContext)

public virtual Task<TestIamPermissionsResponse> TestIamPermissions(TestIamPermissionsRequest request, ServerCallContext context)

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
NameDescription
requestTestIamPermissionsRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<TestIamPermissionsResponse>

The response to send back to the client (wrapped by a task).

UpdateFunction(UpdateFunctionRequest, ServerCallContext)

public virtual Task<Operation> UpdateFunction(UpdateFunctionRequest request, ServerCallContext context)

Updates existing function.

Parameters
NameDescription
requestUpdateFunctionRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<Operation>

The response to send back to the client (wrapped by a task).