/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the pinpoint-sms-voice-v2-2022-03-31.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.PinpointSMSVoiceV2.Model { /// /// Container for the parameters to the CreateEventDestination operation. /// Creates a new event destination in a configuration set. /// /// /// /// An event destination is a location where you send message events. The event options /// are Amazon CloudWatch, Amazon Kinesis Data Firehose, or Amazon SNS. For example, when /// a message is delivered successfully, you can send information about that event to /// an event destination, or send notifications to endpoints that are subscribed to an /// Amazon SNS topic. /// /// /// /// Each configuration set can contain between 0 and 5 event destinations. Each event /// destination can contain a reference to a single destination, such as a CloudWatch /// or Kinesis Data Firehose destination. /// /// public partial class CreateEventDestinationRequest : AmazonPinpointSMSVoiceV2Request { private string _clientToken; private CloudWatchLogsDestination _cloudWatchLogsDestination; private string _configurationSetName; private string _eventDestinationName; private KinesisFirehoseDestination _kinesisFirehoseDestination; private List _matchingEventTypes = new List(); private SnsDestination _snsDestination; /// /// Gets and sets the property ClientToken. /// /// Unique, case-sensitive identifier that you provide to ensure the idempotency of the /// request. If you don't specify a client token, a randomly generated token is used for /// the request to ensure idempotency. /// /// [AWSProperty(Min=1, Max=64)] public string ClientToken { get { return this._clientToken; } set { this._clientToken = value; } } // Check to see if ClientToken property is set internal bool IsSetClientToken() { return this._clientToken != null; } /// /// Gets and sets the property CloudWatchLogsDestination. /// /// An object that contains information about an event destination for logging to Amazon /// CloudWatch logs. /// /// public CloudWatchLogsDestination CloudWatchLogsDestination { get { return this._cloudWatchLogsDestination; } set { this._cloudWatchLogsDestination = value; } } // Check to see if CloudWatchLogsDestination property is set internal bool IsSetCloudWatchLogsDestination() { return this._cloudWatchLogsDestination != null; } /// /// Gets and sets the property ConfigurationSetName. /// /// Either the name of the configuration set or the configuration set ARN to apply event /// logging to. The ConfigurateSetName and ConfigurationSetArn can be found using the /// DescribeConfigurationSets action. /// /// [AWSProperty(Required=true, Min=1, Max=256)] public string ConfigurationSetName { get { return this._configurationSetName; } set { this._configurationSetName = value; } } // Check to see if ConfigurationSetName property is set internal bool IsSetConfigurationSetName() { return this._configurationSetName != null; } /// /// Gets and sets the property EventDestinationName. /// /// The name that identifies the event destination. /// /// [AWSProperty(Required=true, Min=1, Max=64)] public string EventDestinationName { get { return this._eventDestinationName; } set { this._eventDestinationName = value; } } // Check to see if EventDestinationName property is set internal bool IsSetEventDestinationName() { return this._eventDestinationName != null; } /// /// Gets and sets the property KinesisFirehoseDestination. /// /// An object that contains information about an event destination for logging to Amazon /// Kinesis Data Firehose. /// /// public KinesisFirehoseDestination KinesisFirehoseDestination { get { return this._kinesisFirehoseDestination; } set { this._kinesisFirehoseDestination = value; } } // Check to see if KinesisFirehoseDestination property is set internal bool IsSetKinesisFirehoseDestination() { return this._kinesisFirehoseDestination != null; } /// /// Gets and sets the property MatchingEventTypes. /// /// An array of event types that determine which events to log. If "ALL" is used, then /// Amazon Pinpoint logs every event type. /// /// [AWSProperty(Required=true, Min=1, Max=25)] public List MatchingEventTypes { get { return this._matchingEventTypes; } set { this._matchingEventTypes = value; } } // Check to see if MatchingEventTypes property is set internal bool IsSetMatchingEventTypes() { return this._matchingEventTypes != null && this._matchingEventTypes.Count > 0; } /// /// Gets and sets the property SnsDestination. /// /// An object that contains information about an event destination for logging to Amazon /// SNS. /// /// public SnsDestination SnsDestination { get { return this._snsDestination; } set { this._snsDestination = value; } } // Check to see if SnsDestination property is set internal bool IsSetSnsDestination() { return this._snsDestination != null; } } }