AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
ComputeAttributes.h
1
6#pragma once
7#include <aws/outposts/Outposts_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/outposts/model/ComputeAssetState.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/outposts/model/AssetInstanceTypeCapacity.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace Outposts
25{
26namespace Model
27{
28
35 {
36 public:
37 AWS_OUTPOSTS_API ComputeAttributes() = default;
38 AWS_OUTPOSTS_API ComputeAttributes(Aws::Utils::Json::JsonView jsonValue);
40 AWS_OUTPOSTS_API Aws::Utils::Json::JsonValue Jsonize() const;
41
42
44
47 inline const Aws::String& GetHostId() const { return m_hostId; }
48 inline bool HostIdHasBeenSet() const { return m_hostIdHasBeenSet; }
49 template<typename HostIdT = Aws::String>
50 void SetHostId(HostIdT&& value) { m_hostIdHasBeenSet = true; m_hostId = std::forward<HostIdT>(value); }
51 template<typename HostIdT = Aws::String>
52 ComputeAttributes& WithHostId(HostIdT&& value) { SetHostId(std::forward<HostIdT>(value)); return *this;}
54
56
65 inline ComputeAssetState GetState() const { return m_state; }
66 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
67 inline void SetState(ComputeAssetState value) { m_stateHasBeenSet = true; m_state = value; }
68 inline ComputeAttributes& WithState(ComputeAssetState value) { SetState(value); return *this;}
70
72
76 inline const Aws::Vector<Aws::String>& GetInstanceFamilies() const { return m_instanceFamilies; }
77 inline bool InstanceFamiliesHasBeenSet() const { return m_instanceFamiliesHasBeenSet; }
78 template<typename InstanceFamiliesT = Aws::Vector<Aws::String>>
79 void SetInstanceFamilies(InstanceFamiliesT&& value) { m_instanceFamiliesHasBeenSet = true; m_instanceFamilies = std::forward<InstanceFamiliesT>(value); }
80 template<typename InstanceFamiliesT = Aws::Vector<Aws::String>>
81 ComputeAttributes& WithInstanceFamilies(InstanceFamiliesT&& value) { SetInstanceFamilies(std::forward<InstanceFamiliesT>(value)); return *this;}
82 template<typename InstanceFamiliesT = Aws::String>
83 ComputeAttributes& AddInstanceFamilies(InstanceFamiliesT&& value) { m_instanceFamiliesHasBeenSet = true; m_instanceFamilies.emplace_back(std::forward<InstanceFamiliesT>(value)); return *this; }
85
87
91 inline const Aws::Vector<AssetInstanceTypeCapacity>& GetInstanceTypeCapacities() const { return m_instanceTypeCapacities; }
92 inline bool InstanceTypeCapacitiesHasBeenSet() const { return m_instanceTypeCapacitiesHasBeenSet; }
93 template<typename InstanceTypeCapacitiesT = Aws::Vector<AssetInstanceTypeCapacity>>
94 void SetInstanceTypeCapacities(InstanceTypeCapacitiesT&& value) { m_instanceTypeCapacitiesHasBeenSet = true; m_instanceTypeCapacities = std::forward<InstanceTypeCapacitiesT>(value); }
95 template<typename InstanceTypeCapacitiesT = Aws::Vector<AssetInstanceTypeCapacity>>
96 ComputeAttributes& WithInstanceTypeCapacities(InstanceTypeCapacitiesT&& value) { SetInstanceTypeCapacities(std::forward<InstanceTypeCapacitiesT>(value)); return *this;}
97 template<typename InstanceTypeCapacitiesT = AssetInstanceTypeCapacity>
98 ComputeAttributes& AddInstanceTypeCapacities(InstanceTypeCapacitiesT&& value) { m_instanceTypeCapacitiesHasBeenSet = true; m_instanceTypeCapacities.emplace_back(std::forward<InstanceTypeCapacitiesT>(value)); return *this; }
100
102
105 inline int GetMaxVcpus() const { return m_maxVcpus; }
106 inline bool MaxVcpusHasBeenSet() const { return m_maxVcpusHasBeenSet; }
107 inline void SetMaxVcpus(int value) { m_maxVcpusHasBeenSet = true; m_maxVcpus = value; }
108 inline ComputeAttributes& WithMaxVcpus(int value) { SetMaxVcpus(value); return *this;}
110 private:
111
112 Aws::String m_hostId;
113 bool m_hostIdHasBeenSet = false;
114
116 bool m_stateHasBeenSet = false;
117
118 Aws::Vector<Aws::String> m_instanceFamilies;
119 bool m_instanceFamiliesHasBeenSet = false;
120
121 Aws::Vector<AssetInstanceTypeCapacity> m_instanceTypeCapacities;
122 bool m_instanceTypeCapacitiesHasBeenSet = false;
123
124 int m_maxVcpus{0};
125 bool m_maxVcpusHasBeenSet = false;
126 };
127
128} // namespace Model
129} // namespace Outposts
130} // namespace Aws
void SetInstanceTypeCapacities(InstanceTypeCapacitiesT &&value)
const Aws::String & GetHostId() const
ComputeAttributes & WithHostId(HostIdT &&value)
void SetState(ComputeAssetState value)
AWS_OUTPOSTS_API ComputeAttributes(Aws::Utils::Json::JsonView jsonValue)
ComputeAttributes & WithState(ComputeAssetState value)
ComputeAttributes & WithInstanceFamilies(InstanceFamiliesT &&value)
AWS_OUTPOSTS_API Aws::Utils::Json::JsonValue Jsonize() const
ComputeAttributes & WithMaxVcpus(int value)
void SetInstanceFamilies(InstanceFamiliesT &&value)
const Aws::Vector< AssetInstanceTypeCapacity > & GetInstanceTypeCapacities() const
AWS_OUTPOSTS_API ComputeAttributes()=default
AWS_OUTPOSTS_API ComputeAttributes & operator=(Aws::Utils::Json::JsonView jsonValue)
ComputeAttributes & AddInstanceTypeCapacities(InstanceTypeCapacitiesT &&value)
ComputeAttributes & WithInstanceTypeCapacities(InstanceTypeCapacitiesT &&value)
const Aws::Vector< Aws::String > & GetInstanceFamilies() const
ComputeAttributes & AddInstanceFamilies(InstanceFamiliesT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue