/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.cloudtrail.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.AmazonWebServiceRequest; /** * * @see AWS * API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class UpdateEventDataStoreRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable { /** *
* The ARN (or the ID suffix of the ARN) of the event data store that you want to update. *
*/ private String eventDataStore; /** ** The event data store name. *
*/ private String name; /** ** The advanced event selectors used to select events for the event data store. You can configure up to five * advanced event selectors for each event data store. *
*/ private com.amazonaws.internal.SdkInternalList* Specifies whether an event data store collects events from all Regions, or only from the Region in which it was * created. *
*/ private Boolean multiRegionEnabled; /** ** Specifies whether an event data store collects events logged for an organization in Organizations. *
*/ private Boolean organizationEnabled; /** ** The retention period, in days. *
*/ private Integer retentionPeriod; /** ** Indicates that termination protection is enabled and the event data store cannot be automatically deleted. *
*/ private Boolean terminationProtectionEnabled; /** *
* Specifies the KMS key ID to use to encrypt the events delivered by CloudTrail. The value can be an alias name
* prefixed by alias/
, a fully specified ARN to an alias, a fully specified ARN to a key, or a globally
* unique identifier.
*
* Disabling or deleting the KMS key, or removing CloudTrail permissions on the key, prevents CloudTrail from * logging events to the event data store, and prevents users from querying the data in the event data store that * was encrypted with the key. After you associate an event data store with a KMS key, the KMS key cannot be removed * or changed. Before you disable or delete a KMS key that you are using with an event data store, delete or back up * your event data store. *
** CloudTrail also supports KMS multi-Region keys. For more information about multi-Region keys, see Using multi-Region * keys in the Key Management Service Developer Guide. *
** Examples: *
*
* alias/MyAliasName
*
* arn:aws:kms:us-east-2:123456789012:alias/MyAliasName
*
* arn:aws:kms:us-east-2:123456789012:key/12345678-1234-1234-1234-123456789012
*
* 12345678-1234-1234-1234-123456789012
*
* The ARN (or the ID suffix of the ARN) of the event data store that you want to update. *
* * @param eventDataStore * The ARN (or the ID suffix of the ARN) of the event data store that you want to update. */ public void setEventDataStore(String eventDataStore) { this.eventDataStore = eventDataStore; } /** ** The ARN (or the ID suffix of the ARN) of the event data store that you want to update. *
* * @return The ARN (or the ID suffix of the ARN) of the event data store that you want to update. */ public String getEventDataStore() { return this.eventDataStore; } /** ** The ARN (or the ID suffix of the ARN) of the event data store that you want to update. *
* * @param eventDataStore * The ARN (or the ID suffix of the ARN) of the event data store that you want to update. * @return Returns a reference to this object so that method calls can be chained together. */ public UpdateEventDataStoreRequest withEventDataStore(String eventDataStore) { setEventDataStore(eventDataStore); return this; } /** ** The event data store name. *
* * @param name * The event data store name. */ public void setName(String name) { this.name = name; } /** ** The event data store name. *
* * @return The event data store name. */ public String getName() { return this.name; } /** ** The event data store name. *
* * @param name * The event data store name. * @return Returns a reference to this object so that method calls can be chained together. */ public UpdateEventDataStoreRequest withName(String name) { setName(name); return this; } /** ** The advanced event selectors used to select events for the event data store. You can configure up to five * advanced event selectors for each event data store. *
* * @return The advanced event selectors used to select events for the event data store. You can configure up to five * advanced event selectors for each event data store. */ public java.util.List* The advanced event selectors used to select events for the event data store. You can configure up to five * advanced event selectors for each event data store. *
* * @param advancedEventSelectors * The advanced event selectors used to select events for the event data store. You can configure up to five * advanced event selectors for each event data store. */ public void setAdvancedEventSelectors(java.util.Collection* The advanced event selectors used to select events for the event data store. You can configure up to five * advanced event selectors for each event data store. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setAdvancedEventSelectors(java.util.Collection)} or * {@link #withAdvancedEventSelectors(java.util.Collection)} if you want to override the existing values. *
* * @param advancedEventSelectors * The advanced event selectors used to select events for the event data store. You can configure up to five * advanced event selectors for each event data store. * @return Returns a reference to this object so that method calls can be chained together. */ public UpdateEventDataStoreRequest withAdvancedEventSelectors(AdvancedEventSelector... advancedEventSelectors) { if (this.advancedEventSelectors == null) { setAdvancedEventSelectors(new com.amazonaws.internal.SdkInternalList* The advanced event selectors used to select events for the event data store. You can configure up to five * advanced event selectors for each event data store. *
* * @param advancedEventSelectors * The advanced event selectors used to select events for the event data store. You can configure up to five * advanced event selectors for each event data store. * @return Returns a reference to this object so that method calls can be chained together. */ public UpdateEventDataStoreRequest withAdvancedEventSelectors(java.util.Collection* Specifies whether an event data store collects events from all Regions, or only from the Region in which it was * created. *
* * @param multiRegionEnabled * Specifies whether an event data store collects events from all Regions, or only from the Region in which * it was created. */ public void setMultiRegionEnabled(Boolean multiRegionEnabled) { this.multiRegionEnabled = multiRegionEnabled; } /** ** Specifies whether an event data store collects events from all Regions, or only from the Region in which it was * created. *
* * @return Specifies whether an event data store collects events from all Regions, or only from the Region in which * it was created. */ public Boolean getMultiRegionEnabled() { return this.multiRegionEnabled; } /** ** Specifies whether an event data store collects events from all Regions, or only from the Region in which it was * created. *
* * @param multiRegionEnabled * Specifies whether an event data store collects events from all Regions, or only from the Region in which * it was created. * @return Returns a reference to this object so that method calls can be chained together. */ public UpdateEventDataStoreRequest withMultiRegionEnabled(Boolean multiRegionEnabled) { setMultiRegionEnabled(multiRegionEnabled); return this; } /** ** Specifies whether an event data store collects events from all Regions, or only from the Region in which it was * created. *
* * @return Specifies whether an event data store collects events from all Regions, or only from the Region in which * it was created. */ public Boolean isMultiRegionEnabled() { return this.multiRegionEnabled; } /** ** Specifies whether an event data store collects events logged for an organization in Organizations. *
* * @param organizationEnabled * Specifies whether an event data store collects events logged for an organization in Organizations. */ public void setOrganizationEnabled(Boolean organizationEnabled) { this.organizationEnabled = organizationEnabled; } /** ** Specifies whether an event data store collects events logged for an organization in Organizations. *
* * @return Specifies whether an event data store collects events logged for an organization in Organizations. */ public Boolean getOrganizationEnabled() { return this.organizationEnabled; } /** ** Specifies whether an event data store collects events logged for an organization in Organizations. *
* * @param organizationEnabled * Specifies whether an event data store collects events logged for an organization in Organizations. * @return Returns a reference to this object so that method calls can be chained together. */ public UpdateEventDataStoreRequest withOrganizationEnabled(Boolean organizationEnabled) { setOrganizationEnabled(organizationEnabled); return this; } /** ** Specifies whether an event data store collects events logged for an organization in Organizations. *
* * @return Specifies whether an event data store collects events logged for an organization in Organizations. */ public Boolean isOrganizationEnabled() { return this.organizationEnabled; } /** ** The retention period, in days. *
* * @param retentionPeriod * The retention period, in days. */ public void setRetentionPeriod(Integer retentionPeriod) { this.retentionPeriod = retentionPeriod; } /** ** The retention period, in days. *
* * @return The retention period, in days. */ public Integer getRetentionPeriod() { return this.retentionPeriod; } /** ** The retention period, in days. *
* * @param retentionPeriod * The retention period, in days. * @return Returns a reference to this object so that method calls can be chained together. */ public UpdateEventDataStoreRequest withRetentionPeriod(Integer retentionPeriod) { setRetentionPeriod(retentionPeriod); return this; } /** ** Indicates that termination protection is enabled and the event data store cannot be automatically deleted. *
* * @param terminationProtectionEnabled * Indicates that termination protection is enabled and the event data store cannot be automatically deleted. */ public void setTerminationProtectionEnabled(Boolean terminationProtectionEnabled) { this.terminationProtectionEnabled = terminationProtectionEnabled; } /** ** Indicates that termination protection is enabled and the event data store cannot be automatically deleted. *
* * @return Indicates that termination protection is enabled and the event data store cannot be automatically * deleted. */ public Boolean getTerminationProtectionEnabled() { return this.terminationProtectionEnabled; } /** ** Indicates that termination protection is enabled and the event data store cannot be automatically deleted. *
* * @param terminationProtectionEnabled * Indicates that termination protection is enabled and the event data store cannot be automatically deleted. * @return Returns a reference to this object so that method calls can be chained together. */ public UpdateEventDataStoreRequest withTerminationProtectionEnabled(Boolean terminationProtectionEnabled) { setTerminationProtectionEnabled(terminationProtectionEnabled); return this; } /** ** Indicates that termination protection is enabled and the event data store cannot be automatically deleted. *
* * @return Indicates that termination protection is enabled and the event data store cannot be automatically * deleted. */ public Boolean isTerminationProtectionEnabled() { return this.terminationProtectionEnabled; } /** *
* Specifies the KMS key ID to use to encrypt the events delivered by CloudTrail. The value can be an alias name
* prefixed by alias/
, a fully specified ARN to an alias, a fully specified ARN to a key, or a globally
* unique identifier.
*
* Disabling or deleting the KMS key, or removing CloudTrail permissions on the key, prevents CloudTrail from * logging events to the event data store, and prevents users from querying the data in the event data store that * was encrypted with the key. After you associate an event data store with a KMS key, the KMS key cannot be removed * or changed. Before you disable or delete a KMS key that you are using with an event data store, delete or back up * your event data store. *
** CloudTrail also supports KMS multi-Region keys. For more information about multi-Region keys, see Using multi-Region * keys in the Key Management Service Developer Guide. *
** Examples: *
*
* alias/MyAliasName
*
* arn:aws:kms:us-east-2:123456789012:alias/MyAliasName
*
* arn:aws:kms:us-east-2:123456789012:key/12345678-1234-1234-1234-123456789012
*
* 12345678-1234-1234-1234-123456789012
*
alias/
, a fully specified ARN to an alias, a fully specified ARN to a key,
* or a globally unique identifier. * Disabling or deleting the KMS key, or removing CloudTrail permissions on the key, prevents CloudTrail from * logging events to the event data store, and prevents users from querying the data in the event data store * that was encrypted with the key. After you associate an event data store with a KMS key, the KMS key * cannot be removed or changed. Before you disable or delete a KMS key that you are using with an event data * store, delete or back up your event data store. *
** CloudTrail also supports KMS multi-Region keys. For more information about multi-Region keys, see Using * multi-Region keys in the Key Management Service Developer Guide. *
** Examples: *
*
* alias/MyAliasName
*
* arn:aws:kms:us-east-2:123456789012:alias/MyAliasName
*
* arn:aws:kms:us-east-2:123456789012:key/12345678-1234-1234-1234-123456789012
*
* 12345678-1234-1234-1234-123456789012
*
* Specifies the KMS key ID to use to encrypt the events delivered by CloudTrail. The value can be an alias name
* prefixed by alias/
, a fully specified ARN to an alias, a fully specified ARN to a key, or a globally
* unique identifier.
*
* Disabling or deleting the KMS key, or removing CloudTrail permissions on the key, prevents CloudTrail from * logging events to the event data store, and prevents users from querying the data in the event data store that * was encrypted with the key. After you associate an event data store with a KMS key, the KMS key cannot be removed * or changed. Before you disable or delete a KMS key that you are using with an event data store, delete or back up * your event data store. *
** CloudTrail also supports KMS multi-Region keys. For more information about multi-Region keys, see Using multi-Region * keys in the Key Management Service Developer Guide. *
** Examples: *
*
* alias/MyAliasName
*
* arn:aws:kms:us-east-2:123456789012:alias/MyAliasName
*
* arn:aws:kms:us-east-2:123456789012:key/12345678-1234-1234-1234-123456789012
*
* 12345678-1234-1234-1234-123456789012
*
alias/
, a fully specified ARN to an alias, a fully specified ARN to a key,
* or a globally unique identifier. * Disabling or deleting the KMS key, or removing CloudTrail permissions on the key, prevents CloudTrail * from logging events to the event data store, and prevents users from querying the data in the event data * store that was encrypted with the key. After you associate an event data store with a KMS key, the KMS * key cannot be removed or changed. Before you disable or delete a KMS key that you are using with an event * data store, delete or back up your event data store. *
** CloudTrail also supports KMS multi-Region keys. For more information about multi-Region keys, see Using * multi-Region keys in the Key Management Service Developer Guide. *
** Examples: *
*
* alias/MyAliasName
*
* arn:aws:kms:us-east-2:123456789012:alias/MyAliasName
*
* arn:aws:kms:us-east-2:123456789012:key/12345678-1234-1234-1234-123456789012
*
* 12345678-1234-1234-1234-123456789012
*
* Specifies the KMS key ID to use to encrypt the events delivered by CloudTrail. The value can be an alias name
* prefixed by alias/
, a fully specified ARN to an alias, a fully specified ARN to a key, or a globally
* unique identifier.
*
* Disabling or deleting the KMS key, or removing CloudTrail permissions on the key, prevents CloudTrail from * logging events to the event data store, and prevents users from querying the data in the event data store that * was encrypted with the key. After you associate an event data store with a KMS key, the KMS key cannot be removed * or changed. Before you disable or delete a KMS key that you are using with an event data store, delete or back up * your event data store. *
** CloudTrail also supports KMS multi-Region keys. For more information about multi-Region keys, see Using multi-Region * keys in the Key Management Service Developer Guide. *
** Examples: *
*
* alias/MyAliasName
*
* arn:aws:kms:us-east-2:123456789012:alias/MyAliasName
*
* arn:aws:kms:us-east-2:123456789012:key/12345678-1234-1234-1234-123456789012
*
* 12345678-1234-1234-1234-123456789012
*
alias/
, a fully specified ARN to an alias, a fully specified ARN to a key,
* or a globally unique identifier. * Disabling or deleting the KMS key, or removing CloudTrail permissions on the key, prevents CloudTrail from * logging events to the event data store, and prevents users from querying the data in the event data store * that was encrypted with the key. After you associate an event data store with a KMS key, the KMS key * cannot be removed or changed. Before you disable or delete a KMS key that you are using with an event data * store, delete or back up your event data store. *
** CloudTrail also supports KMS multi-Region keys. For more information about multi-Region keys, see Using * multi-Region keys in the Key Management Service Developer Guide. *
** Examples: *
*
* alias/MyAliasName
*
* arn:aws:kms:us-east-2:123456789012:alias/MyAliasName
*
* arn:aws:kms:us-east-2:123456789012:key/12345678-1234-1234-1234-123456789012
*
* 12345678-1234-1234-1234-123456789012
*