patch method

Updates the SecurityHealthAnalyticsCustomModule under the given name based on the given update mask.

Updating the enablement state is supported on both resident and inherited modules (though resident modules cannot have an enablement state of "inherited"). Updating the display name and custom config of a module is supported on resident modules only.

request - The metadata request object.

Request parameters:

name - Immutable. The resource name of the custom module. Its format is "organizations/{organization}/securityHealthAnalyticsSettings/customModules/{customModule}", or "folders/{folder}/securityHealthAnalyticsSettings/customModules/{customModule}", or "projects/{project}/securityHealthAnalyticsSettings/customModules/{customModule}" The id {customModule} is server-generated and is not user settable. It will be a numeric id containing 1-20 digits. Value must have pattern ^projects/\[^/\]+/securityHealthAnalyticsSettings/customModules/\[^/\]+$.

updateMask - The list of fields to be updated. The only fields that can be updated are enablement_state and custom_config. If empty or set to the wildcard value *, both enablement_state and custom_config are updated.

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

Completes with a GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule.

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

  final url_ = 'v1/' + core.Uri.encodeFull('$name');

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