/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SageMaker { namespace Model { /** *

Use this to specify the Amazon Web Services Key Management Service (KMS) Key * ID, or KMSKeyId, for at rest data encryption. You can turn * OnlineStore on or off by specifying the * EnableOnlineStore flag at General Assembly.

The default * value is False.

See Also:

AWS * API Reference

*/ class OnlineStoreConfig { public: AWS_SAGEMAKER_API OnlineStoreConfig(); AWS_SAGEMAKER_API OnlineStoreConfig(Aws::Utils::Json::JsonView jsonValue); AWS_SAGEMAKER_API OnlineStoreConfig& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SAGEMAKER_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

Use to specify KMS Key ID (KMSKeyId) for at-rest encryption of * your OnlineStore.

*/ inline const OnlineStoreSecurityConfig& GetSecurityConfig() const{ return m_securityConfig; } /** *

Use to specify KMS Key ID (KMSKeyId) for at-rest encryption of * your OnlineStore.

*/ inline bool SecurityConfigHasBeenSet() const { return m_securityConfigHasBeenSet; } /** *

Use to specify KMS Key ID (KMSKeyId) for at-rest encryption of * your OnlineStore.

*/ inline void SetSecurityConfig(const OnlineStoreSecurityConfig& value) { m_securityConfigHasBeenSet = true; m_securityConfig = value; } /** *

Use to specify KMS Key ID (KMSKeyId) for at-rest encryption of * your OnlineStore.

*/ inline void SetSecurityConfig(OnlineStoreSecurityConfig&& value) { m_securityConfigHasBeenSet = true; m_securityConfig = std::move(value); } /** *

Use to specify KMS Key ID (KMSKeyId) for at-rest encryption of * your OnlineStore.

*/ inline OnlineStoreConfig& WithSecurityConfig(const OnlineStoreSecurityConfig& value) { SetSecurityConfig(value); return *this;} /** *

Use to specify KMS Key ID (KMSKeyId) for at-rest encryption of * your OnlineStore.

*/ inline OnlineStoreConfig& WithSecurityConfig(OnlineStoreSecurityConfig&& value) { SetSecurityConfig(std::move(value)); return *this;} /** *

Turn OnlineStore off by specifying False for the * EnableOnlineStore flag. Turn OnlineStore on by * specifying True for the EnableOnlineStore flag.

*

The default value is False.

*/ inline bool GetEnableOnlineStore() const{ return m_enableOnlineStore; } /** *

Turn OnlineStore off by specifying False for the * EnableOnlineStore flag. Turn OnlineStore on by * specifying True for the EnableOnlineStore flag.

*

The default value is False.

*/ inline bool EnableOnlineStoreHasBeenSet() const { return m_enableOnlineStoreHasBeenSet; } /** *

Turn OnlineStore off by specifying False for the * EnableOnlineStore flag. Turn OnlineStore on by * specifying True for the EnableOnlineStore flag.

*

The default value is False.

*/ inline void SetEnableOnlineStore(bool value) { m_enableOnlineStoreHasBeenSet = true; m_enableOnlineStore = value; } /** *

Turn OnlineStore off by specifying False for the * EnableOnlineStore flag. Turn OnlineStore on by * specifying True for the EnableOnlineStore flag.

*

The default value is False.

*/ inline OnlineStoreConfig& WithEnableOnlineStore(bool value) { SetEnableOnlineStore(value); return *this;} /** *

Time to live duration, where the record is hard deleted after the expiration * time is reached; ExpiresAt = EventTime + * TtlDuration. For information on HardDelete, see the DeleteRecord * API in the Amazon SageMaker API Reference guide.

*/ inline const TtlDuration& GetTtlDuration() const{ return m_ttlDuration; } /** *

Time to live duration, where the record is hard deleted after the expiration * time is reached; ExpiresAt = EventTime + * TtlDuration. For information on HardDelete, see the DeleteRecord * API in the Amazon SageMaker API Reference guide.

*/ inline bool TtlDurationHasBeenSet() const { return m_ttlDurationHasBeenSet; } /** *

Time to live duration, where the record is hard deleted after the expiration * time is reached; ExpiresAt = EventTime + * TtlDuration. For information on HardDelete, see the DeleteRecord * API in the Amazon SageMaker API Reference guide.

*/ inline void SetTtlDuration(const TtlDuration& value) { m_ttlDurationHasBeenSet = true; m_ttlDuration = value; } /** *

Time to live duration, where the record is hard deleted after the expiration * time is reached; ExpiresAt = EventTime + * TtlDuration. For information on HardDelete, see the DeleteRecord * API in the Amazon SageMaker API Reference guide.

*/ inline void SetTtlDuration(TtlDuration&& value) { m_ttlDurationHasBeenSet = true; m_ttlDuration = std::move(value); } /** *

Time to live duration, where the record is hard deleted after the expiration * time is reached; ExpiresAt = EventTime + * TtlDuration. For information on HardDelete, see the DeleteRecord * API in the Amazon SageMaker API Reference guide.

*/ inline OnlineStoreConfig& WithTtlDuration(const TtlDuration& value) { SetTtlDuration(value); return *this;} /** *

Time to live duration, where the record is hard deleted after the expiration * time is reached; ExpiresAt = EventTime + * TtlDuration. For information on HardDelete, see the DeleteRecord * API in the Amazon SageMaker API Reference guide.

*/ inline OnlineStoreConfig& WithTtlDuration(TtlDuration&& value) { SetTtlDuration(std::move(value)); return *this;} private: OnlineStoreSecurityConfig m_securityConfig; bool m_securityConfigHasBeenSet = false; bool m_enableOnlineStore; bool m_enableOnlineStoreHasBeenSet = false; TtlDuration m_ttlDuration; bool m_ttlDurationHasBeenSet = false; }; } // namespace Model } // namespace SageMaker } // namespace Aws