/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace ivschat { namespace Model { /** */ class DeleteMessageRequest : public IvschatRequest { public: AWS_IVSCHAT_API DeleteMessageRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "DeleteMessage"; } AWS_IVSCHAT_API Aws::String SerializePayload() const override; /** *

ID of the message to be deleted. This is the Id field in the * received message (see * Message (Subscribe) in the Chat Messaging API).

*/ inline const Aws::String& GetId() const{ return m_id; } /** *

ID of the message to be deleted. This is the Id field in the * received message (see * Message (Subscribe) in the Chat Messaging API).

*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *

ID of the message to be deleted. This is the Id field in the * received message (see * Message (Subscribe) in the Chat Messaging API).

*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *

ID of the message to be deleted. This is the Id field in the * received message (see * Message (Subscribe) in the Chat Messaging API).

*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *

ID of the message to be deleted. This is the Id field in the * received message (see * Message (Subscribe) in the Chat Messaging API).

*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *

ID of the message to be deleted. This is the Id field in the * received message (see * Message (Subscribe) in the Chat Messaging API).

*/ inline DeleteMessageRequest& WithId(const Aws::String& value) { SetId(value); return *this;} /** *

ID of the message to be deleted. This is the Id field in the * received message (see * Message (Subscribe) in the Chat Messaging API).

*/ inline DeleteMessageRequest& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *

ID of the message to be deleted. This is the Id field in the * received message (see * Message (Subscribe) in the Chat Messaging API).

*/ inline DeleteMessageRequest& WithId(const char* value) { SetId(value); return *this;} /** *

Reason for deleting the message.

*/ inline const Aws::String& GetReason() const{ return m_reason; } /** *

Reason for deleting the message.

*/ inline bool ReasonHasBeenSet() const { return m_reasonHasBeenSet; } /** *

Reason for deleting the message.

*/ inline void SetReason(const Aws::String& value) { m_reasonHasBeenSet = true; m_reason = value; } /** *

Reason for deleting the message.

*/ inline void SetReason(Aws::String&& value) { m_reasonHasBeenSet = true; m_reason = std::move(value); } /** *

Reason for deleting the message.

*/ inline void SetReason(const char* value) { m_reasonHasBeenSet = true; m_reason.assign(value); } /** *

Reason for deleting the message.

*/ inline DeleteMessageRequest& WithReason(const Aws::String& value) { SetReason(value); return *this;} /** *

Reason for deleting the message.

*/ inline DeleteMessageRequest& WithReason(Aws::String&& value) { SetReason(std::move(value)); return *this;} /** *

Reason for deleting the message.

*/ inline DeleteMessageRequest& WithReason(const char* value) { SetReason(value); return *this;} /** *

Identifier of the room where the message should be deleted. Currently this * must be an ARN.

*/ inline const Aws::String& GetRoomIdentifier() const{ return m_roomIdentifier; } /** *

Identifier of the room where the message should be deleted. Currently this * must be an ARN.

*/ inline bool RoomIdentifierHasBeenSet() const { return m_roomIdentifierHasBeenSet; } /** *

Identifier of the room where the message should be deleted. Currently this * must be an ARN.

*/ inline void SetRoomIdentifier(const Aws::String& value) { m_roomIdentifierHasBeenSet = true; m_roomIdentifier = value; } /** *

Identifier of the room where the message should be deleted. Currently this * must be an ARN.

*/ inline void SetRoomIdentifier(Aws::String&& value) { m_roomIdentifierHasBeenSet = true; m_roomIdentifier = std::move(value); } /** *

Identifier of the room where the message should be deleted. Currently this * must be an ARN.

*/ inline void SetRoomIdentifier(const char* value) { m_roomIdentifierHasBeenSet = true; m_roomIdentifier.assign(value); } /** *

Identifier of the room where the message should be deleted. Currently this * must be an ARN.

*/ inline DeleteMessageRequest& WithRoomIdentifier(const Aws::String& value) { SetRoomIdentifier(value); return *this;} /** *

Identifier of the room where the message should be deleted. Currently this * must be an ARN.

*/ inline DeleteMessageRequest& WithRoomIdentifier(Aws::String&& value) { SetRoomIdentifier(std::move(value)); return *this;} /** *

Identifier of the room where the message should be deleted. Currently this * must be an ARN.

*/ inline DeleteMessageRequest& WithRoomIdentifier(const char* value) { SetRoomIdentifier(value); return *this;} private: Aws::String m_id; bool m_idHasBeenSet = false; Aws::String m_reason; bool m_reasonHasBeenSet = false; Aws::String m_roomIdentifier; bool m_roomIdentifierHasBeenSet = false; }; } // namespace Model } // namespace ivschat } // namespace Aws