/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace Http { class URI; } //namespace Http namespace ChimeSDKMessaging { namespace Model { /** */ class ListChannelMessagesRequest : public ChimeSDKMessagingRequest { public: AWS_CHIMESDKMESSAGING_API ListChannelMessagesRequest(); // 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 "ListChannelMessages"; } AWS_CHIMESDKMESSAGING_API Aws::String SerializePayload() const override; AWS_CHIMESDKMESSAGING_API void AddQueryStringParameters(Aws::Http::URI& uri) const override; AWS_CHIMESDKMESSAGING_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The ARN of the channel.

*/ inline const Aws::String& GetChannelArn() const{ return m_channelArn; } /** *

The ARN of the channel.

*/ inline bool ChannelArnHasBeenSet() const { return m_channelArnHasBeenSet; } /** *

The ARN of the channel.

*/ inline void SetChannelArn(const Aws::String& value) { m_channelArnHasBeenSet = true; m_channelArn = value; } /** *

The ARN of the channel.

*/ inline void SetChannelArn(Aws::String&& value) { m_channelArnHasBeenSet = true; m_channelArn = std::move(value); } /** *

The ARN of the channel.

*/ inline void SetChannelArn(const char* value) { m_channelArnHasBeenSet = true; m_channelArn.assign(value); } /** *

The ARN of the channel.

*/ inline ListChannelMessagesRequest& WithChannelArn(const Aws::String& value) { SetChannelArn(value); return *this;} /** *

The ARN of the channel.

*/ inline ListChannelMessagesRequest& WithChannelArn(Aws::String&& value) { SetChannelArn(std::move(value)); return *this;} /** *

The ARN of the channel.

*/ inline ListChannelMessagesRequest& WithChannelArn(const char* value) { SetChannelArn(value); return *this;} /** *

The order in which you want messages sorted. Default is Descending, based on * time created.

*/ inline const SortOrder& GetSortOrder() const{ return m_sortOrder; } /** *

The order in which you want messages sorted. Default is Descending, based on * time created.

*/ inline bool SortOrderHasBeenSet() const { return m_sortOrderHasBeenSet; } /** *

The order in which you want messages sorted. Default is Descending, based on * time created.

*/ inline void SetSortOrder(const SortOrder& value) { m_sortOrderHasBeenSet = true; m_sortOrder = value; } /** *

The order in which you want messages sorted. Default is Descending, based on * time created.

*/ inline void SetSortOrder(SortOrder&& value) { m_sortOrderHasBeenSet = true; m_sortOrder = std::move(value); } /** *

The order in which you want messages sorted. Default is Descending, based on * time created.

*/ inline ListChannelMessagesRequest& WithSortOrder(const SortOrder& value) { SetSortOrder(value); return *this;} /** *

The order in which you want messages sorted. Default is Descending, based on * time created.

*/ inline ListChannelMessagesRequest& WithSortOrder(SortOrder&& value) { SetSortOrder(std::move(value)); return *this;} /** *

The initial or starting time stamp for your requested messages.

*/ inline const Aws::Utils::DateTime& GetNotBefore() const{ return m_notBefore; } /** *

The initial or starting time stamp for your requested messages.

*/ inline bool NotBeforeHasBeenSet() const { return m_notBeforeHasBeenSet; } /** *

The initial or starting time stamp for your requested messages.

*/ inline void SetNotBefore(const Aws::Utils::DateTime& value) { m_notBeforeHasBeenSet = true; m_notBefore = value; } /** *

The initial or starting time stamp for your requested messages.

*/ inline void SetNotBefore(Aws::Utils::DateTime&& value) { m_notBeforeHasBeenSet = true; m_notBefore = std::move(value); } /** *

The initial or starting time stamp for your requested messages.

*/ inline ListChannelMessagesRequest& WithNotBefore(const Aws::Utils::DateTime& value) { SetNotBefore(value); return *this;} /** *

The initial or starting time stamp for your requested messages.

*/ inline ListChannelMessagesRequest& WithNotBefore(Aws::Utils::DateTime&& value) { SetNotBefore(std::move(value)); return *this;} /** *

The final or ending time stamp for your requested messages.

*/ inline const Aws::Utils::DateTime& GetNotAfter() const{ return m_notAfter; } /** *

The final or ending time stamp for your requested messages.

*/ inline bool NotAfterHasBeenSet() const { return m_notAfterHasBeenSet; } /** *

The final or ending time stamp for your requested messages.

*/ inline void SetNotAfter(const Aws::Utils::DateTime& value) { m_notAfterHasBeenSet = true; m_notAfter = value; } /** *

The final or ending time stamp for your requested messages.

*/ inline void SetNotAfter(Aws::Utils::DateTime&& value) { m_notAfterHasBeenSet = true; m_notAfter = std::move(value); } /** *

The final or ending time stamp for your requested messages.

*/ inline ListChannelMessagesRequest& WithNotAfter(const Aws::Utils::DateTime& value) { SetNotAfter(value); return *this;} /** *

The final or ending time stamp for your requested messages.

*/ inline ListChannelMessagesRequest& WithNotAfter(Aws::Utils::DateTime&& value) { SetNotAfter(std::move(value)); return *this;} /** *

The maximum number of messages that you want returned.

*/ inline int GetMaxResults() const{ return m_maxResults; } /** *

The maximum number of messages that you want returned.

*/ inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; } /** *

The maximum number of messages that you want returned.

*/ inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; } /** *

The maximum number of messages that you want returned.

*/ inline ListChannelMessagesRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;} /** *

The token passed by previous API calls until all requested messages are * returned.

*/ inline const Aws::String& GetNextToken() const{ return m_nextToken; } /** *

The token passed by previous API calls until all requested messages are * returned.

*/ inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; } /** *

The token passed by previous API calls until all requested messages are * returned.

*/ inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; } /** *

The token passed by previous API calls until all requested messages are * returned.

*/ inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); } /** *

The token passed by previous API calls until all requested messages are * returned.

*/ inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); } /** *

The token passed by previous API calls until all requested messages are * returned.

*/ inline ListChannelMessagesRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} /** *

The token passed by previous API calls until all requested messages are * returned.

*/ inline ListChannelMessagesRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} /** *

The token passed by previous API calls until all requested messages are * returned.

*/ inline ListChannelMessagesRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;} /** *

The ARN of the AppInstanceUser or AppInstanceBot * that makes the API call.

*/ inline const Aws::String& GetChimeBearer() const{ return m_chimeBearer; } /** *

The ARN of the AppInstanceUser or AppInstanceBot * that makes the API call.

*/ inline bool ChimeBearerHasBeenSet() const { return m_chimeBearerHasBeenSet; } /** *

The ARN of the AppInstanceUser or AppInstanceBot * that makes the API call.

*/ inline void SetChimeBearer(const Aws::String& value) { m_chimeBearerHasBeenSet = true; m_chimeBearer = value; } /** *

The ARN of the AppInstanceUser or AppInstanceBot * that makes the API call.

*/ inline void SetChimeBearer(Aws::String&& value) { m_chimeBearerHasBeenSet = true; m_chimeBearer = std::move(value); } /** *

The ARN of the AppInstanceUser or AppInstanceBot * that makes the API call.

*/ inline void SetChimeBearer(const char* value) { m_chimeBearerHasBeenSet = true; m_chimeBearer.assign(value); } /** *

The ARN of the AppInstanceUser or AppInstanceBot * that makes the API call.

*/ inline ListChannelMessagesRequest& WithChimeBearer(const Aws::String& value) { SetChimeBearer(value); return *this;} /** *

The ARN of the AppInstanceUser or AppInstanceBot * that makes the API call.

*/ inline ListChannelMessagesRequest& WithChimeBearer(Aws::String&& value) { SetChimeBearer(std::move(value)); return *this;} /** *

The ARN of the AppInstanceUser or AppInstanceBot * that makes the API call.

*/ inline ListChannelMessagesRequest& WithChimeBearer(const char* value) { SetChimeBearer(value); return *this;} /** *

The ID of the SubChannel in the request.

Only required when * listing the messages in a SubChannel that the user belongs to.

*/ inline const Aws::String& GetSubChannelId() const{ return m_subChannelId; } /** *

The ID of the SubChannel in the request.

Only required when * listing the messages in a SubChannel that the user belongs to.

*/ inline bool SubChannelIdHasBeenSet() const { return m_subChannelIdHasBeenSet; } /** *

The ID of the SubChannel in the request.

Only required when * listing the messages in a SubChannel that the user belongs to.

*/ inline void SetSubChannelId(const Aws::String& value) { m_subChannelIdHasBeenSet = true; m_subChannelId = value; } /** *

The ID of the SubChannel in the request.

Only required when * listing the messages in a SubChannel that the user belongs to.

*/ inline void SetSubChannelId(Aws::String&& value) { m_subChannelIdHasBeenSet = true; m_subChannelId = std::move(value); } /** *

The ID of the SubChannel in the request.

Only required when * listing the messages in a SubChannel that the user belongs to.

*/ inline void SetSubChannelId(const char* value) { m_subChannelIdHasBeenSet = true; m_subChannelId.assign(value); } /** *

The ID of the SubChannel in the request.

Only required when * listing the messages in a SubChannel that the user belongs to.

*/ inline ListChannelMessagesRequest& WithSubChannelId(const Aws::String& value) { SetSubChannelId(value); return *this;} /** *

The ID of the SubChannel in the request.

Only required when * listing the messages in a SubChannel that the user belongs to.

*/ inline ListChannelMessagesRequest& WithSubChannelId(Aws::String&& value) { SetSubChannelId(std::move(value)); return *this;} /** *

The ID of the SubChannel in the request.

Only required when * listing the messages in a SubChannel that the user belongs to.

*/ inline ListChannelMessagesRequest& WithSubChannelId(const char* value) { SetSubChannelId(value); return *this;} private: Aws::String m_channelArn; bool m_channelArnHasBeenSet = false; SortOrder m_sortOrder; bool m_sortOrderHasBeenSet = false; Aws::Utils::DateTime m_notBefore; bool m_notBeforeHasBeenSet = false; Aws::Utils::DateTime m_notAfter; bool m_notAfterHasBeenSet = false; int m_maxResults; bool m_maxResultsHasBeenSet = false; Aws::String m_nextToken; bool m_nextTokenHasBeenSet = false; Aws::String m_chimeBearer; bool m_chimeBearerHasBeenSet = false; Aws::String m_subChannelId; bool m_subChannelIdHasBeenSet = false; }; } // namespace Model } // namespace ChimeSDKMessaging } // namespace Aws