1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/gamelift/GameLift_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.h> 9 #include <aws/gamelift/model/FleetStatus.h> 10 #include <utility> 11 12 namespace Aws 13 { 14 namespace Utils 15 { 16 namespace Json 17 { 18 class JsonValue; 19 class JsonView; 20 } // namespace Json 21 } // namespace Utils 22 namespace GameLift 23 { 24 namespace Model 25 { 26 27 /** 28 * <p>A fleet location and its life-cycle state. A location state object might be 29 * used to describe a fleet's remote location or home Region. Life-cycle state 30 * tracks the progress of launching the first instance in a new location and 31 * preparing it for game hosting, and then removing all instances and deleting the 32 * location from the fleet.</p> <p> <b>Related actions</b> </p> <p> 33 * <a>CreateFleet</a> | <a>CreateFleetLocations</a> | <a>DeleteFleetLocations</a> 34 * </p><p><h3>See Also:</h3> <a 35 * href="http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/LocationState">AWS 36 * API Reference</a></p> 37 */ 38 class AWS_GAMELIFT_API LocationState 39 { 40 public: 41 LocationState(); 42 LocationState(Aws::Utils::Json::JsonView jsonValue); 43 LocationState& operator=(Aws::Utils::Json::JsonView jsonValue); 44 Aws::Utils::Json::JsonValue Jsonize() const; 45 46 47 /** 48 * <p>The fleet location, expressed as an AWS Region code such as 49 * <code>us-west-2</code>. </p> 50 */ GetLocation()51 inline const Aws::String& GetLocation() const{ return m_location; } 52 53 /** 54 * <p>The fleet location, expressed as an AWS Region code such as 55 * <code>us-west-2</code>. </p> 56 */ LocationHasBeenSet()57 inline bool LocationHasBeenSet() const { return m_locationHasBeenSet; } 58 59 /** 60 * <p>The fleet location, expressed as an AWS Region code such as 61 * <code>us-west-2</code>. </p> 62 */ SetLocation(const Aws::String & value)63 inline void SetLocation(const Aws::String& value) { m_locationHasBeenSet = true; m_location = value; } 64 65 /** 66 * <p>The fleet location, expressed as an AWS Region code such as 67 * <code>us-west-2</code>. </p> 68 */ SetLocation(Aws::String && value)69 inline void SetLocation(Aws::String&& value) { m_locationHasBeenSet = true; m_location = std::move(value); } 70 71 /** 72 * <p>The fleet location, expressed as an AWS Region code such as 73 * <code>us-west-2</code>. </p> 74 */ SetLocation(const char * value)75 inline void SetLocation(const char* value) { m_locationHasBeenSet = true; m_location.assign(value); } 76 77 /** 78 * <p>The fleet location, expressed as an AWS Region code such as 79 * <code>us-west-2</code>. </p> 80 */ WithLocation(const Aws::String & value)81 inline LocationState& WithLocation(const Aws::String& value) { SetLocation(value); return *this;} 82 83 /** 84 * <p>The fleet location, expressed as an AWS Region code such as 85 * <code>us-west-2</code>. </p> 86 */ WithLocation(Aws::String && value)87 inline LocationState& WithLocation(Aws::String&& value) { SetLocation(std::move(value)); return *this;} 88 89 /** 90 * <p>The fleet location, expressed as an AWS Region code such as 91 * <code>us-west-2</code>. </p> 92 */ WithLocation(const char * value)93 inline LocationState& WithLocation(const char* value) { SetLocation(value); return *this;} 94 95 96 /** 97 * <p>The life-cycle status of a fleet location. </p> 98 */ GetStatus()99 inline const FleetStatus& GetStatus() const{ return m_status; } 100 101 /** 102 * <p>The life-cycle status of a fleet location. </p> 103 */ StatusHasBeenSet()104 inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } 105 106 /** 107 * <p>The life-cycle status of a fleet location. </p> 108 */ SetStatus(const FleetStatus & value)109 inline void SetStatus(const FleetStatus& value) { m_statusHasBeenSet = true; m_status = value; } 110 111 /** 112 * <p>The life-cycle status of a fleet location. </p> 113 */ SetStatus(FleetStatus && value)114 inline void SetStatus(FleetStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } 115 116 /** 117 * <p>The life-cycle status of a fleet location. </p> 118 */ WithStatus(const FleetStatus & value)119 inline LocationState& WithStatus(const FleetStatus& value) { SetStatus(value); return *this;} 120 121 /** 122 * <p>The life-cycle status of a fleet location. </p> 123 */ WithStatus(FleetStatus && value)124 inline LocationState& WithStatus(FleetStatus&& value) { SetStatus(std::move(value)); return *this;} 125 126 private: 127 128 Aws::String m_location; 129 bool m_locationHasBeenSet; 130 131 FleetStatus m_status; 132 bool m_statusHasBeenSet; 133 }; 134 135 } // namespace Model 136 } // namespace GameLift 137 } // namespace Aws 138