createFunction method

Future<Operation<Function$, OperationMetadata>> createFunction(
  1. 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.

Throws a http.ClientException if there were problems communicating with the API service. Throws a ServiceException if the API method failed for any reason.

Returns an Operation representing the status of the long-running operation.

When complete, Operation.done will be true. If successful, Operation.responseAsMessage will contain the operation's result.

Implementation

Future<Operation<Function$, OperationMetadata>> createFunction(
  CreateFunctionRequest request,
) async {
  final url = _endPoint.replace(
    path: '/v2/${request.parent}/functions',
    queryParameters: {
      if (request.functionId case final $1 when $1.isNotDefault)
        'functionId': $1,
    },
  );
  final response = await _client.post(url, body: request.function);
  return Operation.fromJson(
    response,
    OperationHelper(Function$.fromJson, OperationMetadata.fromJson),
  );
}