/*
* 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-2016-12-01.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.Pinpoint.Model
{
///
/// Specifies the delivery configuration settings for sending a campaign or campaign treatment
/// through a custom channel. This object is required if you use the CampaignCustomMessage
/// object to define the message to send for the campaign or campaign treatment.
///
public partial class CustomDeliveryConfiguration
{
private string _deliveryUri;
private List _endpointTypes = new List();
///
/// Gets and sets the property DeliveryUri.
///
/// The destination to send the campaign or treatment to. This value can be one of the
/// following:
///
/// -
///
/// The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle
/// delivery of the campaign or treatment.
///
///
-
///
/// The URL for a web application or service that supports HTTPS and can receive the message.
/// The URL has to be a full URL, including the HTTPS protocol.
///
///
///
[AWSProperty(Required=true)]
public string DeliveryUri
{
get { return this._deliveryUri; }
set { this._deliveryUri = value; }
}
// Check to see if DeliveryUri property is set
internal bool IsSetDeliveryUri()
{
return this._deliveryUri != null;
}
///
/// Gets and sets the property EndpointTypes.
///
/// The types of endpoints to send the campaign or treatment to. Each valid value maps
/// to a type of channel that you can associate with an endpoint by using the ChannelType
/// property of an endpoint.
///
///
public List EndpointTypes
{
get { return this._endpointTypes; }
set { this._endpointTypes = value; }
}
// Check to see if EndpointTypes property is set
internal bool IsSetEndpointTypes()
{
return this._endpointTypes != null && this._endpointTypes.Count > 0;
}
}
}