AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
AddOnRequest.h
1
6#pragma once
7#include <aws/lightsail/Lightsail_EXPORTS.h>
8#include <aws/lightsail/model/AddOnType.h>
9#include <aws/lightsail/model/AutoSnapshotAddOnRequest.h>
10#include <aws/lightsail/model/StopInstanceOnIdleRequest.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace Lightsail
24{
25namespace Model
26{
27
38 {
39 public:
40 AWS_LIGHTSAIL_API AddOnRequest() = default;
41 AWS_LIGHTSAIL_API AddOnRequest(Aws::Utils::Json::JsonView jsonValue);
42 AWS_LIGHTSAIL_API AddOnRequest& operator=(Aws::Utils::Json::JsonView jsonValue);
43 AWS_LIGHTSAIL_API Aws::Utils::Json::JsonValue Jsonize() const;
44
45
47
50 inline AddOnType GetAddOnType() const { return m_addOnType; }
51 inline bool AddOnTypeHasBeenSet() const { return m_addOnTypeHasBeenSet; }
52 inline void SetAddOnType(AddOnType value) { m_addOnTypeHasBeenSet = true; m_addOnType = value; }
53 inline AddOnRequest& WithAddOnType(AddOnType value) { SetAddOnType(value); return *this;}
55
57
61 inline const AutoSnapshotAddOnRequest& GetAutoSnapshotAddOnRequest() const { return m_autoSnapshotAddOnRequest; }
62 inline bool AutoSnapshotAddOnRequestHasBeenSet() const { return m_autoSnapshotAddOnRequestHasBeenSet; }
63 template<typename AutoSnapshotAddOnRequestT = AutoSnapshotAddOnRequest>
64 void SetAutoSnapshotAddOnRequest(AutoSnapshotAddOnRequestT&& value) { m_autoSnapshotAddOnRequestHasBeenSet = true; m_autoSnapshotAddOnRequest = std::forward<AutoSnapshotAddOnRequestT>(value); }
65 template<typename AutoSnapshotAddOnRequestT = AutoSnapshotAddOnRequest>
66 AddOnRequest& WithAutoSnapshotAddOnRequest(AutoSnapshotAddOnRequestT&& value) { SetAutoSnapshotAddOnRequest(std::forward<AutoSnapshotAddOnRequestT>(value)); return *this;}
68
70
75 inline const StopInstanceOnIdleRequest& GetStopInstanceOnIdleRequest() const { return m_stopInstanceOnIdleRequest; }
76 inline bool StopInstanceOnIdleRequestHasBeenSet() const { return m_stopInstanceOnIdleRequestHasBeenSet; }
77 template<typename StopInstanceOnIdleRequestT = StopInstanceOnIdleRequest>
78 void SetStopInstanceOnIdleRequest(StopInstanceOnIdleRequestT&& value) { m_stopInstanceOnIdleRequestHasBeenSet = true; m_stopInstanceOnIdleRequest = std::forward<StopInstanceOnIdleRequestT>(value); }
79 template<typename StopInstanceOnIdleRequestT = StopInstanceOnIdleRequest>
80 AddOnRequest& WithStopInstanceOnIdleRequest(StopInstanceOnIdleRequestT&& value) { SetStopInstanceOnIdleRequest(std::forward<StopInstanceOnIdleRequestT>(value)); return *this;}
82 private:
83
84 AddOnType m_addOnType{AddOnType::NOT_SET};
85 bool m_addOnTypeHasBeenSet = false;
86
87 AutoSnapshotAddOnRequest m_autoSnapshotAddOnRequest;
88 bool m_autoSnapshotAddOnRequestHasBeenSet = false;
89
90 StopInstanceOnIdleRequest m_stopInstanceOnIdleRequest;
91 bool m_stopInstanceOnIdleRequestHasBeenSet = false;
92 };
93
94} // namespace Model
95} // namespace Lightsail
96} // namespace Aws
void SetAddOnType(AddOnType value)
AWS_LIGHTSAIL_API AddOnRequest(Aws::Utils::Json::JsonView jsonValue)
void SetStopInstanceOnIdleRequest(StopInstanceOnIdleRequestT &&value)
void SetAutoSnapshotAddOnRequest(AutoSnapshotAddOnRequestT &&value)
const AutoSnapshotAddOnRequest & GetAutoSnapshotAddOnRequest() const
AWS_LIGHTSAIL_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_LIGHTSAIL_API AddOnRequest & operator=(Aws::Utils::Json::JsonView jsonValue)
AddOnRequest & WithAddOnType(AddOnType value)
AddOnRequest & WithStopInstanceOnIdleRequest(StopInstanceOnIdleRequestT &&value)
const StopInstanceOnIdleRequest & GetStopInstanceOnIdleRequest() const
AWS_LIGHTSAIL_API AddOnRequest()=default
AddOnRequest & WithAutoSnapshotAddOnRequest(AutoSnapshotAddOnRequestT &&value)
Aws::Utils::Json::JsonValue JsonValue