/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace GameLift { namespace Model { /** *

Player information for use when creating player sessions using a game session * placement request.

See Also:

AWS * API Reference

*/ class DesiredPlayerSession { public: AWS_GAMELIFT_API DesiredPlayerSession(); AWS_GAMELIFT_API DesiredPlayerSession(Aws::Utils::Json::JsonView jsonValue); AWS_GAMELIFT_API DesiredPlayerSession& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_GAMELIFT_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

A unique identifier for a player to associate with the player session.

*/ inline const Aws::String& GetPlayerId() const{ return m_playerId; } /** *

A unique identifier for a player to associate with the player session.

*/ inline bool PlayerIdHasBeenSet() const { return m_playerIdHasBeenSet; } /** *

A unique identifier for a player to associate with the player session.

*/ inline void SetPlayerId(const Aws::String& value) { m_playerIdHasBeenSet = true; m_playerId = value; } /** *

A unique identifier for a player to associate with the player session.

*/ inline void SetPlayerId(Aws::String&& value) { m_playerIdHasBeenSet = true; m_playerId = std::move(value); } /** *

A unique identifier for a player to associate with the player session.

*/ inline void SetPlayerId(const char* value) { m_playerIdHasBeenSet = true; m_playerId.assign(value); } /** *

A unique identifier for a player to associate with the player session.

*/ inline DesiredPlayerSession& WithPlayerId(const Aws::String& value) { SetPlayerId(value); return *this;} /** *

A unique identifier for a player to associate with the player session.

*/ inline DesiredPlayerSession& WithPlayerId(Aws::String&& value) { SetPlayerId(std::move(value)); return *this;} /** *

A unique identifier for a player to associate with the player session.

*/ inline DesiredPlayerSession& WithPlayerId(const char* value) { SetPlayerId(value); return *this;} /** *

Developer-defined information related to a player. Amazon GameLift does not * use this data, so it can be formatted as needed for use in the game.

*/ inline const Aws::String& GetPlayerData() const{ return m_playerData; } /** *

Developer-defined information related to a player. Amazon GameLift does not * use this data, so it can be formatted as needed for use in the game.

*/ inline bool PlayerDataHasBeenSet() const { return m_playerDataHasBeenSet; } /** *

Developer-defined information related to a player. Amazon GameLift does not * use this data, so it can be formatted as needed for use in the game.

*/ inline void SetPlayerData(const Aws::String& value) { m_playerDataHasBeenSet = true; m_playerData = value; } /** *

Developer-defined information related to a player. Amazon GameLift does not * use this data, so it can be formatted as needed for use in the game.

*/ inline void SetPlayerData(Aws::String&& value) { m_playerDataHasBeenSet = true; m_playerData = std::move(value); } /** *

Developer-defined information related to a player. Amazon GameLift does not * use this data, so it can be formatted as needed for use in the game.

*/ inline void SetPlayerData(const char* value) { m_playerDataHasBeenSet = true; m_playerData.assign(value); } /** *

Developer-defined information related to a player. Amazon GameLift does not * use this data, so it can be formatted as needed for use in the game.

*/ inline DesiredPlayerSession& WithPlayerData(const Aws::String& value) { SetPlayerData(value); return *this;} /** *

Developer-defined information related to a player. Amazon GameLift does not * use this data, so it can be formatted as needed for use in the game.

*/ inline DesiredPlayerSession& WithPlayerData(Aws::String&& value) { SetPlayerData(std::move(value)); return *this;} /** *

Developer-defined information related to a player. Amazon GameLift does not * use this data, so it can be formatted as needed for use in the game.

*/ inline DesiredPlayerSession& WithPlayerData(const char* value) { SetPlayerData(value); return *this;} private: Aws::String m_playerId; bool m_playerIdHasBeenSet = false; Aws::String m_playerData; bool m_playerDataHasBeenSet = false; }; } // namespace Model } // namespace GameLift } // namespace Aws