batchUpdate method

Replaces the entire firewall ruleset in one bulk operation.

This overrides and replaces the rules of an existing firewall with the new rules.If the final rule does not match traffic with the '*' wildcard IP range, then an "allow all" rule is explicitly added to the end of the list.

request - The metadata request object.

Request parameters:

appsId - Part of name. Name of the Firewall collection to set. Example: apps/myapp/firewall/ingressRules.

$fields - Selector specifying which fields to include in a partial response.

Completes with a BatchUpdateIngressRulesResponse.

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<BatchUpdateIngressRulesResponse> batchUpdate(
  BatchUpdateIngressRulesRequest request,
  core.String appsId, {
  core.String? $fields,
}) async {
  final body_ = convert.json.encode(request);
  final queryParams_ = <core.String, core.List<core.String>>{
    if ($fields != null) 'fields': [$fields],
  };

  final url_ = 'v1/apps/' +
      commons.escapeVariable('$appsId') +
      '/firewall/ingressRules:batchUpdate';

  final response_ = await _requester.request(
    url_,
    'POST',
    body: body_,
    queryParams: queryParams_,
  );
  return BatchUpdateIngressRulesResponse.fromJson(
      response_ as core.Map<core.String, core.dynamic>);
}