/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace CustomerProfiles { namespace Model { /** */ class MergeProfilesRequest : public CustomerProfilesRequest { public: AWS_CUSTOMERPROFILES_API MergeProfilesRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "MergeProfiles"; } AWS_CUSTOMERPROFILES_API Aws::String SerializePayload() const override; /** *

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 MergeProfilesRequest& WithDomainName(const Aws::String& value) { SetDomainName(value); return *this;} /** *

The unique name of the domain.

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

The unique name of the domain.

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

The identifier of the profile to be taken.

*/ inline const Aws::String& GetMainProfileId() const{ return m_mainProfileId; } /** *

The identifier of the profile to be taken.

*/ inline bool MainProfileIdHasBeenSet() const { return m_mainProfileIdHasBeenSet; } /** *

The identifier of the profile to be taken.

*/ inline void SetMainProfileId(const Aws::String& value) { m_mainProfileIdHasBeenSet = true; m_mainProfileId = value; } /** *

The identifier of the profile to be taken.

*/ inline void SetMainProfileId(Aws::String&& value) { m_mainProfileIdHasBeenSet = true; m_mainProfileId = std::move(value); } /** *

The identifier of the profile to be taken.

*/ inline void SetMainProfileId(const char* value) { m_mainProfileIdHasBeenSet = true; m_mainProfileId.assign(value); } /** *

The identifier of the profile to be taken.

*/ inline MergeProfilesRequest& WithMainProfileId(const Aws::String& value) { SetMainProfileId(value); return *this;} /** *

The identifier of the profile to be taken.

*/ inline MergeProfilesRequest& WithMainProfileId(Aws::String&& value) { SetMainProfileId(std::move(value)); return *this;} /** *

The identifier of the profile to be taken.

*/ inline MergeProfilesRequest& WithMainProfileId(const char* value) { SetMainProfileId(value); return *this;} /** *

The identifier of the profile to be merged into MainProfileId.

*/ inline const Aws::Vector& GetProfileIdsToBeMerged() const{ return m_profileIdsToBeMerged; } /** *

The identifier of the profile to be merged into MainProfileId.

*/ inline bool ProfileIdsToBeMergedHasBeenSet() const { return m_profileIdsToBeMergedHasBeenSet; } /** *

The identifier of the profile to be merged into MainProfileId.

*/ inline void SetProfileIdsToBeMerged(const Aws::Vector& value) { m_profileIdsToBeMergedHasBeenSet = true; m_profileIdsToBeMerged = value; } /** *

The identifier of the profile to be merged into MainProfileId.

*/ inline void SetProfileIdsToBeMerged(Aws::Vector&& value) { m_profileIdsToBeMergedHasBeenSet = true; m_profileIdsToBeMerged = std::move(value); } /** *

The identifier of the profile to be merged into MainProfileId.

*/ inline MergeProfilesRequest& WithProfileIdsToBeMerged(const Aws::Vector& value) { SetProfileIdsToBeMerged(value); return *this;} /** *

The identifier of the profile to be merged into MainProfileId.

*/ inline MergeProfilesRequest& WithProfileIdsToBeMerged(Aws::Vector&& value) { SetProfileIdsToBeMerged(std::move(value)); return *this;} /** *

The identifier of the profile to be merged into MainProfileId.

*/ inline MergeProfilesRequest& AddProfileIdsToBeMerged(const Aws::String& value) { m_profileIdsToBeMergedHasBeenSet = true; m_profileIdsToBeMerged.push_back(value); return *this; } /** *

The identifier of the profile to be merged into MainProfileId.

*/ inline MergeProfilesRequest& AddProfileIdsToBeMerged(Aws::String&& value) { m_profileIdsToBeMergedHasBeenSet = true; m_profileIdsToBeMerged.push_back(std::move(value)); return *this; } /** *

The identifier of the profile to be merged into MainProfileId.

*/ inline MergeProfilesRequest& AddProfileIdsToBeMerged(const char* value) { m_profileIdsToBeMergedHasBeenSet = true; m_profileIdsToBeMerged.push_back(value); return *this; } /** *

The identifiers of the fields in the profile that has the information you * want to apply to the merge. For example, say you want to merge EmailAddress from * Profile1 into MainProfile. This would be the identifier of the EmailAddress * field in Profile1.

*/ inline const FieldSourceProfileIds& GetFieldSourceProfileIds() const{ return m_fieldSourceProfileIds; } /** *

The identifiers of the fields in the profile that has the information you * want to apply to the merge. For example, say you want to merge EmailAddress from * Profile1 into MainProfile. This would be the identifier of the EmailAddress * field in Profile1.

*/ inline bool FieldSourceProfileIdsHasBeenSet() const { return m_fieldSourceProfileIdsHasBeenSet; } /** *

The identifiers of the fields in the profile that has the information you * want to apply to the merge. For example, say you want to merge EmailAddress from * Profile1 into MainProfile. This would be the identifier of the EmailAddress * field in Profile1.

*/ inline void SetFieldSourceProfileIds(const FieldSourceProfileIds& value) { m_fieldSourceProfileIdsHasBeenSet = true; m_fieldSourceProfileIds = value; } /** *

The identifiers of the fields in the profile that has the information you * want to apply to the merge. For example, say you want to merge EmailAddress from * Profile1 into MainProfile. This would be the identifier of the EmailAddress * field in Profile1.

*/ inline void SetFieldSourceProfileIds(FieldSourceProfileIds&& value) { m_fieldSourceProfileIdsHasBeenSet = true; m_fieldSourceProfileIds = std::move(value); } /** *

The identifiers of the fields in the profile that has the information you * want to apply to the merge. For example, say you want to merge EmailAddress from * Profile1 into MainProfile. This would be the identifier of the EmailAddress * field in Profile1.

*/ inline MergeProfilesRequest& WithFieldSourceProfileIds(const FieldSourceProfileIds& value) { SetFieldSourceProfileIds(value); return *this;} /** *

The identifiers of the fields in the profile that has the information you * want to apply to the merge. For example, say you want to merge EmailAddress from * Profile1 into MainProfile. This would be the identifier of the EmailAddress * field in Profile1.

*/ inline MergeProfilesRequest& WithFieldSourceProfileIds(FieldSourceProfileIds&& value) { SetFieldSourceProfileIds(std::move(value)); return *this;} private: Aws::String m_domainName; bool m_domainNameHasBeenSet = false; Aws::String m_mainProfileId; bool m_mainProfileIdHasBeenSet = false; Aws::Vector m_profileIdsToBeMerged; bool m_profileIdsToBeMergedHasBeenSet = false; FieldSourceProfileIds m_fieldSourceProfileIds; bool m_fieldSourceProfileIdsHasBeenSet = false; }; } // namespace Model } // namespace CustomerProfiles } // namespace Aws