/** * 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 Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SSMContacts { namespace Model { /** *

Records events during an engagement.

See Also:

AWS * API Reference

*/ class Receipt { public: AWS_SSMCONTACTS_API Receipt(); AWS_SSMCONTACTS_API Receipt(Aws::Utils::Json::JsonView jsonValue); AWS_SSMCONTACTS_API Receipt& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SSMCONTACTS_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The Amazon Resource Name (ARN) of the contact channel Incident Manager * engaged.

*/ inline const Aws::String& GetContactChannelArn() const{ return m_contactChannelArn; } /** *

The Amazon Resource Name (ARN) of the contact channel Incident Manager * engaged.

*/ inline bool ContactChannelArnHasBeenSet() const { return m_contactChannelArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the contact channel Incident Manager * engaged.

*/ inline void SetContactChannelArn(const Aws::String& value) { m_contactChannelArnHasBeenSet = true; m_contactChannelArn = value; } /** *

The Amazon Resource Name (ARN) of the contact channel Incident Manager * engaged.

*/ inline void SetContactChannelArn(Aws::String&& value) { m_contactChannelArnHasBeenSet = true; m_contactChannelArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the contact channel Incident Manager * engaged.

*/ inline void SetContactChannelArn(const char* value) { m_contactChannelArnHasBeenSet = true; m_contactChannelArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the contact channel Incident Manager * engaged.

*/ inline Receipt& WithContactChannelArn(const Aws::String& value) { SetContactChannelArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the contact channel Incident Manager * engaged.

*/ inline Receipt& WithContactChannelArn(Aws::String&& value) { SetContactChannelArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the contact channel Incident Manager * engaged.

*/ inline Receipt& WithContactChannelArn(const char* value) { SetContactChannelArn(value); return *this;} /** *

The type follows the engagement cycle, SENT, * DELIVERED, and READ.

*/ inline const ReceiptType& GetReceiptType() const{ return m_receiptType; } /** *

The type follows the engagement cycle, SENT, * DELIVERED, and READ.

*/ inline bool ReceiptTypeHasBeenSet() const { return m_receiptTypeHasBeenSet; } /** *

The type follows the engagement cycle, SENT, * DELIVERED, and READ.

*/ inline void SetReceiptType(const ReceiptType& value) { m_receiptTypeHasBeenSet = true; m_receiptType = value; } /** *

The type follows the engagement cycle, SENT, * DELIVERED, and READ.

*/ inline void SetReceiptType(ReceiptType&& value) { m_receiptTypeHasBeenSet = true; m_receiptType = std::move(value); } /** *

The type follows the engagement cycle, SENT, * DELIVERED, and READ.

*/ inline Receipt& WithReceiptType(const ReceiptType& value) { SetReceiptType(value); return *this;} /** *

The type follows the engagement cycle, SENT, * DELIVERED, and READ.

*/ inline Receipt& WithReceiptType(ReceiptType&& value) { SetReceiptType(std::move(value)); return *this;} /** *

Information provided during the page acknowledgement.

*/ inline const Aws::String& GetReceiptInfo() const{ return m_receiptInfo; } /** *

Information provided during the page acknowledgement.

*/ inline bool ReceiptInfoHasBeenSet() const { return m_receiptInfoHasBeenSet; } /** *

Information provided during the page acknowledgement.

*/ inline void SetReceiptInfo(const Aws::String& value) { m_receiptInfoHasBeenSet = true; m_receiptInfo = value; } /** *

Information provided during the page acknowledgement.

*/ inline void SetReceiptInfo(Aws::String&& value) { m_receiptInfoHasBeenSet = true; m_receiptInfo = std::move(value); } /** *

Information provided during the page acknowledgement.

*/ inline void SetReceiptInfo(const char* value) { m_receiptInfoHasBeenSet = true; m_receiptInfo.assign(value); } /** *

Information provided during the page acknowledgement.

*/ inline Receipt& WithReceiptInfo(const Aws::String& value) { SetReceiptInfo(value); return *this;} /** *

Information provided during the page acknowledgement.

*/ inline Receipt& WithReceiptInfo(Aws::String&& value) { SetReceiptInfo(std::move(value)); return *this;} /** *

Information provided during the page acknowledgement.

*/ inline Receipt& WithReceiptInfo(const char* value) { SetReceiptInfo(value); return *this;} /** *

The time receipt was SENT, DELIVERED, or * READ.

*/ inline const Aws::Utils::DateTime& GetReceiptTime() const{ return m_receiptTime; } /** *

The time receipt was SENT, DELIVERED, or * READ.

*/ inline bool ReceiptTimeHasBeenSet() const { return m_receiptTimeHasBeenSet; } /** *

The time receipt was SENT, DELIVERED, or * READ.

*/ inline void SetReceiptTime(const Aws::Utils::DateTime& value) { m_receiptTimeHasBeenSet = true; m_receiptTime = value; } /** *

The time receipt was SENT, DELIVERED, or * READ.

*/ inline void SetReceiptTime(Aws::Utils::DateTime&& value) { m_receiptTimeHasBeenSet = true; m_receiptTime = std::move(value); } /** *

The time receipt was SENT, DELIVERED, or * READ.

*/ inline Receipt& WithReceiptTime(const Aws::Utils::DateTime& value) { SetReceiptTime(value); return *this;} /** *

The time receipt was SENT, DELIVERED, or * READ.

*/ inline Receipt& WithReceiptTime(Aws::Utils::DateTime&& value) { SetReceiptTime(std::move(value)); return *this;} private: Aws::String m_contactChannelArn; bool m_contactChannelArnHasBeenSet = false; ReceiptType m_receiptType; bool m_receiptTypeHasBeenSet = false; Aws::String m_receiptInfo; bool m_receiptInfoHasBeenSet = false; Aws::Utils::DateTime m_receiptTime; bool m_receiptTimeHasBeenSet = false; }; } // namespace Model } // namespace SSMContacts } // namespace Aws