/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Provides information about the delivery status and results of sending a
* message directly to an endpoint.See Also:
AWS
* API Reference
The endpoint address that the message was delivered to.
*/ inline const Aws::String& GetAddress() const{ return m_address; } /** *The endpoint address that the message was delivered to.
*/ inline bool AddressHasBeenSet() const { return m_addressHasBeenSet; } /** *The endpoint address that the message was delivered to.
*/ inline void SetAddress(const Aws::String& value) { m_addressHasBeenSet = true; m_address = value; } /** *The endpoint address that the message was delivered to.
*/ inline void SetAddress(Aws::String&& value) { m_addressHasBeenSet = true; m_address = std::move(value); } /** *The endpoint address that the message was delivered to.
*/ inline void SetAddress(const char* value) { m_addressHasBeenSet = true; m_address.assign(value); } /** *The endpoint address that the message was delivered to.
*/ inline EndpointMessageResult& WithAddress(const Aws::String& value) { SetAddress(value); return *this;} /** *The endpoint address that the message was delivered to.
*/ inline EndpointMessageResult& WithAddress(Aws::String&& value) { SetAddress(std::move(value)); return *this;} /** *The endpoint address that the message was delivered to.
*/ inline EndpointMessageResult& WithAddress(const char* value) { SetAddress(value); return *this;} /** *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 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. Amazon Pinpoint won't attempt to send the message * again.
SUCCESSFUL - The message was successfully delivered to * the endpoint.
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.
TIMEOUT - The message couldn't be sent within * the timeout period.
UNKNOWN_FAILURE - An unknown error * occurred.
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 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. Amazon Pinpoint won't attempt to send the message * again.
SUCCESSFUL - The message was successfully delivered to * the endpoint.
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.
TIMEOUT - The message couldn't be sent within * the timeout period.
UNKNOWN_FAILURE - An unknown error * occurred.
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 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. Amazon Pinpoint won't attempt to send the message * again.
SUCCESSFUL - The message was successfully delivered to * the endpoint.
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.
TIMEOUT - The message couldn't be sent within * the timeout period.
UNKNOWN_FAILURE - An unknown error * occurred.
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 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. Amazon Pinpoint won't attempt to send the message * again.
SUCCESSFUL - The message was successfully delivered to * the endpoint.
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.
TIMEOUT - The message couldn't be sent within * the timeout period.
UNKNOWN_FAILURE - An unknown error * occurred.
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 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. Amazon Pinpoint won't attempt to send the message * again.
SUCCESSFUL - The message was successfully delivered to * the endpoint.
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.
TIMEOUT - The message couldn't be sent within * the timeout period.
UNKNOWN_FAILURE - An unknown error * occurred.
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 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. Amazon Pinpoint won't attempt to send the message * again.
SUCCESSFUL - The message was successfully delivered to * the endpoint.
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.
TIMEOUT - The message couldn't be sent within * the timeout period.
UNKNOWN_FAILURE - An unknown error * occurred.
The unique identifier for the message that was sent.
*/ inline const Aws::String& GetMessageId() const{ return m_messageId; } /** *The unique identifier for the message that was sent.
*/ inline bool MessageIdHasBeenSet() const { return m_messageIdHasBeenSet; } /** *The unique identifier for the message that was sent.
*/ inline void SetMessageId(const Aws::String& value) { m_messageIdHasBeenSet = true; m_messageId = value; } /** *The unique identifier for the message that was sent.
*/ inline void SetMessageId(Aws::String&& value) { m_messageIdHasBeenSet = true; m_messageId = std::move(value); } /** *The unique identifier for the message that was sent.
*/ inline void SetMessageId(const char* value) { m_messageIdHasBeenSet = true; m_messageId.assign(value); } /** *The unique identifier for the message that was sent.
*/ inline EndpointMessageResult& WithMessageId(const Aws::String& value) { SetMessageId(value); return *this;} /** *The unique identifier for the message that was sent.
*/ inline EndpointMessageResult& WithMessageId(Aws::String&& value) { SetMessageId(std::move(value)); return *this;} /** *The unique identifier for the message that was sent.
*/ inline EndpointMessageResult& WithMessageId(const char* value) { SetMessageId(value); return *this;} /** *The downstream service status code for delivering the message.
*/ inline int GetStatusCode() const{ return m_statusCode; } /** *The downstream service status code for delivering the message.
*/ inline bool StatusCodeHasBeenSet() const { return m_statusCodeHasBeenSet; } /** *The downstream service status code for delivering the message.
*/ inline void SetStatusCode(int value) { m_statusCodeHasBeenSet = true; m_statusCode = value; } /** *The downstream service status code for delivering the message.
*/ inline EndpointMessageResult& WithStatusCode(int value) { SetStatusCode(value); return *this;} /** *The status message for delivering the message.
*/ inline const Aws::String& GetStatusMessage() const{ return m_statusMessage; } /** *The status message for delivering the message.
*/ inline bool StatusMessageHasBeenSet() const { return m_statusMessageHasBeenSet; } /** *The status message for delivering the message.
*/ inline void SetStatusMessage(const Aws::String& value) { m_statusMessageHasBeenSet = true; m_statusMessage = value; } /** *The status message for delivering the message.
*/ inline void SetStatusMessage(Aws::String&& value) { m_statusMessageHasBeenSet = true; m_statusMessage = std::move(value); } /** *The status message for delivering the message.
*/ inline void SetStatusMessage(const char* value) { m_statusMessageHasBeenSet = true; m_statusMessage.assign(value); } /** *The status message for delivering the message.
*/ inline EndpointMessageResult& WithStatusMessage(const Aws::String& value) { SetStatusMessage(value); return *this;} /** *The status message for delivering the message.
*/ inline EndpointMessageResult& WithStatusMessage(Aws::String&& value) { SetStatusMessage(std::move(value)); return *this;} /** *The status message for delivering the message.
*/ inline EndpointMessageResult& WithStatusMessage(const char* value) { SetStatusMessage(value); return *this;} /** *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.
*/ inline const Aws::String& GetUpdatedToken() const{ return m_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.
*/ inline bool UpdatedTokenHasBeenSet() const { return m_updatedTokenHasBeenSet; } /** *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.
*/ inline void SetUpdatedToken(const Aws::String& value) { m_updatedTokenHasBeenSet = true; m_updatedToken = value; } /** *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.
*/ inline void SetUpdatedToken(Aws::String&& value) { m_updatedTokenHasBeenSet = true; m_updatedToken = std::move(value); } /** *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.
*/ inline void SetUpdatedToken(const char* value) { m_updatedTokenHasBeenSet = true; m_updatedToken.assign(value); } /** *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.
*/ inline EndpointMessageResult& WithUpdatedToken(const Aws::String& value) { SetUpdatedToken(value); return *this;} /** *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.
*/ inline EndpointMessageResult& WithUpdatedToken(Aws::String&& value) { SetUpdatedToken(std::move(value)); return *this;} /** *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.
*/ inline EndpointMessageResult& WithUpdatedToken(const char* value) { SetUpdatedToken(value); return *this;} private: Aws::String m_address; bool m_addressHasBeenSet = false; DeliveryStatus m_deliveryStatus; bool m_deliveryStatusHasBeenSet = false; Aws::String m_messageId; bool m_messageIdHasBeenSet = false; int m_statusCode; bool m_statusCodeHasBeenSet = false; Aws::String m_statusMessage; bool m_statusMessageHasBeenSet = false; Aws::String m_updatedToken; bool m_updatedTokenHasBeenSet = false; }; } // namespace Model } // namespace Pinpoint } // namespace Aws