/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Provides information about the configuration, dimension, and other settings
* for a segment.See Also:
AWS
* API Reference
The unique identifier for the application that the segment is associated * with.
*/ inline const Aws::String& GetApplicationId() const{ return m_applicationId; } /** *The unique identifier for the application that the segment is associated * with.
*/ inline bool ApplicationIdHasBeenSet() const { return m_applicationIdHasBeenSet; } /** *The unique identifier for the application that the segment is associated * with.
*/ inline void SetApplicationId(const Aws::String& value) { m_applicationIdHasBeenSet = true; m_applicationId = value; } /** *The unique identifier for the application that the segment is associated * with.
*/ inline void SetApplicationId(Aws::String&& value) { m_applicationIdHasBeenSet = true; m_applicationId = std::move(value); } /** *The unique identifier for the application that the segment is associated * with.
*/ inline void SetApplicationId(const char* value) { m_applicationIdHasBeenSet = true; m_applicationId.assign(value); } /** *The unique identifier for the application that the segment is associated * with.
*/ inline SegmentResponse& WithApplicationId(const Aws::String& value) { SetApplicationId(value); return *this;} /** *The unique identifier for the application that the segment is associated * with.
*/ inline SegmentResponse& WithApplicationId(Aws::String&& value) { SetApplicationId(std::move(value)); return *this;} /** *The unique identifier for the application that the segment is associated * with.
*/ inline SegmentResponse& WithApplicationId(const char* value) { SetApplicationId(value); return *this;} /** *The Amazon Resource Name (ARN) of the segment.
*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *The Amazon Resource Name (ARN) of the segment.
*/ inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the segment.
*/ inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } /** *The Amazon Resource Name (ARN) of the segment.
*/ inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } /** *The Amazon Resource Name (ARN) of the segment.
*/ inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } /** *The Amazon Resource Name (ARN) of the segment.
*/ inline SegmentResponse& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the segment.
*/ inline SegmentResponse& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the segment.
*/ inline SegmentResponse& WithArn(const char* value) { SetArn(value); return *this;} /** *The date and time when the segment was created.
*/ inline const Aws::String& GetCreationDate() const{ return m_creationDate; } /** *The date and time when the segment was created.
*/ inline bool CreationDateHasBeenSet() const { return m_creationDateHasBeenSet; } /** *The date and time when the segment was created.
*/ inline void SetCreationDate(const Aws::String& value) { m_creationDateHasBeenSet = true; m_creationDate = value; } /** *The date and time when the segment was created.
*/ inline void SetCreationDate(Aws::String&& value) { m_creationDateHasBeenSet = true; m_creationDate = std::move(value); } /** *The date and time when the segment was created.
*/ inline void SetCreationDate(const char* value) { m_creationDateHasBeenSet = true; m_creationDate.assign(value); } /** *The date and time when the segment was created.
*/ inline SegmentResponse& WithCreationDate(const Aws::String& value) { SetCreationDate(value); return *this;} /** *The date and time when the segment was created.
*/ inline SegmentResponse& WithCreationDate(Aws::String&& value) { SetCreationDate(std::move(value)); return *this;} /** *The date and time when the segment was created.
*/ inline SegmentResponse& WithCreationDate(const char* value) { SetCreationDate(value); return *this;} /** *The dimension settings for the segment.
*/ inline const SegmentDimensions& GetDimensions() const{ return m_dimensions; } /** *The dimension settings for the segment.
*/ inline bool DimensionsHasBeenSet() const { return m_dimensionsHasBeenSet; } /** *The dimension settings for the segment.
*/ inline void SetDimensions(const SegmentDimensions& value) { m_dimensionsHasBeenSet = true; m_dimensions = value; } /** *The dimension settings for the segment.
*/ inline void SetDimensions(SegmentDimensions&& value) { m_dimensionsHasBeenSet = true; m_dimensions = std::move(value); } /** *The dimension settings for the segment.
*/ inline SegmentResponse& WithDimensions(const SegmentDimensions& value) { SetDimensions(value); return *this;} /** *The dimension settings for the segment.
*/ inline SegmentResponse& WithDimensions(SegmentDimensions&& value) { SetDimensions(std::move(value)); return *this;} /** *The unique identifier for the segment.
*/ inline const Aws::String& GetId() const{ return m_id; } /** *The unique identifier for the segment.
*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *The unique identifier for the segment.
*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *The unique identifier for the segment.
*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *The unique identifier for the segment.
*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *The unique identifier for the segment.
*/ inline SegmentResponse& WithId(const Aws::String& value) { SetId(value); return *this;} /** *The unique identifier for the segment.
*/ inline SegmentResponse& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *The unique identifier for the segment.
*/ inline SegmentResponse& WithId(const char* value) { SetId(value); return *this;} /** *The settings for the import job that's associated with the segment.
*/ inline const SegmentImportResource& GetImportDefinition() const{ return m_importDefinition; } /** *The settings for the import job that's associated with the segment.
*/ inline bool ImportDefinitionHasBeenSet() const { return m_importDefinitionHasBeenSet; } /** *The settings for the import job that's associated with the segment.
*/ inline void SetImportDefinition(const SegmentImportResource& value) { m_importDefinitionHasBeenSet = true; m_importDefinition = value; } /** *The settings for the import job that's associated with the segment.
*/ inline void SetImportDefinition(SegmentImportResource&& value) { m_importDefinitionHasBeenSet = true; m_importDefinition = std::move(value); } /** *The settings for the import job that's associated with the segment.
*/ inline SegmentResponse& WithImportDefinition(const SegmentImportResource& value) { SetImportDefinition(value); return *this;} /** *The settings for the import job that's associated with the segment.
*/ inline SegmentResponse& WithImportDefinition(SegmentImportResource&& value) { SetImportDefinition(std::move(value)); return *this;} /** *The date and time when the segment was last modified.
*/ inline const Aws::String& GetLastModifiedDate() const{ return m_lastModifiedDate; } /** *The date and time when the segment was last modified.
*/ inline bool LastModifiedDateHasBeenSet() const { return m_lastModifiedDateHasBeenSet; } /** *The date and time when the segment was last modified.
*/ inline void SetLastModifiedDate(const Aws::String& value) { m_lastModifiedDateHasBeenSet = true; m_lastModifiedDate = value; } /** *The date and time when the segment was last modified.
*/ inline void SetLastModifiedDate(Aws::String&& value) { m_lastModifiedDateHasBeenSet = true; m_lastModifiedDate = std::move(value); } /** *The date and time when the segment was last modified.
*/ inline void SetLastModifiedDate(const char* value) { m_lastModifiedDateHasBeenSet = true; m_lastModifiedDate.assign(value); } /** *The date and time when the segment was last modified.
*/ inline SegmentResponse& WithLastModifiedDate(const Aws::String& value) { SetLastModifiedDate(value); return *this;} /** *The date and time when the segment was last modified.
*/ inline SegmentResponse& WithLastModifiedDate(Aws::String&& value) { SetLastModifiedDate(std::move(value)); return *this;} /** *The date and time when the segment was last modified.
*/ inline SegmentResponse& WithLastModifiedDate(const char* value) { SetLastModifiedDate(value); return *this;} /** *The name of the segment.
*/ inline const Aws::String& GetName() const{ return m_name; } /** *The name of the segment.
*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *The name of the segment.
*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *The name of the segment.
*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *The name of the segment.
*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *The name of the segment.
*/ inline SegmentResponse& WithName(const Aws::String& value) { SetName(value); return *this;} /** *The name of the segment.
*/ inline SegmentResponse& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *The name of the segment.
*/ inline SegmentResponse& WithName(const char* value) { SetName(value); return *this;} /** *A list of one or more segment groups that apply to the segment. Each segment * group consists of zero or more base segments and the dimensions that are applied * to those base segments.
*/ inline const SegmentGroupList& GetSegmentGroups() const{ return m_segmentGroups; } /** *A list of one or more segment groups that apply to the segment. Each segment * group consists of zero or more base segments and the dimensions that are applied * to those base segments.
*/ inline bool SegmentGroupsHasBeenSet() const { return m_segmentGroupsHasBeenSet; } /** *A list of one or more segment groups that apply to the segment. Each segment * group consists of zero or more base segments and the dimensions that are applied * to those base segments.
*/ inline void SetSegmentGroups(const SegmentGroupList& value) { m_segmentGroupsHasBeenSet = true; m_segmentGroups = value; } /** *A list of one or more segment groups that apply to the segment. Each segment * group consists of zero or more base segments and the dimensions that are applied * to those base segments.
*/ inline void SetSegmentGroups(SegmentGroupList&& value) { m_segmentGroupsHasBeenSet = true; m_segmentGroups = std::move(value); } /** *A list of one or more segment groups that apply to the segment. Each segment * group consists of zero or more base segments and the dimensions that are applied * to those base segments.
*/ inline SegmentResponse& WithSegmentGroups(const SegmentGroupList& value) { SetSegmentGroups(value); return *this;} /** *A list of one or more segment groups that apply to the segment. Each segment * group consists of zero or more base segments and the dimensions that are applied * to those base segments.
*/ inline SegmentResponse& WithSegmentGroups(SegmentGroupList&& value) { SetSegmentGroups(std::move(value)); return *this;} /** *The segment type. Valid values are:
DIMENSIONAL - A dynamic * segment, which is a segment that uses selection criteria that you specify and is * based on endpoint data that's reported by your app. Dynamic segments can change * over time.
IMPORT - A static segment, which is a segment that * uses selection criteria that you specify and is based on endpoint definitions * that you import from a file. Imported segments are static; they don't change * over time.
The segment type. Valid values are:
DIMENSIONAL - A dynamic * segment, which is a segment that uses selection criteria that you specify and is * based on endpoint data that's reported by your app. Dynamic segments can change * over time.
IMPORT - A static segment, which is a segment that * uses selection criteria that you specify and is based on endpoint definitions * that you import from a file. Imported segments are static; they don't change * over time.
The segment type. Valid values are:
DIMENSIONAL - A dynamic * segment, which is a segment that uses selection criteria that you specify and is * based on endpoint data that's reported by your app. Dynamic segments can change * over time.
IMPORT - A static segment, which is a segment that * uses selection criteria that you specify and is based on endpoint definitions * that you import from a file. Imported segments are static; they don't change * over time.
The segment type. Valid values are:
DIMENSIONAL - A dynamic * segment, which is a segment that uses selection criteria that you specify and is * based on endpoint data that's reported by your app. Dynamic segments can change * over time.
IMPORT - A static segment, which is a segment that * uses selection criteria that you specify and is based on endpoint definitions * that you import from a file. Imported segments are static; they don't change * over time.
The segment type. Valid values are:
DIMENSIONAL - A dynamic * segment, which is a segment that uses selection criteria that you specify and is * based on endpoint data that's reported by your app. Dynamic segments can change * over time.
IMPORT - A static segment, which is a segment that * uses selection criteria that you specify and is based on endpoint definitions * that you import from a file. Imported segments are static; they don't change * over time.
The segment type. Valid values are:
DIMENSIONAL - A dynamic * segment, which is a segment that uses selection criteria that you specify and is * based on endpoint data that's reported by your app. Dynamic segments can change * over time.
IMPORT - A static segment, which is a segment that * uses selection criteria that you specify and is based on endpoint definitions * that you import from a file. Imported segments are static; they don't change * over time.
A string-to-string map of key-value pairs that identifies the tags that are * associated with the segment. Each tag consists of a required tag key and an * associated tag value.
*/ inline const Aws::MapA string-to-string map of key-value pairs that identifies the tags that are * associated with the segment. Each tag consists of a required tag key and an * associated tag value.
*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *A string-to-string map of key-value pairs that identifies the tags that are * associated with the segment. Each tag consists of a required tag key and an * associated tag value.
*/ inline void SetTags(const Aws::MapA string-to-string map of key-value pairs that identifies the tags that are * associated with the segment. Each tag consists of a required tag key and an * associated tag value.
*/ inline void SetTags(Aws::MapA string-to-string map of key-value pairs that identifies the tags that are * associated with the segment. Each tag consists of a required tag key and an * associated tag value.
*/ inline SegmentResponse& WithTags(const Aws::MapA string-to-string map of key-value pairs that identifies the tags that are * associated with the segment. Each tag consists of a required tag key and an * associated tag value.
*/ inline SegmentResponse& WithTags(Aws::MapA string-to-string map of key-value pairs that identifies the tags that are * associated with the segment. Each tag consists of a required tag key and an * associated tag value.
*/ inline SegmentResponse& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *A string-to-string map of key-value pairs that identifies the tags that are * associated with the segment. Each tag consists of a required tag key and an * associated tag value.
*/ inline SegmentResponse& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *A string-to-string map of key-value pairs that identifies the tags that are * associated with the segment. Each tag consists of a required tag key and an * associated tag value.
*/ inline SegmentResponse& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *A string-to-string map of key-value pairs that identifies the tags that are * associated with the segment. Each tag consists of a required tag key and an * associated tag value.
*/ inline SegmentResponse& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } /** *A string-to-string map of key-value pairs that identifies the tags that are * associated with the segment. Each tag consists of a required tag key and an * associated tag value.
*/ inline SegmentResponse& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *A string-to-string map of key-value pairs that identifies the tags that are * associated with the segment. Each tag consists of a required tag key and an * associated tag value.
*/ inline SegmentResponse& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *A string-to-string map of key-value pairs that identifies the tags that are * associated with the segment. Each tag consists of a required tag key and an * associated tag value.
*/ inline SegmentResponse& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *The version number of the segment.
*/ inline int GetVersion() const{ return m_version; } /** *The version number of the segment.
*/ inline bool VersionHasBeenSet() const { return m_versionHasBeenSet; } /** *The version number of the segment.
*/ inline void SetVersion(int value) { m_versionHasBeenSet = true; m_version = value; } /** *The version number of the segment.
*/ inline SegmentResponse& WithVersion(int value) { SetVersion(value); return *this;} private: Aws::String m_applicationId; bool m_applicationIdHasBeenSet = false; Aws::String m_arn; bool m_arnHasBeenSet = false; Aws::String m_creationDate; bool m_creationDateHasBeenSet = false; SegmentDimensions m_dimensions; bool m_dimensionsHasBeenSet = false; Aws::String m_id; bool m_idHasBeenSet = false; SegmentImportResource m_importDefinition; bool m_importDefinitionHasBeenSet = false; Aws::String m_lastModifiedDate; bool m_lastModifiedDateHasBeenSet = false; Aws::String m_name; bool m_nameHasBeenSet = false; SegmentGroupList m_segmentGroups; bool m_segmentGroupsHasBeenSet = false; SegmentType m_segmentType; bool m_segmentTypeHasBeenSet = false; Aws::Map