/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Represents a log group.See Also:
AWS API
* Reference
The name of the log group.
*/ inline const Aws::String& GetLogGroupName() const{ return m_logGroupName; } /** *The name of the log group.
*/ inline bool LogGroupNameHasBeenSet() const { return m_logGroupNameHasBeenSet; } /** *The name of the log group.
*/ inline void SetLogGroupName(const Aws::String& value) { m_logGroupNameHasBeenSet = true; m_logGroupName = value; } /** *The name of the log group.
*/ inline void SetLogGroupName(Aws::String&& value) { m_logGroupNameHasBeenSet = true; m_logGroupName = std::move(value); } /** *The name of the log group.
*/ inline void SetLogGroupName(const char* value) { m_logGroupNameHasBeenSet = true; m_logGroupName.assign(value); } /** *The name of the log group.
*/ inline LogGroup& WithLogGroupName(const Aws::String& value) { SetLogGroupName(value); return *this;} /** *The name of the log group.
*/ inline LogGroup& WithLogGroupName(Aws::String&& value) { SetLogGroupName(std::move(value)); return *this;} /** *The name of the log group.
*/ inline LogGroup& WithLogGroupName(const char* value) { SetLogGroupName(value); return *this;} /** *The creation time of the log group, expressed as the number of milliseconds * after Jan 1, 1970 00:00:00 UTC.
*/ inline long long GetCreationTime() const{ return m_creationTime; } /** *The creation time of the log group, expressed as the number of milliseconds * after Jan 1, 1970 00:00:00 UTC.
*/ inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; } /** *The creation time of the log group, expressed as the number of milliseconds * after Jan 1, 1970 00:00:00 UTC.
*/ inline void SetCreationTime(long long value) { m_creationTimeHasBeenSet = true; m_creationTime = value; } /** *The creation time of the log group, expressed as the number of milliseconds * after Jan 1, 1970 00:00:00 UTC.
*/ inline LogGroup& WithCreationTime(long long value) { SetCreationTime(value); return *this;} inline int GetRetentionInDays() const{ return m_retentionInDays; } inline bool RetentionInDaysHasBeenSet() const { return m_retentionInDaysHasBeenSet; } inline void SetRetentionInDays(int value) { m_retentionInDaysHasBeenSet = true; m_retentionInDays = value; } inline LogGroup& WithRetentionInDays(int value) { SetRetentionInDays(value); return *this;} /** *The number of metric filters.
*/ inline int GetMetricFilterCount() const{ return m_metricFilterCount; } /** *The number of metric filters.
*/ inline bool MetricFilterCountHasBeenSet() const { return m_metricFilterCountHasBeenSet; } /** *The number of metric filters.
*/ inline void SetMetricFilterCount(int value) { m_metricFilterCountHasBeenSet = true; m_metricFilterCount = value; } /** *The number of metric filters.
*/ inline LogGroup& WithMetricFilterCount(int value) { SetMetricFilterCount(value); return *this;} /** *The Amazon Resource Name (ARN) of the log group.
*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *The Amazon Resource Name (ARN) of the log group.
*/ inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the log group.
*/ inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } /** *The Amazon Resource Name (ARN) of the log group.
*/ inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } /** *The Amazon Resource Name (ARN) of the log group.
*/ inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } /** *The Amazon Resource Name (ARN) of the log group.
*/ inline LogGroup& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the log group.
*/ inline LogGroup& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the log group.
*/ inline LogGroup& WithArn(const char* value) { SetArn(value); return *this;} /** *The number of bytes stored.
*/ inline long long GetStoredBytes() const{ return m_storedBytes; } /** *The number of bytes stored.
*/ inline bool StoredBytesHasBeenSet() const { return m_storedBytesHasBeenSet; } /** *The number of bytes stored.
*/ inline void SetStoredBytes(long long value) { m_storedBytesHasBeenSet = true; m_storedBytes = value; } /** *The number of bytes stored.
*/ inline LogGroup& WithStoredBytes(long long value) { SetStoredBytes(value); return *this;} /** *The Amazon Resource Name (ARN) of the KMS key to use when encrypting log * data.
*/ inline const Aws::String& GetKmsKeyId() const{ return m_kmsKeyId; } /** *The Amazon Resource Name (ARN) of the KMS key to use when encrypting log * data.
*/ inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; } /** *The Amazon Resource Name (ARN) of the KMS key to use when encrypting log * data.
*/ inline void SetKmsKeyId(const Aws::String& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = value; } /** *The Amazon Resource Name (ARN) of the KMS key to use when encrypting log * data.
*/ inline void SetKmsKeyId(Aws::String&& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = std::move(value); } /** *The Amazon Resource Name (ARN) of the KMS key to use when encrypting log * data.
*/ inline void SetKmsKeyId(const char* value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId.assign(value); } /** *The Amazon Resource Name (ARN) of the KMS key to use when encrypting log * data.
*/ inline LogGroup& WithKmsKeyId(const Aws::String& value) { SetKmsKeyId(value); return *this;} /** *The Amazon Resource Name (ARN) of the KMS key to use when encrypting log * data.
*/ inline LogGroup& WithKmsKeyId(Aws::String&& value) { SetKmsKeyId(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the KMS key to use when encrypting log * data.
*/ inline LogGroup& WithKmsKeyId(const char* value) { SetKmsKeyId(value); return *this;} /** *Displays whether this log group has a protection policy, or whether it had * one in the past. For more information, see PutDataProtectionPolicy.
*/ inline const DataProtectionStatus& GetDataProtectionStatus() const{ return m_dataProtectionStatus; } /** *Displays whether this log group has a protection policy, or whether it had * one in the past. For more information, see PutDataProtectionPolicy.
*/ inline bool DataProtectionStatusHasBeenSet() const { return m_dataProtectionStatusHasBeenSet; } /** *Displays whether this log group has a protection policy, or whether it had * one in the past. For more information, see PutDataProtectionPolicy.
*/ inline void SetDataProtectionStatus(const DataProtectionStatus& value) { m_dataProtectionStatusHasBeenSet = true; m_dataProtectionStatus = value; } /** *Displays whether this log group has a protection policy, or whether it had * one in the past. For more information, see PutDataProtectionPolicy.
*/ inline void SetDataProtectionStatus(DataProtectionStatus&& value) { m_dataProtectionStatusHasBeenSet = true; m_dataProtectionStatus = std::move(value); } /** *Displays whether this log group has a protection policy, or whether it had * one in the past. For more information, see PutDataProtectionPolicy.
*/ inline LogGroup& WithDataProtectionStatus(const DataProtectionStatus& value) { SetDataProtectionStatus(value); return *this;} /** *Displays whether this log group has a protection policy, or whether it had * one in the past. For more information, see PutDataProtectionPolicy.
*/ inline LogGroup& WithDataProtectionStatus(DataProtectionStatus&& value) { SetDataProtectionStatus(std::move(value)); return *this;} /** *Displays all the properties that this log group has inherited from * account-level settings.
*/ inline const Aws::VectorDisplays all the properties that this log group has inherited from * account-level settings.
*/ inline bool InheritedPropertiesHasBeenSet() const { return m_inheritedPropertiesHasBeenSet; } /** *Displays all the properties that this log group has inherited from * account-level settings.
*/ inline void SetInheritedProperties(const Aws::VectorDisplays all the properties that this log group has inherited from * account-level settings.
*/ inline void SetInheritedProperties(Aws::VectorDisplays all the properties that this log group has inherited from * account-level settings.
*/ inline LogGroup& WithInheritedProperties(const Aws::VectorDisplays all the properties that this log group has inherited from * account-level settings.
*/ inline LogGroup& WithInheritedProperties(Aws::VectorDisplays all the properties that this log group has inherited from * account-level settings.
*/ inline LogGroup& AddInheritedProperties(const InheritedProperty& value) { m_inheritedPropertiesHasBeenSet = true; m_inheritedProperties.push_back(value); return *this; } /** *Displays all the properties that this log group has inherited from * account-level settings.
*/ inline LogGroup& AddInheritedProperties(InheritedProperty&& value) { m_inheritedPropertiesHasBeenSet = true; m_inheritedProperties.push_back(std::move(value)); return *this; } private: Aws::String m_logGroupName; bool m_logGroupNameHasBeenSet = false; long long m_creationTime; bool m_creationTimeHasBeenSet = false; int m_retentionInDays; bool m_retentionInDaysHasBeenSet = false; int m_metricFilterCount; bool m_metricFilterCountHasBeenSet = false; Aws::String m_arn; bool m_arnHasBeenSet = false; long long m_storedBytes; bool m_storedBytesHasBeenSet = false; Aws::String m_kmsKeyId; bool m_kmsKeyIdHasBeenSet = false; DataProtectionStatus m_dataProtectionStatus; bool m_dataProtectionStatusHasBeenSet = false; Aws::Vector