/** * 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 SES { namespace Model { /** *

Represents a request to create a configuration set event destination. A * configuration set event destination, which can be either Amazon CloudWatch or * Amazon Kinesis Firehose, describes an AWS service in which Amazon SES publishes * the email sending events associated with a configuration set. For information * about using configuration sets, see the Amazon * SES Developer Guide.

See Also:

AWS * API Reference

*/ class CreateConfigurationSetEventDestinationRequest : public SESRequest { public: AWS_SES_API CreateConfigurationSetEventDestinationRequest(); // 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 "CreateConfigurationSetEventDestination"; } AWS_SES_API Aws::String SerializePayload() const override; protected: AWS_SES_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override; public: /** *

The name of the configuration set that the event destination should be * associated with.

*/ inline const Aws::String& GetConfigurationSetName() const{ return m_configurationSetName; } /** *

The name of the configuration set that the event destination should be * associated with.

*/ inline bool ConfigurationSetNameHasBeenSet() const { return m_configurationSetNameHasBeenSet; } /** *

The name of the configuration set that the event destination should be * associated with.

*/ inline void SetConfigurationSetName(const Aws::String& value) { m_configurationSetNameHasBeenSet = true; m_configurationSetName = value; } /** *

The name of the configuration set that the event destination should be * associated with.

*/ inline void SetConfigurationSetName(Aws::String&& value) { m_configurationSetNameHasBeenSet = true; m_configurationSetName = std::move(value); } /** *

The name of the configuration set that the event destination should be * associated with.

*/ inline void SetConfigurationSetName(const char* value) { m_configurationSetNameHasBeenSet = true; m_configurationSetName.assign(value); } /** *

The name of the configuration set that the event destination should be * associated with.

*/ inline CreateConfigurationSetEventDestinationRequest& WithConfigurationSetName(const Aws::String& value) { SetConfigurationSetName(value); return *this;} /** *

The name of the configuration set that the event destination should be * associated with.

*/ inline CreateConfigurationSetEventDestinationRequest& WithConfigurationSetName(Aws::String&& value) { SetConfigurationSetName(std::move(value)); return *this;} /** *

The name of the configuration set that the event destination should be * associated with.

*/ inline CreateConfigurationSetEventDestinationRequest& WithConfigurationSetName(const char* value) { SetConfigurationSetName(value); return *this;} /** *

An object that describes the AWS service that email sending event information * will be published to.

*/ inline const EventDestination& GetEventDestination() const{ return m_eventDestination; } /** *

An object that describes the AWS service that email sending event information * will be published to.

*/ inline bool EventDestinationHasBeenSet() const { return m_eventDestinationHasBeenSet; } /** *

An object that describes the AWS service that email sending event information * will be published to.

*/ inline void SetEventDestination(const EventDestination& value) { m_eventDestinationHasBeenSet = true; m_eventDestination = value; } /** *

An object that describes the AWS service that email sending event information * will be published to.

*/ inline void SetEventDestination(EventDestination&& value) { m_eventDestinationHasBeenSet = true; m_eventDestination = std::move(value); } /** *

An object that describes the AWS service that email sending event information * will be published to.

*/ inline CreateConfigurationSetEventDestinationRequest& WithEventDestination(const EventDestination& value) { SetEventDestination(value); return *this;} /** *

An object that describes the AWS service that email sending event information * will be published to.

*/ inline CreateConfigurationSetEventDestinationRequest& WithEventDestination(EventDestination&& value) { SetEventDestination(std::move(value)); return *this;} private: Aws::String m_configurationSetName; bool m_configurationSetNameHasBeenSet = false; EventDestination m_eventDestination; bool m_eventDestinationHasBeenSet = false; }; } // namespace Model } // namespace SES } // namespace Aws