/** * 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 CreatePlayerSessionsRequest : public GameLiftRequest { public: AWS_GAMELIFT_API CreatePlayerSessionsRequest(); // 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 "CreatePlayerSessions"; } AWS_GAMELIFT_API Aws::String SerializePayload() const override; AWS_GAMELIFT_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

A unique identifier for the game session to add players to.

*/ inline const Aws::String& GetGameSessionId() const{ return m_gameSessionId; } /** *

A unique identifier for the game session to add players to.

*/ inline bool GameSessionIdHasBeenSet() const { return m_gameSessionIdHasBeenSet; } /** *

A unique identifier for the game session to add players to.

*/ inline void SetGameSessionId(const Aws::String& value) { m_gameSessionIdHasBeenSet = true; m_gameSessionId = value; } /** *

A unique identifier for the game session to add players to.

*/ inline void SetGameSessionId(Aws::String&& value) { m_gameSessionIdHasBeenSet = true; m_gameSessionId = std::move(value); } /** *

A unique identifier for the game session to add players to.

*/ inline void SetGameSessionId(const char* value) { m_gameSessionIdHasBeenSet = true; m_gameSessionId.assign(value); } /** *

A unique identifier for the game session to add players to.

*/ inline CreatePlayerSessionsRequest& WithGameSessionId(const Aws::String& value) { SetGameSessionId(value); return *this;} /** *

A unique identifier for the game session to add players to.

*/ inline CreatePlayerSessionsRequest& WithGameSessionId(Aws::String&& value) { SetGameSessionId(std::move(value)); return *this;} /** *

A unique identifier for the game session to add players to.

*/ inline CreatePlayerSessionsRequest& WithGameSessionId(const char* value) { SetGameSessionId(value); return *this;} /** *

List of unique identifiers for the players to be added.

*/ inline const Aws::Vector& GetPlayerIds() const{ return m_playerIds; } /** *

List of unique identifiers for the players to be added.

*/ inline bool PlayerIdsHasBeenSet() const { return m_playerIdsHasBeenSet; } /** *

List of unique identifiers for the players to be added.

*/ inline void SetPlayerIds(const Aws::Vector& value) { m_playerIdsHasBeenSet = true; m_playerIds = value; } /** *

List of unique identifiers for the players to be added.

*/ inline void SetPlayerIds(Aws::Vector&& value) { m_playerIdsHasBeenSet = true; m_playerIds = std::move(value); } /** *

List of unique identifiers for the players to be added.

*/ inline CreatePlayerSessionsRequest& WithPlayerIds(const Aws::Vector& value) { SetPlayerIds(value); return *this;} /** *

List of unique identifiers for the players to be added.

*/ inline CreatePlayerSessionsRequest& WithPlayerIds(Aws::Vector&& value) { SetPlayerIds(std::move(value)); return *this;} /** *

List of unique identifiers for the players to be added.

*/ inline CreatePlayerSessionsRequest& AddPlayerIds(const Aws::String& value) { m_playerIdsHasBeenSet = true; m_playerIds.push_back(value); return *this; } /** *

List of unique identifiers for the players to be added.

*/ inline CreatePlayerSessionsRequest& AddPlayerIds(Aws::String&& value) { m_playerIdsHasBeenSet = true; m_playerIds.push_back(std::move(value)); return *this; } /** *

List of unique identifiers for the players to be added.

*/ inline CreatePlayerSessionsRequest& AddPlayerIds(const char* value) { m_playerIdsHasBeenSet = true; m_playerIds.push_back(value); return *this; } /** *

Map of string pairs, each specifying a player ID and a set of * developer-defined information related to the player. Amazon GameLift does not * use this data, so it can be formatted as needed for use in the game. Any player * data strings for player IDs that are not included in the PlayerIds * parameter are ignored.

*/ inline const Aws::Map& GetPlayerDataMap() const{ return m_playerDataMap; } /** *

Map of string pairs, each specifying a player ID and a set of * developer-defined information related to the player. Amazon GameLift does not * use this data, so it can be formatted as needed for use in the game. Any player * data strings for player IDs that are not included in the PlayerIds * parameter are ignored.

*/ inline bool PlayerDataMapHasBeenSet() const { return m_playerDataMapHasBeenSet; } /** *

Map of string pairs, each specifying a player ID and a set of * developer-defined information related to the player. Amazon GameLift does not * use this data, so it can be formatted as needed for use in the game. Any player * data strings for player IDs that are not included in the PlayerIds * parameter are ignored.

*/ inline void SetPlayerDataMap(const Aws::Map& value) { m_playerDataMapHasBeenSet = true; m_playerDataMap = value; } /** *

Map of string pairs, each specifying a player ID and a set of * developer-defined information related to the player. Amazon GameLift does not * use this data, so it can be formatted as needed for use in the game. Any player * data strings for player IDs that are not included in the PlayerIds * parameter are ignored.

*/ inline void SetPlayerDataMap(Aws::Map&& value) { m_playerDataMapHasBeenSet = true; m_playerDataMap = std::move(value); } /** *

Map of string pairs, each specifying a player ID and a set of * developer-defined information related to the player. Amazon GameLift does not * use this data, so it can be formatted as needed for use in the game. Any player * data strings for player IDs that are not included in the PlayerIds * parameter are ignored.

*/ inline CreatePlayerSessionsRequest& WithPlayerDataMap(const Aws::Map& value) { SetPlayerDataMap(value); return *this;} /** *

Map of string pairs, each specifying a player ID and a set of * developer-defined information related to the player. Amazon GameLift does not * use this data, so it can be formatted as needed for use in the game. Any player * data strings for player IDs that are not included in the PlayerIds * parameter are ignored.

*/ inline CreatePlayerSessionsRequest& WithPlayerDataMap(Aws::Map&& value) { SetPlayerDataMap(std::move(value)); return *this;} /** *

Map of string pairs, each specifying a player ID and a set of * developer-defined information related to the player. Amazon GameLift does not * use this data, so it can be formatted as needed for use in the game. Any player * data strings for player IDs that are not included in the PlayerIds * parameter are ignored.

*/ inline CreatePlayerSessionsRequest& AddPlayerDataMap(const Aws::String& key, const Aws::String& value) { m_playerDataMapHasBeenSet = true; m_playerDataMap.emplace(key, value); return *this; } /** *

Map of string pairs, each specifying a player ID and a set of * developer-defined information related to the player. Amazon GameLift does not * use this data, so it can be formatted as needed for use in the game. Any player * data strings for player IDs that are not included in the PlayerIds * parameter are ignored.

*/ inline CreatePlayerSessionsRequest& AddPlayerDataMap(Aws::String&& key, const Aws::String& value) { m_playerDataMapHasBeenSet = true; m_playerDataMap.emplace(std::move(key), value); return *this; } /** *

Map of string pairs, each specifying a player ID and a set of * developer-defined information related to the player. Amazon GameLift does not * use this data, so it can be formatted as needed for use in the game. Any player * data strings for player IDs that are not included in the PlayerIds * parameter are ignored.

*/ inline CreatePlayerSessionsRequest& AddPlayerDataMap(const Aws::String& key, Aws::String&& value) { m_playerDataMapHasBeenSet = true; m_playerDataMap.emplace(key, std::move(value)); return *this; } /** *

Map of string pairs, each specifying a player ID and a set of * developer-defined information related to the player. Amazon GameLift does not * use this data, so it can be formatted as needed for use in the game. Any player * data strings for player IDs that are not included in the PlayerIds * parameter are ignored.

*/ inline CreatePlayerSessionsRequest& AddPlayerDataMap(Aws::String&& key, Aws::String&& value) { m_playerDataMapHasBeenSet = true; m_playerDataMap.emplace(std::move(key), std::move(value)); return *this; } /** *

Map of string pairs, each specifying a player ID and a set of * developer-defined information related to the player. Amazon GameLift does not * use this data, so it can be formatted as needed for use in the game. Any player * data strings for player IDs that are not included in the PlayerIds * parameter are ignored.

*/ inline CreatePlayerSessionsRequest& AddPlayerDataMap(const char* key, Aws::String&& value) { m_playerDataMapHasBeenSet = true; m_playerDataMap.emplace(key, std::move(value)); return *this; } /** *

Map of string pairs, each specifying a player ID and a set of * developer-defined information related to the player. Amazon GameLift does not * use this data, so it can be formatted as needed for use in the game. Any player * data strings for player IDs that are not included in the PlayerIds * parameter are ignored.

*/ inline CreatePlayerSessionsRequest& AddPlayerDataMap(Aws::String&& key, const char* value) { m_playerDataMapHasBeenSet = true; m_playerDataMap.emplace(std::move(key), value); return *this; } /** *

Map of string pairs, each specifying a player ID and a set of * developer-defined information related to the player. Amazon GameLift does not * use this data, so it can be formatted as needed for use in the game. Any player * data strings for player IDs that are not included in the PlayerIds * parameter are ignored.

*/ inline CreatePlayerSessionsRequest& AddPlayerDataMap(const char* key, const char* value) { m_playerDataMapHasBeenSet = true; m_playerDataMap.emplace(key, value); return *this; } private: Aws::String m_gameSessionId; bool m_gameSessionIdHasBeenSet = false; Aws::Vector m_playerIds; bool m_playerIdsHasBeenSet = false; Aws::Map m_playerDataMap; bool m_playerDataMapHasBeenSet = false; }; } // namespace Model } // namespace GameLift } // namespace Aws