/*
* 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
{
///
/// Provides information about the results of sending a message directly to an endpoint
/// address.
///
public partial class MessageResult
{
private DeliveryStatus _deliveryStatus;
private string _messageId;
private int? _statusCode;
private string _statusMessage;
private string _updatedToken;
///
/// Gets and sets the property DeliveryStatus.
///
/// The delivery status of the message. Possible values are:
///
/// -
///
/// DUPLICATE - The endpoint address is a duplicate of another endpoint address. Amazon
/// Pinpoint won't attempt to send the message again.
///
///
-
///
/// OPT_OUT - The user who's associated with the endpoint address has opted out of receiving
/// messages from you. Amazon Pinpoint won't attempt to send the message again.
///
///
-
///
/// PERMANENT_FAILURE - An error occurred when delivering the message to the endpoint
/// address. Amazon Pinpoint won't attempt to send the message again.
///
///
-
///
/// SUCCESSFUL - The message was successfully delivered to the endpoint address.
///
///
-
///
/// TEMPORARY_FAILURE - A temporary error occurred. Amazon Pinpoint won't attempt to send
/// the message again.
///
///
-
///
/// THROTTLED - Amazon Pinpoint throttled the operation to send the message to the endpoint
/// address.
///
///
-
///
/// TIMEOUT - The message couldn't be sent within the timeout period.
///
///
-
///
/// UNKNOWN_FAILURE - An unknown error occurred.
///
///
///
[AWSProperty(Required=true)]
public DeliveryStatus DeliveryStatus
{
get { return this._deliveryStatus; }
set { this._deliveryStatus = value; }
}
// Check to see if DeliveryStatus property is set
internal bool IsSetDeliveryStatus()
{
return this._deliveryStatus != null;
}
///
/// Gets and sets the property MessageId.
///
/// The unique identifier for the message that was sent.
///
///
public string MessageId
{
get { return this._messageId; }
set { this._messageId = value; }
}
// Check to see if MessageId property is set
internal bool IsSetMessageId()
{
return this._messageId != null;
}
///
/// Gets and sets the property StatusCode.
///
/// The downstream service status code for delivering the message.
///
///
[AWSProperty(Required=true)]
public int StatusCode
{
get { return this._statusCode.GetValueOrDefault(); }
set { this._statusCode = value; }
}
// Check to see if StatusCode property is set
internal bool IsSetStatusCode()
{
return this._statusCode.HasValue;
}
///
/// Gets and sets the property StatusMessage.
///
/// The status message for delivering the message.
///
///
public string StatusMessage
{
get { return this._statusMessage; }
set { this._statusMessage = value; }
}
// Check to see if StatusMessage property is set
internal bool IsSetStatusMessage()
{
return this._statusMessage != null;
}
///
/// Gets and sets the property UpdatedToken.
///
/// For push notifications that are sent through the GCM channel, specifies whether the
/// endpoint's device registration token was updated as part of delivering the message.
///
///
public string UpdatedToken
{
get { return this._updatedToken; }
set { this._updatedToken = value; }
}
// Check to see if UpdatedToken property is set
internal bool IsSetUpdatedToken()
{
return this._updatedToken != null;
}
}
}