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

An integration in list of integrations.

See Also:

AWS * API Reference

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

The unique name of the domain.

*/ inline const Aws::String& GetDomainName() const{ return m_domainName; } /** *

The unique name of the domain.

*/ inline bool DomainNameHasBeenSet() const { return m_domainNameHasBeenSet; } /** *

The unique name of the domain.

*/ inline void SetDomainName(const Aws::String& value) { m_domainNameHasBeenSet = true; m_domainName = value; } /** *

The unique name of the domain.

*/ inline void SetDomainName(Aws::String&& value) { m_domainNameHasBeenSet = true; m_domainName = std::move(value); } /** *

The unique name of the domain.

*/ inline void SetDomainName(const char* value) { m_domainNameHasBeenSet = true; m_domainName.assign(value); } /** *

The unique name of the domain.

*/ inline ListIntegrationItem& WithDomainName(const Aws::String& value) { SetDomainName(value); return *this;} /** *

The unique name of the domain.

*/ inline ListIntegrationItem& WithDomainName(Aws::String&& value) { SetDomainName(std::move(value)); return *this;} /** *

The unique name of the domain.

*/ inline ListIntegrationItem& WithDomainName(const char* value) { SetDomainName(value); return *this;} /** *

The URI of the S3 bucket or any other type of data source.

*/ inline const Aws::String& GetUri() const{ return m_uri; } /** *

The URI of the S3 bucket or any other type of data source.

*/ inline bool UriHasBeenSet() const { return m_uriHasBeenSet; } /** *

The URI of the S3 bucket or any other type of data source.

*/ inline void SetUri(const Aws::String& value) { m_uriHasBeenSet = true; m_uri = value; } /** *

The URI of the S3 bucket or any other type of data source.

*/ inline void SetUri(Aws::String&& value) { m_uriHasBeenSet = true; m_uri = std::move(value); } /** *

The URI of the S3 bucket or any other type of data source.

*/ inline void SetUri(const char* value) { m_uriHasBeenSet = true; m_uri.assign(value); } /** *

The URI of the S3 bucket or any other type of data source.

*/ inline ListIntegrationItem& WithUri(const Aws::String& value) { SetUri(value); return *this;} /** *

The URI of the S3 bucket or any other type of data source.

*/ inline ListIntegrationItem& WithUri(Aws::String&& value) { SetUri(std::move(value)); return *this;} /** *

The URI of the S3 bucket or any other type of data source.

*/ inline ListIntegrationItem& WithUri(const char* value) { SetUri(value); return *this;} /** *

The name of the profile object type.

*/ inline const Aws::String& GetObjectTypeName() const{ return m_objectTypeName; } /** *

The name of the profile object type.

*/ inline bool ObjectTypeNameHasBeenSet() const { return m_objectTypeNameHasBeenSet; } /** *

The name of the profile object type.

*/ inline void SetObjectTypeName(const Aws::String& value) { m_objectTypeNameHasBeenSet = true; m_objectTypeName = value; } /** *

The name of the profile object type.

*/ inline void SetObjectTypeName(Aws::String&& value) { m_objectTypeNameHasBeenSet = true; m_objectTypeName = std::move(value); } /** *

The name of the profile object type.

*/ inline void SetObjectTypeName(const char* value) { m_objectTypeNameHasBeenSet = true; m_objectTypeName.assign(value); } /** *

The name of the profile object type.

*/ inline ListIntegrationItem& WithObjectTypeName(const Aws::String& value) { SetObjectTypeName(value); return *this;} /** *

The name of the profile object type.

*/ inline ListIntegrationItem& WithObjectTypeName(Aws::String&& value) { SetObjectTypeName(std::move(value)); return *this;} /** *

The name of the profile object type.

*/ inline ListIntegrationItem& WithObjectTypeName(const char* value) { SetObjectTypeName(value); return *this;} /** *

The timestamp of when the domain was created.

*/ inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; } /** *

The timestamp of when the domain was created.

*/ inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; } /** *

The timestamp of when the domain was created.

*/ inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAtHasBeenSet = true; m_createdAt = value; } /** *

The timestamp of when the domain was created.

*/ inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::move(value); } /** *

The timestamp of when the domain was created.

*/ inline ListIntegrationItem& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;} /** *

The timestamp of when the domain was created.

*/ inline ListIntegrationItem& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} /** *

The timestamp of when the domain was most recently edited.

*/ inline const Aws::Utils::DateTime& GetLastUpdatedAt() const{ return m_lastUpdatedAt; } /** *

The timestamp of when the domain was most recently edited.

*/ inline bool LastUpdatedAtHasBeenSet() const { return m_lastUpdatedAtHasBeenSet; } /** *

The timestamp of when the domain was most recently edited.

*/ inline void SetLastUpdatedAt(const Aws::Utils::DateTime& value) { m_lastUpdatedAtHasBeenSet = true; m_lastUpdatedAt = value; } /** *

The timestamp of when the domain was most recently edited.

*/ inline void SetLastUpdatedAt(Aws::Utils::DateTime&& value) { m_lastUpdatedAtHasBeenSet = true; m_lastUpdatedAt = std::move(value); } /** *

The timestamp of when the domain was most recently edited.

*/ inline ListIntegrationItem& WithLastUpdatedAt(const Aws::Utils::DateTime& value) { SetLastUpdatedAt(value); return *this;} /** *

The timestamp of when the domain was most recently edited.

*/ inline ListIntegrationItem& WithLastUpdatedAt(Aws::Utils::DateTime&& value) { SetLastUpdatedAt(std::move(value)); return *this;} /** *

The tags used to organize, track, or control access for this resource.

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

The tags used to organize, track, or control access for this resource.

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

The tags used to organize, track, or control access for this resource.

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

The tags used to organize, track, or control access for this resource.

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

The tags used to organize, track, or control access for this resource.

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

The tags used to organize, track, or control access for this resource.

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

The tags used to organize, track, or control access for this resource.

*/ inline ListIntegrationItem& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *

The tags used to organize, track, or control access for this resource.

*/ inline ListIntegrationItem& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *

The tags used to organize, track, or control access for this resource.

*/ inline ListIntegrationItem& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *

The tags used to organize, track, or control access for this resource.

*/ inline ListIntegrationItem& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } /** *

The tags used to organize, track, or control access for this resource.

*/ inline ListIntegrationItem& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *

The tags used to organize, track, or control access for this resource.

*/ inline ListIntegrationItem& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *

The tags used to organize, track, or control access for this resource.

*/ inline ListIntegrationItem& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *

A map in which each key is an event type from an external application such as * Segment or Shopify, and each value is an ObjectTypeName (template) * used to ingest the event. It supports the following event types: * SegmentIdentify, ShopifyCreateCustomers, * ShopifyUpdateCustomers, ShopifyCreateDraftOrders, * ShopifyUpdateDraftOrders, ShopifyCreateOrders, and * ShopifyUpdatedOrders.

*/ inline const Aws::Map& GetObjectTypeNames() const{ return m_objectTypeNames; } /** *

A map in which each key is an event type from an external application such as * Segment or Shopify, and each value is an ObjectTypeName (template) * used to ingest the event. It supports the following event types: * SegmentIdentify, ShopifyCreateCustomers, * ShopifyUpdateCustomers, ShopifyCreateDraftOrders, * ShopifyUpdateDraftOrders, ShopifyCreateOrders, and * ShopifyUpdatedOrders.

*/ inline bool ObjectTypeNamesHasBeenSet() const { return m_objectTypeNamesHasBeenSet; } /** *

A map in which each key is an event type from an external application such as * Segment or Shopify, and each value is an ObjectTypeName (template) * used to ingest the event. It supports the following event types: * SegmentIdentify, ShopifyCreateCustomers, * ShopifyUpdateCustomers, ShopifyCreateDraftOrders, * ShopifyUpdateDraftOrders, ShopifyCreateOrders, and * ShopifyUpdatedOrders.

*/ inline void SetObjectTypeNames(const Aws::Map& value) { m_objectTypeNamesHasBeenSet = true; m_objectTypeNames = value; } /** *

A map in which each key is an event type from an external application such as * Segment or Shopify, and each value is an ObjectTypeName (template) * used to ingest the event. It supports the following event types: * SegmentIdentify, ShopifyCreateCustomers, * ShopifyUpdateCustomers, ShopifyCreateDraftOrders, * ShopifyUpdateDraftOrders, ShopifyCreateOrders, and * ShopifyUpdatedOrders.

*/ inline void SetObjectTypeNames(Aws::Map&& value) { m_objectTypeNamesHasBeenSet = true; m_objectTypeNames = std::move(value); } /** *

A map in which each key is an event type from an external application such as * Segment or Shopify, and each value is an ObjectTypeName (template) * used to ingest the event. It supports the following event types: * SegmentIdentify, ShopifyCreateCustomers, * ShopifyUpdateCustomers, ShopifyCreateDraftOrders, * ShopifyUpdateDraftOrders, ShopifyCreateOrders, and * ShopifyUpdatedOrders.

*/ inline ListIntegrationItem& WithObjectTypeNames(const Aws::Map& value) { SetObjectTypeNames(value); return *this;} /** *

A map in which each key is an event type from an external application such as * Segment or Shopify, and each value is an ObjectTypeName (template) * used to ingest the event. It supports the following event types: * SegmentIdentify, ShopifyCreateCustomers, * ShopifyUpdateCustomers, ShopifyCreateDraftOrders, * ShopifyUpdateDraftOrders, ShopifyCreateOrders, and * ShopifyUpdatedOrders.

*/ inline ListIntegrationItem& WithObjectTypeNames(Aws::Map&& value) { SetObjectTypeNames(std::move(value)); return *this;} /** *

A map in which each key is an event type from an external application such as * Segment or Shopify, and each value is an ObjectTypeName (template) * used to ingest the event. It supports the following event types: * SegmentIdentify, ShopifyCreateCustomers, * ShopifyUpdateCustomers, ShopifyCreateDraftOrders, * ShopifyUpdateDraftOrders, ShopifyCreateOrders, and * ShopifyUpdatedOrders.

*/ inline ListIntegrationItem& AddObjectTypeNames(const Aws::String& key, const Aws::String& value) { m_objectTypeNamesHasBeenSet = true; m_objectTypeNames.emplace(key, value); return *this; } /** *

A map in which each key is an event type from an external application such as * Segment or Shopify, and each value is an ObjectTypeName (template) * used to ingest the event. It supports the following event types: * SegmentIdentify, ShopifyCreateCustomers, * ShopifyUpdateCustomers, ShopifyCreateDraftOrders, * ShopifyUpdateDraftOrders, ShopifyCreateOrders, and * ShopifyUpdatedOrders.

*/ inline ListIntegrationItem& AddObjectTypeNames(Aws::String&& key, const Aws::String& value) { m_objectTypeNamesHasBeenSet = true; m_objectTypeNames.emplace(std::move(key), value); return *this; } /** *

A map in which each key is an event type from an external application such as * Segment or Shopify, and each value is an ObjectTypeName (template) * used to ingest the event. It supports the following event types: * SegmentIdentify, ShopifyCreateCustomers, * ShopifyUpdateCustomers, ShopifyCreateDraftOrders, * ShopifyUpdateDraftOrders, ShopifyCreateOrders, and * ShopifyUpdatedOrders.

*/ inline ListIntegrationItem& AddObjectTypeNames(const Aws::String& key, Aws::String&& value) { m_objectTypeNamesHasBeenSet = true; m_objectTypeNames.emplace(key, std::move(value)); return *this; } /** *

A map in which each key is an event type from an external application such as * Segment or Shopify, and each value is an ObjectTypeName (template) * used to ingest the event. It supports the following event types: * SegmentIdentify, ShopifyCreateCustomers, * ShopifyUpdateCustomers, ShopifyCreateDraftOrders, * ShopifyUpdateDraftOrders, ShopifyCreateOrders, and * ShopifyUpdatedOrders.

*/ inline ListIntegrationItem& AddObjectTypeNames(Aws::String&& key, Aws::String&& value) { m_objectTypeNamesHasBeenSet = true; m_objectTypeNames.emplace(std::move(key), std::move(value)); return *this; } /** *

A map in which each key is an event type from an external application such as * Segment or Shopify, and each value is an ObjectTypeName (template) * used to ingest the event. It supports the following event types: * SegmentIdentify, ShopifyCreateCustomers, * ShopifyUpdateCustomers, ShopifyCreateDraftOrders, * ShopifyUpdateDraftOrders, ShopifyCreateOrders, and * ShopifyUpdatedOrders.

*/ inline ListIntegrationItem& AddObjectTypeNames(const char* key, Aws::String&& value) { m_objectTypeNamesHasBeenSet = true; m_objectTypeNames.emplace(key, std::move(value)); return *this; } /** *

A map in which each key is an event type from an external application such as * Segment or Shopify, and each value is an ObjectTypeName (template) * used to ingest the event. It supports the following event types: * SegmentIdentify, ShopifyCreateCustomers, * ShopifyUpdateCustomers, ShopifyCreateDraftOrders, * ShopifyUpdateDraftOrders, ShopifyCreateOrders, and * ShopifyUpdatedOrders.

*/ inline ListIntegrationItem& AddObjectTypeNames(Aws::String&& key, const char* value) { m_objectTypeNamesHasBeenSet = true; m_objectTypeNames.emplace(std::move(key), value); return *this; } /** *

A map in which each key is an event type from an external application such as * Segment or Shopify, and each value is an ObjectTypeName (template) * used to ingest the event. It supports the following event types: * SegmentIdentify, ShopifyCreateCustomers, * ShopifyUpdateCustomers, ShopifyCreateDraftOrders, * ShopifyUpdateDraftOrders, ShopifyCreateOrders, and * ShopifyUpdatedOrders.

*/ inline ListIntegrationItem& AddObjectTypeNames(const char* key, const char* value) { m_objectTypeNamesHasBeenSet = true; m_objectTypeNames.emplace(key, value); return *this; } /** *

Unique identifier for the workflow.

*/ inline const Aws::String& GetWorkflowId() const{ return m_workflowId; } /** *

Unique identifier for the workflow.

*/ inline bool WorkflowIdHasBeenSet() const { return m_workflowIdHasBeenSet; } /** *

Unique identifier for the workflow.

*/ inline void SetWorkflowId(const Aws::String& value) { m_workflowIdHasBeenSet = true; m_workflowId = value; } /** *

Unique identifier for the workflow.

*/ inline void SetWorkflowId(Aws::String&& value) { m_workflowIdHasBeenSet = true; m_workflowId = std::move(value); } /** *

Unique identifier for the workflow.

*/ inline void SetWorkflowId(const char* value) { m_workflowIdHasBeenSet = true; m_workflowId.assign(value); } /** *

Unique identifier for the workflow.

*/ inline ListIntegrationItem& WithWorkflowId(const Aws::String& value) { SetWorkflowId(value); return *this;} /** *

Unique identifier for the workflow.

*/ inline ListIntegrationItem& WithWorkflowId(Aws::String&& value) { SetWorkflowId(std::move(value)); return *this;} /** *

Unique identifier for the workflow.

*/ inline ListIntegrationItem& WithWorkflowId(const char* value) { SetWorkflowId(value); return *this;} /** *

Boolean that shows if the Flow that's associated with the Integration is * created in Amazon Appflow, or with ObjectTypeName equals _unstructured via * API/CLI in flowDefinition.

*/ inline bool GetIsUnstructured() const{ return m_isUnstructured; } /** *

Boolean that shows if the Flow that's associated with the Integration is * created in Amazon Appflow, or with ObjectTypeName equals _unstructured via * API/CLI in flowDefinition.

*/ inline bool IsUnstructuredHasBeenSet() const { return m_isUnstructuredHasBeenSet; } /** *

Boolean that shows if the Flow that's associated with the Integration is * created in Amazon Appflow, or with ObjectTypeName equals _unstructured via * API/CLI in flowDefinition.

*/ inline void SetIsUnstructured(bool value) { m_isUnstructuredHasBeenSet = true; m_isUnstructured = value; } /** *

Boolean that shows if the Flow that's associated with the Integration is * created in Amazon Appflow, or with ObjectTypeName equals _unstructured via * API/CLI in flowDefinition.

*/ inline ListIntegrationItem& WithIsUnstructured(bool value) { SetIsUnstructured(value); return *this;} private: Aws::String m_domainName; bool m_domainNameHasBeenSet = false; Aws::String m_uri; bool m_uriHasBeenSet = false; Aws::String m_objectTypeName; bool m_objectTypeNameHasBeenSet = false; Aws::Utils::DateTime m_createdAt; bool m_createdAtHasBeenSet = false; Aws::Utils::DateTime m_lastUpdatedAt; bool m_lastUpdatedAtHasBeenSet = false; Aws::Map m_tags; bool m_tagsHasBeenSet = false; Aws::Map m_objectTypeNames; bool m_objectTypeNamesHasBeenSet = false; Aws::String m_workflowId; bool m_workflowIdHasBeenSet = false; bool m_isUnstructured; bool m_isUnstructuredHasBeenSet = false; }; } // namespace Model } // namespace CustomerProfiles } // namespace Aws