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

Amazon SageMaker Feature Store stores features in a collection called Feature * Group. A Feature Group can be visualized as a table which has rows, with a * unique identifier for each row where each column in the table is a feature. In * principle, a Feature Group is composed of features and values per * features.

See Also:

AWS * API Reference

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

The Amazon Resource Name (ARN) of a FeatureGroup.

*/ inline const Aws::String& GetFeatureGroupArn() const{ return m_featureGroupArn; } /** *

The Amazon Resource Name (ARN) of a FeatureGroup.

*/ inline bool FeatureGroupArnHasBeenSet() const { return m_featureGroupArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of a FeatureGroup.

*/ inline void SetFeatureGroupArn(const Aws::String& value) { m_featureGroupArnHasBeenSet = true; m_featureGroupArn = value; } /** *

The Amazon Resource Name (ARN) of a FeatureGroup.

*/ inline void SetFeatureGroupArn(Aws::String&& value) { m_featureGroupArnHasBeenSet = true; m_featureGroupArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of a FeatureGroup.

*/ inline void SetFeatureGroupArn(const char* value) { m_featureGroupArnHasBeenSet = true; m_featureGroupArn.assign(value); } /** *

The Amazon Resource Name (ARN) of a FeatureGroup.

*/ inline FeatureGroup& WithFeatureGroupArn(const Aws::String& value) { SetFeatureGroupArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of a FeatureGroup.

*/ inline FeatureGroup& WithFeatureGroupArn(Aws::String&& value) { SetFeatureGroupArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of a FeatureGroup.

*/ inline FeatureGroup& WithFeatureGroupArn(const char* value) { SetFeatureGroupArn(value); return *this;} /** *

The name of the FeatureGroup.

*/ inline const Aws::String& GetFeatureGroupName() const{ return m_featureGroupName; } /** *

The name of the FeatureGroup.

*/ inline bool FeatureGroupNameHasBeenSet() const { return m_featureGroupNameHasBeenSet; } /** *

The name of the FeatureGroup.

*/ inline void SetFeatureGroupName(const Aws::String& value) { m_featureGroupNameHasBeenSet = true; m_featureGroupName = value; } /** *

The name of the FeatureGroup.

*/ inline void SetFeatureGroupName(Aws::String&& value) { m_featureGroupNameHasBeenSet = true; m_featureGroupName = std::move(value); } /** *

The name of the FeatureGroup.

*/ inline void SetFeatureGroupName(const char* value) { m_featureGroupNameHasBeenSet = true; m_featureGroupName.assign(value); } /** *

The name of the FeatureGroup.

*/ inline FeatureGroup& WithFeatureGroupName(const Aws::String& value) { SetFeatureGroupName(value); return *this;} /** *

The name of the FeatureGroup.

*/ inline FeatureGroup& WithFeatureGroupName(Aws::String&& value) { SetFeatureGroupName(std::move(value)); return *this;} /** *

The name of the FeatureGroup.

*/ inline FeatureGroup& WithFeatureGroupName(const char* value) { SetFeatureGroupName(value); return *this;} /** *

The name of the Feature whose value uniquely identifies a * Record defined in the FeatureGroup * FeatureDefinitions.

*/ inline const Aws::String& GetRecordIdentifierFeatureName() const{ return m_recordIdentifierFeatureName; } /** *

The name of the Feature whose value uniquely identifies a * Record defined in the FeatureGroup * FeatureDefinitions.

*/ inline bool RecordIdentifierFeatureNameHasBeenSet() const { return m_recordIdentifierFeatureNameHasBeenSet; } /** *

The name of the Feature whose value uniquely identifies a * Record defined in the FeatureGroup * FeatureDefinitions.

*/ inline void SetRecordIdentifierFeatureName(const Aws::String& value) { m_recordIdentifierFeatureNameHasBeenSet = true; m_recordIdentifierFeatureName = value; } /** *

The name of the Feature whose value uniquely identifies a * Record defined in the FeatureGroup * FeatureDefinitions.

*/ inline void SetRecordIdentifierFeatureName(Aws::String&& value) { m_recordIdentifierFeatureNameHasBeenSet = true; m_recordIdentifierFeatureName = std::move(value); } /** *

The name of the Feature whose value uniquely identifies a * Record defined in the FeatureGroup * FeatureDefinitions.

*/ inline void SetRecordIdentifierFeatureName(const char* value) { m_recordIdentifierFeatureNameHasBeenSet = true; m_recordIdentifierFeatureName.assign(value); } /** *

The name of the Feature whose value uniquely identifies a * Record defined in the FeatureGroup * FeatureDefinitions.

*/ inline FeatureGroup& WithRecordIdentifierFeatureName(const Aws::String& value) { SetRecordIdentifierFeatureName(value); return *this;} /** *

The name of the Feature whose value uniquely identifies a * Record defined in the FeatureGroup * FeatureDefinitions.

*/ inline FeatureGroup& WithRecordIdentifierFeatureName(Aws::String&& value) { SetRecordIdentifierFeatureName(std::move(value)); return *this;} /** *

The name of the Feature whose value uniquely identifies a * Record defined in the FeatureGroup * FeatureDefinitions.

*/ inline FeatureGroup& WithRecordIdentifierFeatureName(const char* value) { SetRecordIdentifierFeatureName(value); return *this;} /** *

The name of the feature that stores the EventTime of a Record in * a FeatureGroup.

A EventTime is point in time * when a new event occurs that corresponds to the creation or update of a * Record in FeatureGroup. All Records in * the FeatureGroup must have a corresponding * EventTime.

*/ inline const Aws::String& GetEventTimeFeatureName() const{ return m_eventTimeFeatureName; } /** *

The name of the feature that stores the EventTime of a Record in * a FeatureGroup.

A EventTime is point in time * when a new event occurs that corresponds to the creation or update of a * Record in FeatureGroup. All Records in * the FeatureGroup must have a corresponding * EventTime.

*/ inline bool EventTimeFeatureNameHasBeenSet() const { return m_eventTimeFeatureNameHasBeenSet; } /** *

The name of the feature that stores the EventTime of a Record in * a FeatureGroup.

A EventTime is point in time * when a new event occurs that corresponds to the creation or update of a * Record in FeatureGroup. All Records in * the FeatureGroup must have a corresponding * EventTime.

*/ inline void SetEventTimeFeatureName(const Aws::String& value) { m_eventTimeFeatureNameHasBeenSet = true; m_eventTimeFeatureName = value; } /** *

The name of the feature that stores the EventTime of a Record in * a FeatureGroup.

A EventTime is point in time * when a new event occurs that corresponds to the creation or update of a * Record in FeatureGroup. All Records in * the FeatureGroup must have a corresponding * EventTime.

*/ inline void SetEventTimeFeatureName(Aws::String&& value) { m_eventTimeFeatureNameHasBeenSet = true; m_eventTimeFeatureName = std::move(value); } /** *

The name of the feature that stores the EventTime of a Record in * a FeatureGroup.

A EventTime is point in time * when a new event occurs that corresponds to the creation or update of a * Record in FeatureGroup. All Records in * the FeatureGroup must have a corresponding * EventTime.

*/ inline void SetEventTimeFeatureName(const char* value) { m_eventTimeFeatureNameHasBeenSet = true; m_eventTimeFeatureName.assign(value); } /** *

The name of the feature that stores the EventTime of a Record in * a FeatureGroup.

A EventTime is point in time * when a new event occurs that corresponds to the creation or update of a * Record in FeatureGroup. All Records in * the FeatureGroup must have a corresponding * EventTime.

*/ inline FeatureGroup& WithEventTimeFeatureName(const Aws::String& value) { SetEventTimeFeatureName(value); return *this;} /** *

The name of the feature that stores the EventTime of a Record in * a FeatureGroup.

A EventTime is point in time * when a new event occurs that corresponds to the creation or update of a * Record in FeatureGroup. All Records in * the FeatureGroup must have a corresponding * EventTime.

*/ inline FeatureGroup& WithEventTimeFeatureName(Aws::String&& value) { SetEventTimeFeatureName(std::move(value)); return *this;} /** *

The name of the feature that stores the EventTime of a Record in * a FeatureGroup.

A EventTime is point in time * when a new event occurs that corresponds to the creation or update of a * Record in FeatureGroup. All Records in * the FeatureGroup must have a corresponding * EventTime.

*/ inline FeatureGroup& WithEventTimeFeatureName(const char* value) { SetEventTimeFeatureName(value); return *this;} /** *

A list of Features. Each Feature must include a * FeatureName and a FeatureType.

Valid * FeatureTypes are Integral, Fractional and * String.

FeatureNames cannot be any of the * following: is_deleted, write_time, * api_invocation_time.

You can create up to 2,500 * FeatureDefinitions per FeatureGroup.

*/ inline const Aws::Vector& GetFeatureDefinitions() const{ return m_featureDefinitions; } /** *

A list of Features. Each Feature must include a * FeatureName and a FeatureType.

Valid * FeatureTypes are Integral, Fractional and * String.

FeatureNames cannot be any of the * following: is_deleted, write_time, * api_invocation_time.

You can create up to 2,500 * FeatureDefinitions per FeatureGroup.

*/ inline bool FeatureDefinitionsHasBeenSet() const { return m_featureDefinitionsHasBeenSet; } /** *

A list of Features. Each Feature must include a * FeatureName and a FeatureType.

Valid * FeatureTypes are Integral, Fractional and * String.

FeatureNames cannot be any of the * following: is_deleted, write_time, * api_invocation_time.

You can create up to 2,500 * FeatureDefinitions per FeatureGroup.

*/ inline void SetFeatureDefinitions(const Aws::Vector& value) { m_featureDefinitionsHasBeenSet = true; m_featureDefinitions = value; } /** *

A list of Features. Each Feature must include a * FeatureName and a FeatureType.

Valid * FeatureTypes are Integral, Fractional and * String.

FeatureNames cannot be any of the * following: is_deleted, write_time, * api_invocation_time.

You can create up to 2,500 * FeatureDefinitions per FeatureGroup.

*/ inline void SetFeatureDefinitions(Aws::Vector&& value) { m_featureDefinitionsHasBeenSet = true; m_featureDefinitions = std::move(value); } /** *

A list of Features. Each Feature must include a * FeatureName and a FeatureType.

Valid * FeatureTypes are Integral, Fractional and * String.

FeatureNames cannot be any of the * following: is_deleted, write_time, * api_invocation_time.

You can create up to 2,500 * FeatureDefinitions per FeatureGroup.

*/ inline FeatureGroup& WithFeatureDefinitions(const Aws::Vector& value) { SetFeatureDefinitions(value); return *this;} /** *

A list of Features. Each Feature must include a * FeatureName and a FeatureType.

Valid * FeatureTypes are Integral, Fractional and * String.

FeatureNames cannot be any of the * following: is_deleted, write_time, * api_invocation_time.

You can create up to 2,500 * FeatureDefinitions per FeatureGroup.

*/ inline FeatureGroup& WithFeatureDefinitions(Aws::Vector&& value) { SetFeatureDefinitions(std::move(value)); return *this;} /** *

A list of Features. Each Feature must include a * FeatureName and a FeatureType.

Valid * FeatureTypes are Integral, Fractional and * String.

FeatureNames cannot be any of the * following: is_deleted, write_time, * api_invocation_time.

You can create up to 2,500 * FeatureDefinitions per FeatureGroup.

*/ inline FeatureGroup& AddFeatureDefinitions(const FeatureDefinition& value) { m_featureDefinitionsHasBeenSet = true; m_featureDefinitions.push_back(value); return *this; } /** *

A list of Features. Each Feature must include a * FeatureName and a FeatureType.

Valid * FeatureTypes are Integral, Fractional and * String.

FeatureNames cannot be any of the * following: is_deleted, write_time, * api_invocation_time.

You can create up to 2,500 * FeatureDefinitions per FeatureGroup.

*/ inline FeatureGroup& AddFeatureDefinitions(FeatureDefinition&& value) { m_featureDefinitionsHasBeenSet = true; m_featureDefinitions.push_back(std::move(value)); return *this; } /** *

The time a FeatureGroup was created.

*/ inline const Aws::Utils::DateTime& GetCreationTime() const{ return m_creationTime; } /** *

The time a FeatureGroup was created.

*/ inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; } /** *

The time a FeatureGroup was created.

*/ inline void SetCreationTime(const Aws::Utils::DateTime& value) { m_creationTimeHasBeenSet = true; m_creationTime = value; } /** *

The time a FeatureGroup was created.

*/ inline void SetCreationTime(Aws::Utils::DateTime&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::move(value); } /** *

The time a FeatureGroup was created.

*/ inline FeatureGroup& WithCreationTime(const Aws::Utils::DateTime& value) { SetCreationTime(value); return *this;} /** *

The time a FeatureGroup was created.

*/ inline FeatureGroup& WithCreationTime(Aws::Utils::DateTime&& value) { SetCreationTime(std::move(value)); return *this;} /** *

A timestamp indicating the last time you updated the feature group.

*/ inline const Aws::Utils::DateTime& GetLastModifiedTime() const{ return m_lastModifiedTime; } /** *

A timestamp indicating the last time you updated the feature group.

*/ inline bool LastModifiedTimeHasBeenSet() const { return m_lastModifiedTimeHasBeenSet; } /** *

A timestamp indicating the last time you updated the feature group.

*/ inline void SetLastModifiedTime(const Aws::Utils::DateTime& value) { m_lastModifiedTimeHasBeenSet = true; m_lastModifiedTime = value; } /** *

A timestamp indicating the last time you updated the feature group.

*/ inline void SetLastModifiedTime(Aws::Utils::DateTime&& value) { m_lastModifiedTimeHasBeenSet = true; m_lastModifiedTime = std::move(value); } /** *

A timestamp indicating the last time you updated the feature group.

*/ inline FeatureGroup& WithLastModifiedTime(const Aws::Utils::DateTime& value) { SetLastModifiedTime(value); return *this;} /** *

A timestamp indicating the last time you updated the feature group.

*/ inline FeatureGroup& WithLastModifiedTime(Aws::Utils::DateTime&& value) { SetLastModifiedTime(std::move(value)); return *this;} inline const OnlineStoreConfig& GetOnlineStoreConfig() const{ return m_onlineStoreConfig; } inline bool OnlineStoreConfigHasBeenSet() const { return m_onlineStoreConfigHasBeenSet; } inline void SetOnlineStoreConfig(const OnlineStoreConfig& value) { m_onlineStoreConfigHasBeenSet = true; m_onlineStoreConfig = value; } inline void SetOnlineStoreConfig(OnlineStoreConfig&& value) { m_onlineStoreConfigHasBeenSet = true; m_onlineStoreConfig = std::move(value); } inline FeatureGroup& WithOnlineStoreConfig(const OnlineStoreConfig& value) { SetOnlineStoreConfig(value); return *this;} inline FeatureGroup& WithOnlineStoreConfig(OnlineStoreConfig&& value) { SetOnlineStoreConfig(std::move(value)); return *this;} inline const OfflineStoreConfig& GetOfflineStoreConfig() const{ return m_offlineStoreConfig; } inline bool OfflineStoreConfigHasBeenSet() const { return m_offlineStoreConfigHasBeenSet; } inline void SetOfflineStoreConfig(const OfflineStoreConfig& value) { m_offlineStoreConfigHasBeenSet = true; m_offlineStoreConfig = value; } inline void SetOfflineStoreConfig(OfflineStoreConfig&& value) { m_offlineStoreConfigHasBeenSet = true; m_offlineStoreConfig = std::move(value); } inline FeatureGroup& WithOfflineStoreConfig(const OfflineStoreConfig& value) { SetOfflineStoreConfig(value); return *this;} inline FeatureGroup& WithOfflineStoreConfig(OfflineStoreConfig&& value) { SetOfflineStoreConfig(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the IAM execution role used to create the * feature group.

*/ inline const Aws::String& GetRoleArn() const{ return m_roleArn; } /** *

The Amazon Resource Name (ARN) of the IAM execution role used to create the * feature group.

*/ inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the IAM execution role used to create the * feature group.

*/ inline void SetRoleArn(const Aws::String& value) { m_roleArnHasBeenSet = true; m_roleArn = value; } /** *

The Amazon Resource Name (ARN) of the IAM execution role used to create the * feature group.

*/ inline void SetRoleArn(Aws::String&& value) { m_roleArnHasBeenSet = true; m_roleArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the IAM execution role used to create the * feature group.

*/ inline void SetRoleArn(const char* value) { m_roleArnHasBeenSet = true; m_roleArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the IAM execution role used to create the * feature group.

*/ inline FeatureGroup& WithRoleArn(const Aws::String& value) { SetRoleArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the IAM execution role used to create the * feature group.

*/ inline FeatureGroup& WithRoleArn(Aws::String&& value) { SetRoleArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the IAM execution role used to create the * feature group.

*/ inline FeatureGroup& WithRoleArn(const char* value) { SetRoleArn(value); return *this;} /** *

A FeatureGroup status.

*/ inline const FeatureGroupStatus& GetFeatureGroupStatus() const{ return m_featureGroupStatus; } /** *

A FeatureGroup status.

*/ inline bool FeatureGroupStatusHasBeenSet() const { return m_featureGroupStatusHasBeenSet; } /** *

A FeatureGroup status.

*/ inline void SetFeatureGroupStatus(const FeatureGroupStatus& value) { m_featureGroupStatusHasBeenSet = true; m_featureGroupStatus = value; } /** *

A FeatureGroup status.

*/ inline void SetFeatureGroupStatus(FeatureGroupStatus&& value) { m_featureGroupStatusHasBeenSet = true; m_featureGroupStatus = std::move(value); } /** *

A FeatureGroup status.

*/ inline FeatureGroup& WithFeatureGroupStatus(const FeatureGroupStatus& value) { SetFeatureGroupStatus(value); return *this;} /** *

A FeatureGroup status.

*/ inline FeatureGroup& WithFeatureGroupStatus(FeatureGroupStatus&& value) { SetFeatureGroupStatus(std::move(value)); return *this;} inline const OfflineStoreStatus& GetOfflineStoreStatus() const{ return m_offlineStoreStatus; } inline bool OfflineStoreStatusHasBeenSet() const { return m_offlineStoreStatusHasBeenSet; } inline void SetOfflineStoreStatus(const OfflineStoreStatus& value) { m_offlineStoreStatusHasBeenSet = true; m_offlineStoreStatus = value; } inline void SetOfflineStoreStatus(OfflineStoreStatus&& value) { m_offlineStoreStatusHasBeenSet = true; m_offlineStoreStatus = std::move(value); } inline FeatureGroup& WithOfflineStoreStatus(const OfflineStoreStatus& value) { SetOfflineStoreStatus(value); return *this;} inline FeatureGroup& WithOfflineStoreStatus(OfflineStoreStatus&& value) { SetOfflineStoreStatus(std::move(value)); return *this;} /** *

A value that indicates whether the feature group was updated * successfully.

*/ inline const LastUpdateStatus& GetLastUpdateStatus() const{ return m_lastUpdateStatus; } /** *

A value that indicates whether the feature group was updated * successfully.

*/ inline bool LastUpdateStatusHasBeenSet() const { return m_lastUpdateStatusHasBeenSet; } /** *

A value that indicates whether the feature group was updated * successfully.

*/ inline void SetLastUpdateStatus(const LastUpdateStatus& value) { m_lastUpdateStatusHasBeenSet = true; m_lastUpdateStatus = value; } /** *

A value that indicates whether the feature group was updated * successfully.

*/ inline void SetLastUpdateStatus(LastUpdateStatus&& value) { m_lastUpdateStatusHasBeenSet = true; m_lastUpdateStatus = std::move(value); } /** *

A value that indicates whether the feature group was updated * successfully.

*/ inline FeatureGroup& WithLastUpdateStatus(const LastUpdateStatus& value) { SetLastUpdateStatus(value); return *this;} /** *

A value that indicates whether the feature group was updated * successfully.

*/ inline FeatureGroup& WithLastUpdateStatus(LastUpdateStatus&& value) { SetLastUpdateStatus(std::move(value)); return *this;} /** *

The reason that the FeatureGroup failed to be replicated in the * OfflineStore. This is failure may be due to a failure to create a * FeatureGroup in or delete a FeatureGroup from the * OfflineStore.

*/ inline const Aws::String& GetFailureReason() const{ return m_failureReason; } /** *

The reason that the FeatureGroup failed to be replicated in the * OfflineStore. This is failure may be due to a failure to create a * FeatureGroup in or delete a FeatureGroup from the * OfflineStore.

*/ inline bool FailureReasonHasBeenSet() const { return m_failureReasonHasBeenSet; } /** *

The reason that the FeatureGroup failed to be replicated in the * OfflineStore. This is failure may be due to a failure to create a * FeatureGroup in or delete a FeatureGroup from the * OfflineStore.

*/ inline void SetFailureReason(const Aws::String& value) { m_failureReasonHasBeenSet = true; m_failureReason = value; } /** *

The reason that the FeatureGroup failed to be replicated in the * OfflineStore. This is failure may be due to a failure to create a * FeatureGroup in or delete a FeatureGroup from the * OfflineStore.

*/ inline void SetFailureReason(Aws::String&& value) { m_failureReasonHasBeenSet = true; m_failureReason = std::move(value); } /** *

The reason that the FeatureGroup failed to be replicated in the * OfflineStore. This is failure may be due to a failure to create a * FeatureGroup in or delete a FeatureGroup from the * OfflineStore.

*/ inline void SetFailureReason(const char* value) { m_failureReasonHasBeenSet = true; m_failureReason.assign(value); } /** *

The reason that the FeatureGroup failed to be replicated in the * OfflineStore. This is failure may be due to a failure to create a * FeatureGroup in or delete a FeatureGroup from the * OfflineStore.

*/ inline FeatureGroup& WithFailureReason(const Aws::String& value) { SetFailureReason(value); return *this;} /** *

The reason that the FeatureGroup failed to be replicated in the * OfflineStore. This is failure may be due to a failure to create a * FeatureGroup in or delete a FeatureGroup from the * OfflineStore.

*/ inline FeatureGroup& WithFailureReason(Aws::String&& value) { SetFailureReason(std::move(value)); return *this;} /** *

The reason that the FeatureGroup failed to be replicated in the * OfflineStore. This is failure may be due to a failure to create a * FeatureGroup in or delete a FeatureGroup from the * OfflineStore.

*/ inline FeatureGroup& WithFailureReason(const char* value) { SetFailureReason(value); return *this;} /** *

A free form description of a FeatureGroup.

*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *

A free form description of a FeatureGroup.

*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *

A free form description of a FeatureGroup.

*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *

A free form description of a FeatureGroup.

*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *

A free form description of a FeatureGroup.

*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *

A free form description of a FeatureGroup.

*/ inline FeatureGroup& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *

A free form description of a FeatureGroup.

*/ inline FeatureGroup& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *

A free form description of a FeatureGroup.

*/ inline FeatureGroup& WithDescription(const char* value) { SetDescription(value); return *this;} /** *

Tags used to define a FeatureGroup.

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

Tags used to define a FeatureGroup.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

Tags used to define a FeatureGroup.

*/ inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

Tags used to define a FeatureGroup.

*/ inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

Tags used to define a FeatureGroup.

*/ inline FeatureGroup& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

Tags used to define a FeatureGroup.

*/ inline FeatureGroup& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

Tags used to define a FeatureGroup.

*/ inline FeatureGroup& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *

Tags used to define a FeatureGroup.

*/ inline FeatureGroup& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } private: Aws::String m_featureGroupArn; bool m_featureGroupArnHasBeenSet = false; Aws::String m_featureGroupName; bool m_featureGroupNameHasBeenSet = false; Aws::String m_recordIdentifierFeatureName; bool m_recordIdentifierFeatureNameHasBeenSet = false; Aws::String m_eventTimeFeatureName; bool m_eventTimeFeatureNameHasBeenSet = false; Aws::Vector m_featureDefinitions; bool m_featureDefinitionsHasBeenSet = false; Aws::Utils::DateTime m_creationTime; bool m_creationTimeHasBeenSet = false; Aws::Utils::DateTime m_lastModifiedTime; bool m_lastModifiedTimeHasBeenSet = false; OnlineStoreConfig m_onlineStoreConfig; bool m_onlineStoreConfigHasBeenSet = false; OfflineStoreConfig m_offlineStoreConfig; bool m_offlineStoreConfigHasBeenSet = false; Aws::String m_roleArn; bool m_roleArnHasBeenSet = false; FeatureGroupStatus m_featureGroupStatus; bool m_featureGroupStatusHasBeenSet = false; OfflineStoreStatus m_offlineStoreStatus; bool m_offlineStoreStatusHasBeenSet = false; LastUpdateStatus m_lastUpdateStatus; bool m_lastUpdateStatusHasBeenSet = false; Aws::String m_failureReason; bool m_failureReasonHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; }; } // namespace Model } // namespace SageMaker } // namespace Aws