/** * 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 GameLift { namespace Model { /** */ class StartMatchmakingRequest : public GameLiftRequest { public: AWS_GAMELIFT_API StartMatchmakingRequest(); // 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 "StartMatchmaking"; } AWS_GAMELIFT_API Aws::String SerializePayload() const override; AWS_GAMELIFT_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

A unique identifier for a matchmaking ticket. If no ticket ID is specified * here, Amazon GameLift will generate one in the form of a UUID. Use this * identifier to track the matchmaking ticket status and retrieve match * results.

*/ inline const Aws::String& GetTicketId() const{ return m_ticketId; } /** *

A unique identifier for a matchmaking ticket. If no ticket ID is specified * here, Amazon GameLift will generate one in the form of a UUID. Use this * identifier to track the matchmaking ticket status and retrieve match * results.

*/ inline bool TicketIdHasBeenSet() const { return m_ticketIdHasBeenSet; } /** *

A unique identifier for a matchmaking ticket. If no ticket ID is specified * here, Amazon GameLift will generate one in the form of a UUID. Use this * identifier to track the matchmaking ticket status and retrieve match * results.

*/ inline void SetTicketId(const Aws::String& value) { m_ticketIdHasBeenSet = true; m_ticketId = value; } /** *

A unique identifier for a matchmaking ticket. If no ticket ID is specified * here, Amazon GameLift will generate one in the form of a UUID. Use this * identifier to track the matchmaking ticket status and retrieve match * results.

*/ inline void SetTicketId(Aws::String&& value) { m_ticketIdHasBeenSet = true; m_ticketId = std::move(value); } /** *

A unique identifier for a matchmaking ticket. If no ticket ID is specified * here, Amazon GameLift will generate one in the form of a UUID. Use this * identifier to track the matchmaking ticket status and retrieve match * results.

*/ inline void SetTicketId(const char* value) { m_ticketIdHasBeenSet = true; m_ticketId.assign(value); } /** *

A unique identifier for a matchmaking ticket. If no ticket ID is specified * here, Amazon GameLift will generate one in the form of a UUID. Use this * identifier to track the matchmaking ticket status and retrieve match * results.

*/ inline StartMatchmakingRequest& WithTicketId(const Aws::String& value) { SetTicketId(value); return *this;} /** *

A unique identifier for a matchmaking ticket. If no ticket ID is specified * here, Amazon GameLift will generate one in the form of a UUID. Use this * identifier to track the matchmaking ticket status and retrieve match * results.

*/ inline StartMatchmakingRequest& WithTicketId(Aws::String&& value) { SetTicketId(std::move(value)); return *this;} /** *

A unique identifier for a matchmaking ticket. If no ticket ID is specified * here, Amazon GameLift will generate one in the form of a UUID. Use this * identifier to track the matchmaking ticket status and retrieve match * results.

*/ inline StartMatchmakingRequest& WithTicketId(const char* value) { SetTicketId(value); return *this;} /** *

Name of the matchmaking configuration to use for this request. Matchmaking * configurations must exist in the same Region as this request. You can use either * the configuration name or ARN value.

*/ inline const Aws::String& GetConfigurationName() const{ return m_configurationName; } /** *

Name of the matchmaking configuration to use for this request. Matchmaking * configurations must exist in the same Region as this request. You can use either * the configuration name or ARN value.

*/ inline bool ConfigurationNameHasBeenSet() const { return m_configurationNameHasBeenSet; } /** *

Name of the matchmaking configuration to use for this request. Matchmaking * configurations must exist in the same Region as this request. You can use either * the configuration name or ARN value.

*/ inline void SetConfigurationName(const Aws::String& value) { m_configurationNameHasBeenSet = true; m_configurationName = value; } /** *

Name of the matchmaking configuration to use for this request. Matchmaking * configurations must exist in the same Region as this request. You can use either * the configuration name or ARN value.

*/ inline void SetConfigurationName(Aws::String&& value) { m_configurationNameHasBeenSet = true; m_configurationName = std::move(value); } /** *

Name of the matchmaking configuration to use for this request. Matchmaking * configurations must exist in the same Region as this request. You can use either * the configuration name or ARN value.

*/ inline void SetConfigurationName(const char* value) { m_configurationNameHasBeenSet = true; m_configurationName.assign(value); } /** *

Name of the matchmaking configuration to use for this request. Matchmaking * configurations must exist in the same Region as this request. You can use either * the configuration name or ARN value.

*/ inline StartMatchmakingRequest& WithConfigurationName(const Aws::String& value) { SetConfigurationName(value); return *this;} /** *

Name of the matchmaking configuration to use for this request. Matchmaking * configurations must exist in the same Region as this request. You can use either * the configuration name or ARN value.

*/ inline StartMatchmakingRequest& WithConfigurationName(Aws::String&& value) { SetConfigurationName(std::move(value)); return *this;} /** *

Name of the matchmaking configuration to use for this request. Matchmaking * configurations must exist in the same Region as this request. You can use either * the configuration name or ARN value.

*/ inline StartMatchmakingRequest& WithConfigurationName(const char* value) { SetConfigurationName(value); return *this;} /** *

Information on each player to be matched. This information must include a * player ID, and may contain player attributes and latency data to be used in the * matchmaking process. After a successful match, Player objects * contain the name of the team the player is assigned to.

You can include * up to 10 Players in a StartMatchmaking request.

*/ inline const Aws::Vector& GetPlayers() const{ return m_players; } /** *

Information on each player to be matched. This information must include a * player ID, and may contain player attributes and latency data to be used in the * matchmaking process. After a successful match, Player objects * contain the name of the team the player is assigned to.

You can include * up to 10 Players in a StartMatchmaking request.

*/ inline bool PlayersHasBeenSet() const { return m_playersHasBeenSet; } /** *

Information on each player to be matched. This information must include a * player ID, and may contain player attributes and latency data to be used in the * matchmaking process. After a successful match, Player objects * contain the name of the team the player is assigned to.

You can include * up to 10 Players in a StartMatchmaking request.

*/ inline void SetPlayers(const Aws::Vector& value) { m_playersHasBeenSet = true; m_players = value; } /** *

Information on each player to be matched. This information must include a * player ID, and may contain player attributes and latency data to be used in the * matchmaking process. After a successful match, Player objects * contain the name of the team the player is assigned to.

You can include * up to 10 Players in a StartMatchmaking request.

*/ inline void SetPlayers(Aws::Vector&& value) { m_playersHasBeenSet = true; m_players = std::move(value); } /** *

Information on each player to be matched. This information must include a * player ID, and may contain player attributes and latency data to be used in the * matchmaking process. After a successful match, Player objects * contain the name of the team the player is assigned to.

You can include * up to 10 Players in a StartMatchmaking request.

*/ inline StartMatchmakingRequest& WithPlayers(const Aws::Vector& value) { SetPlayers(value); return *this;} /** *

Information on each player to be matched. This information must include a * player ID, and may contain player attributes and latency data to be used in the * matchmaking process. After a successful match, Player objects * contain the name of the team the player is assigned to.

You can include * up to 10 Players in a StartMatchmaking request.

*/ inline StartMatchmakingRequest& WithPlayers(Aws::Vector&& value) { SetPlayers(std::move(value)); return *this;} /** *

Information on each player to be matched. This information must include a * player ID, and may contain player attributes and latency data to be used in the * matchmaking process. After a successful match, Player objects * contain the name of the team the player is assigned to.

You can include * up to 10 Players in a StartMatchmaking request.

*/ inline StartMatchmakingRequest& AddPlayers(const Player& value) { m_playersHasBeenSet = true; m_players.push_back(value); return *this; } /** *

Information on each player to be matched. This information must include a * player ID, and may contain player attributes and latency data to be used in the * matchmaking process. After a successful match, Player objects * contain the name of the team the player is assigned to.

You can include * up to 10 Players in a StartMatchmaking request.

*/ inline StartMatchmakingRequest& AddPlayers(Player&& value) { m_playersHasBeenSet = true; m_players.push_back(std::move(value)); return *this; } private: Aws::String m_ticketId; bool m_ticketIdHasBeenSet = false; Aws::String m_configurationName; bool m_configurationNameHasBeenSet = false; Aws::Vector m_players; bool m_playersHasBeenSet = false; }; } // namespace Model } // namespace GameLift } // namespace Aws