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/lightsail/Lightsail_EXPORTS.h>
8 #include <aws/lightsail/model/InstanceState.h>
9 #include <utility>
10 
11 namespace Aws
12 {
13 template<typename RESULT_TYPE>
14 class AmazonWebServiceResult;
15 
16 namespace Utils
17 {
18 namespace Json
19 {
20   class JsonValue;
21 } // namespace Json
22 } // namespace Utils
23 namespace Lightsail
24 {
25 namespace Model
26 {
27   class AWS_LIGHTSAIL_API GetInstanceStateResult
28   {
29   public:
30     GetInstanceStateResult();
31     GetInstanceStateResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
32     GetInstanceStateResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
33 
34 
35     /**
36      * <p>The state of the instance.</p>
37      */
GetState()38     inline const InstanceState& GetState() const{ return m_state; }
39 
40     /**
41      * <p>The state of the instance.</p>
42      */
SetState(const InstanceState & value)43     inline void SetState(const InstanceState& value) { m_state = value; }
44 
45     /**
46      * <p>The state of the instance.</p>
47      */
SetState(InstanceState && value)48     inline void SetState(InstanceState&& value) { m_state = std::move(value); }
49 
50     /**
51      * <p>The state of the instance.</p>
52      */
WithState(const InstanceState & value)53     inline GetInstanceStateResult& WithState(const InstanceState& value) { SetState(value); return *this;}
54 
55     /**
56      * <p>The state of the instance.</p>
57      */
WithState(InstanceState && value)58     inline GetInstanceStateResult& WithState(InstanceState&& value) { SetState(std::move(value)); return *this;}
59 
60   private:
61 
62     InstanceState m_state;
63   };
64 
65 } // namespace Model
66 } // namespace Lightsail
67 } // namespace Aws
68