/** * 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 { /** *

The flag that enables the matching process of duplicate * profiles.

See Also:

AWS * API Reference

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

The flag that enables the matching process of duplicate profiles.

*/ inline bool GetEnabled() const{ return m_enabled; } /** *

The flag that enables the matching process of duplicate profiles.

*/ inline bool EnabledHasBeenSet() const { return m_enabledHasBeenSet; } /** *

The flag that enables the matching process of duplicate profiles.

*/ inline void SetEnabled(bool value) { m_enabledHasBeenSet = true; m_enabled = value; } /** *

The flag that enables the matching process of duplicate profiles.

*/ inline MatchingRequest& WithEnabled(bool value) { SetEnabled(value); return *this;} /** *

The day and time when do you want to start the Identity Resolution Job every * week.

*/ inline const JobSchedule& GetJobSchedule() const{ return m_jobSchedule; } /** *

The day and time when do you want to start the Identity Resolution Job every * week.

*/ inline bool JobScheduleHasBeenSet() const { return m_jobScheduleHasBeenSet; } /** *

The day and time when do you want to start the Identity Resolution Job every * week.

*/ inline void SetJobSchedule(const JobSchedule& value) { m_jobScheduleHasBeenSet = true; m_jobSchedule = value; } /** *

The day and time when do you want to start the Identity Resolution Job every * week.

*/ inline void SetJobSchedule(JobSchedule&& value) { m_jobScheduleHasBeenSet = true; m_jobSchedule = std::move(value); } /** *

The day and time when do you want to start the Identity Resolution Job every * week.

*/ inline MatchingRequest& WithJobSchedule(const JobSchedule& value) { SetJobSchedule(value); return *this;} /** *

The day and time when do you want to start the Identity Resolution Job every * week.

*/ inline MatchingRequest& WithJobSchedule(JobSchedule&& value) { SetJobSchedule(std::move(value)); return *this;} /** *

Configuration information about the auto-merging process.

*/ inline const AutoMerging& GetAutoMerging() const{ return m_autoMerging; } /** *

Configuration information about the auto-merging process.

*/ inline bool AutoMergingHasBeenSet() const { return m_autoMergingHasBeenSet; } /** *

Configuration information about the auto-merging process.

*/ inline void SetAutoMerging(const AutoMerging& value) { m_autoMergingHasBeenSet = true; m_autoMerging = value; } /** *

Configuration information about the auto-merging process.

*/ inline void SetAutoMerging(AutoMerging&& value) { m_autoMergingHasBeenSet = true; m_autoMerging = std::move(value); } /** *

Configuration information about the auto-merging process.

*/ inline MatchingRequest& WithAutoMerging(const AutoMerging& value) { SetAutoMerging(value); return *this;} /** *

Configuration information about the auto-merging process.

*/ inline MatchingRequest& WithAutoMerging(AutoMerging&& value) { SetAutoMerging(std::move(value)); return *this;} /** *

Configuration information for exporting Identity Resolution results, for * example, to an S3 bucket.

*/ inline const ExportingConfig& GetExportingConfig() const{ return m_exportingConfig; } /** *

Configuration information for exporting Identity Resolution results, for * example, to an S3 bucket.

*/ inline bool ExportingConfigHasBeenSet() const { return m_exportingConfigHasBeenSet; } /** *

Configuration information for exporting Identity Resolution results, for * example, to an S3 bucket.

*/ inline void SetExportingConfig(const ExportingConfig& value) { m_exportingConfigHasBeenSet = true; m_exportingConfig = value; } /** *

Configuration information for exporting Identity Resolution results, for * example, to an S3 bucket.

*/ inline void SetExportingConfig(ExportingConfig&& value) { m_exportingConfigHasBeenSet = true; m_exportingConfig = std::move(value); } /** *

Configuration information for exporting Identity Resolution results, for * example, to an S3 bucket.

*/ inline MatchingRequest& WithExportingConfig(const ExportingConfig& value) { SetExportingConfig(value); return *this;} /** *

Configuration information for exporting Identity Resolution results, for * example, to an S3 bucket.

*/ inline MatchingRequest& WithExportingConfig(ExportingConfig&& value) { SetExportingConfig(std::move(value)); return *this;} private: bool m_enabled; bool m_enabledHasBeenSet = false; JobSchedule m_jobSchedule; bool m_jobScheduleHasBeenSet = false; AutoMerging m_autoMerging; bool m_autoMergingHasBeenSet = false; ExportingConfig m_exportingConfig; bool m_exportingConfigHasBeenSet = false; }; } // namespace Model } // namespace CustomerProfiles } // namespace Aws