createFeature method

Future<Operation<Feature, CreateFeatureOperationMetadata>> createFeature(
  1. CreateFeatureRequest request
)

Creates a new Feature in a given EntityType.

Throws a http.ClientException if there were problems communicating with the API service. Throws a StatusException if the API failed with a Status message. Throws a ServiceException for any other failure.

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<Feature, CreateFeatureOperationMetadata>> createFeature(
  CreateFeatureRequest request,
) async {
  final url = Uri.https(_host, '/v1beta1/${request.parent}/features', {
    if (request.featureId case final $1 when $1.isNotDefault) 'featureId': $1,
  });
  final response = await _client.post(url, body: request.feature);
  return Operation.fromJson(
    response,
    OperationHelper(
      Feature.fromJson,
      CreateFeatureOperationMetadata.fromJson,
    ),
  );
}