create method
- GatewaySecurityPolicy request,
- String parent, {
- String? gatewaySecurityPolicyId,
- String? $fields,
Creates a new GatewaySecurityPolicy in a given project and location.
request
- The metadata request object.
Request parameters:
parent
- Required. The parent resource of the GatewaySecurityPolicy.
Must be in the format projects/{project}/locations/{location}
.
Value must have pattern ^projects/\[^/\]+/locations/\[^/\]+$
.
gatewaySecurityPolicyId
- Required. Short name of the
GatewaySecurityPolicy resource to be created. This value should be 1-63
characters long, containing only letters, numbers, hyphens, and
underscores, and should not start with a number. E.g.
"gateway_security_policy1".
$fields
- Selector specifying which fields to include in a partial
response.
Completes with a Operation.
Completes with a commons.ApiRequestError if the API endpoint returned an error.
If the used http.Client
completes with an error when making a REST call,
this method will complete with the same error.
Implementation
async.Future<Operation> create(
GatewaySecurityPolicy request,
core.String parent, {
core.String? gatewaySecurityPolicyId,
core.String? $fields,
}) async {
final body_ = convert.json.encode(request);
final queryParams_ = <core.String, core.List<core.String>>{
if (gatewaySecurityPolicyId != null)
'gatewaySecurityPolicyId': [gatewaySecurityPolicyId],
if ($fields != null) 'fields': [$fields],
};
final url_ =
'v1/' + core.Uri.encodeFull('$parent') + '/gatewaySecurityPolicies';
final response_ = await _requester.request(
url_,
'POST',
body: body_,
queryParams: queryParams_,
);
return Operation.fromJson(response_ as core.Map<core.String, core.dynamic>);
}