/** * 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 ivsrealtime { namespace Model { /** */ class ListParticipantsRequest : public IvsrealtimeRequest { public: AWS_IVSREALTIME_API ListParticipantsRequest(); // 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 "ListParticipants"; } AWS_IVSREALTIME_API Aws::String SerializePayload() const override; /** *

Filters the response list to only show participants who published during the * stage session. Only one of filterByUserId, * filterByPublished, or filterByState can be provided * per request.

*/ inline bool GetFilterByPublished() const{ return m_filterByPublished; } /** *

Filters the response list to only show participants who published during the * stage session. Only one of filterByUserId, * filterByPublished, or filterByState can be provided * per request.

*/ inline bool FilterByPublishedHasBeenSet() const { return m_filterByPublishedHasBeenSet; } /** *

Filters the response list to only show participants who published during the * stage session. Only one of filterByUserId, * filterByPublished, or filterByState can be provided * per request.

*/ inline void SetFilterByPublished(bool value) { m_filterByPublishedHasBeenSet = true; m_filterByPublished = value; } /** *

Filters the response list to only show participants who published during the * stage session. Only one of filterByUserId, * filterByPublished, or filterByState can be provided * per request.

*/ inline ListParticipantsRequest& WithFilterByPublished(bool value) { SetFilterByPublished(value); return *this;} /** *

Filters the response list to only show participants in the specified state. * Only one of filterByUserId, filterByPublished, or * filterByState can be provided per request.

*/ inline const ParticipantState& GetFilterByState() const{ return m_filterByState; } /** *

Filters the response list to only show participants in the specified state. * Only one of filterByUserId, filterByPublished, or * filterByState can be provided per request.

*/ inline bool FilterByStateHasBeenSet() const { return m_filterByStateHasBeenSet; } /** *

Filters the response list to only show participants in the specified state. * Only one of filterByUserId, filterByPublished, or * filterByState can be provided per request.

*/ inline void SetFilterByState(const ParticipantState& value) { m_filterByStateHasBeenSet = true; m_filterByState = value; } /** *

Filters the response list to only show participants in the specified state. * Only one of filterByUserId, filterByPublished, or * filterByState can be provided per request.

*/ inline void SetFilterByState(ParticipantState&& value) { m_filterByStateHasBeenSet = true; m_filterByState = std::move(value); } /** *

Filters the response list to only show participants in the specified state. * Only one of filterByUserId, filterByPublished, or * filterByState can be provided per request.

*/ inline ListParticipantsRequest& WithFilterByState(const ParticipantState& value) { SetFilterByState(value); return *this;} /** *

Filters the response list to only show participants in the specified state. * Only one of filterByUserId, filterByPublished, or * filterByState can be provided per request.

*/ inline ListParticipantsRequest& WithFilterByState(ParticipantState&& value) { SetFilterByState(std::move(value)); return *this;} /** *

Filters the response list to match the specified user ID. Only one of * filterByUserId, filterByPublished, or * filterByState can be provided per request. A userId is * a customer-assigned name to help identify the token; this can be used to link a * participant to a user in the customer’s own systems.

*/ inline const Aws::String& GetFilterByUserId() const{ return m_filterByUserId; } /** *

Filters the response list to match the specified user ID. Only one of * filterByUserId, filterByPublished, or * filterByState can be provided per request. A userId is * a customer-assigned name to help identify the token; this can be used to link a * participant to a user in the customer’s own systems.

*/ inline bool FilterByUserIdHasBeenSet() const { return m_filterByUserIdHasBeenSet; } /** *

Filters the response list to match the specified user ID. Only one of * filterByUserId, filterByPublished, or * filterByState can be provided per request. A userId is * a customer-assigned name to help identify the token; this can be used to link a * participant to a user in the customer’s own systems.

*/ inline void SetFilterByUserId(const Aws::String& value) { m_filterByUserIdHasBeenSet = true; m_filterByUserId = value; } /** *

Filters the response list to match the specified user ID. Only one of * filterByUserId, filterByPublished, or * filterByState can be provided per request. A userId is * a customer-assigned name to help identify the token; this can be used to link a * participant to a user in the customer’s own systems.

*/ inline void SetFilterByUserId(Aws::String&& value) { m_filterByUserIdHasBeenSet = true; m_filterByUserId = std::move(value); } /** *

Filters the response list to match the specified user ID. Only one of * filterByUserId, filterByPublished, or * filterByState can be provided per request. A userId is * a customer-assigned name to help identify the token; this can be used to link a * participant to a user in the customer’s own systems.

*/ inline void SetFilterByUserId(const char* value) { m_filterByUserIdHasBeenSet = true; m_filterByUserId.assign(value); } /** *

Filters the response list to match the specified user ID. Only one of * filterByUserId, filterByPublished, or * filterByState can be provided per request. A userId is * a customer-assigned name to help identify the token; this can be used to link a * participant to a user in the customer’s own systems.

*/ inline ListParticipantsRequest& WithFilterByUserId(const Aws::String& value) { SetFilterByUserId(value); return *this;} /** *

Filters the response list to match the specified user ID. Only one of * filterByUserId, filterByPublished, or * filterByState can be provided per request. A userId is * a customer-assigned name to help identify the token; this can be used to link a * participant to a user in the customer’s own systems.

*/ inline ListParticipantsRequest& WithFilterByUserId(Aws::String&& value) { SetFilterByUserId(std::move(value)); return *this;} /** *

Filters the response list to match the specified user ID. Only one of * filterByUserId, filterByPublished, or * filterByState can be provided per request. A userId is * a customer-assigned name to help identify the token; this can be used to link a * participant to a user in the customer’s own systems.

*/ inline ListParticipantsRequest& WithFilterByUserId(const char* value) { SetFilterByUserId(value); return *this;} /** *

Maximum number of results to return. Default: 50.

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

Maximum number of results to return. Default: 50.

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

Maximum number of results to return. Default: 50.

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

Maximum number of results to return. Default: 50.

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

The first participant to retrieve. This is used for pagination; see the * nextToken response field.

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

The first participant to retrieve. This is used for pagination; see the * nextToken response field.

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

The first participant to retrieve. This is used for pagination; see the * nextToken response field.

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

The first participant to retrieve. This is used for pagination; see the * nextToken response field.

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

The first participant to retrieve. This is used for pagination; see the * nextToken response field.

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

The first participant to retrieve. This is used for pagination; see the * nextToken response field.

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

The first participant to retrieve. This is used for pagination; see the * nextToken response field.

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

The first participant to retrieve. This is used for pagination; see the * nextToken response field.

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

ID of the session within the stage.

*/ inline const Aws::String& GetSessionId() const{ return m_sessionId; } /** *

ID of the session within the stage.

*/ inline bool SessionIdHasBeenSet() const { return m_sessionIdHasBeenSet; } /** *

ID of the session within the stage.

*/ inline void SetSessionId(const Aws::String& value) { m_sessionIdHasBeenSet = true; m_sessionId = value; } /** *

ID of the session within the stage.

*/ inline void SetSessionId(Aws::String&& value) { m_sessionIdHasBeenSet = true; m_sessionId = std::move(value); } /** *

ID of the session within the stage.

*/ inline void SetSessionId(const char* value) { m_sessionIdHasBeenSet = true; m_sessionId.assign(value); } /** *

ID of the session within the stage.

*/ inline ListParticipantsRequest& WithSessionId(const Aws::String& value) { SetSessionId(value); return *this;} /** *

ID of the session within the stage.

*/ inline ListParticipantsRequest& WithSessionId(Aws::String&& value) { SetSessionId(std::move(value)); return *this;} /** *

ID of the session within the stage.

*/ inline ListParticipantsRequest& WithSessionId(const char* value) { SetSessionId(value); return *this;} /** *

Stage ARN.

*/ inline const Aws::String& GetStageArn() const{ return m_stageArn; } /** *

Stage ARN.

*/ inline bool StageArnHasBeenSet() const { return m_stageArnHasBeenSet; } /** *

Stage ARN.

*/ inline void SetStageArn(const Aws::String& value) { m_stageArnHasBeenSet = true; m_stageArn = value; } /** *

Stage ARN.

*/ inline void SetStageArn(Aws::String&& value) { m_stageArnHasBeenSet = true; m_stageArn = std::move(value); } /** *

Stage ARN.

*/ inline void SetStageArn(const char* value) { m_stageArnHasBeenSet = true; m_stageArn.assign(value); } /** *

Stage ARN.

*/ inline ListParticipantsRequest& WithStageArn(const Aws::String& value) { SetStageArn(value); return *this;} /** *

Stage ARN.

*/ inline ListParticipantsRequest& WithStageArn(Aws::String&& value) { SetStageArn(std::move(value)); return *this;} /** *

Stage ARN.

*/ inline ListParticipantsRequest& WithStageArn(const char* value) { SetStageArn(value); return *this;} private: bool m_filterByPublished; bool m_filterByPublishedHasBeenSet = false; ParticipantState m_filterByState; bool m_filterByStateHasBeenSet = false; Aws::String m_filterByUserId; bool m_filterByUserIdHasBeenSet = false; int m_maxResults; bool m_maxResultsHasBeenSet = false; Aws::String m_nextToken; bool m_nextTokenHasBeenSet = false; Aws::String m_sessionId; bool m_sessionIdHasBeenSet = false; Aws::String m_stageArn; bool m_stageArnHasBeenSet = false; }; } // namespace Model } // namespace ivsrealtime } // namespace Aws