AWS SDK for C++

AWS SDK for C++ Version 1.11.711

Loading...
Searching...
No Matches
AssetInfo.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/outposts/Outposts_EXPORTS.h>
9#include <aws/outposts/model/AssetLocation.h>
10#include <aws/outposts/model/AssetType.h>
11#include <aws/outposts/model/ComputeAttributes.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace Outposts {
23namespace Model {
24
30class AssetInfo {
31 public:
32 AWS_OUTPOSTS_API AssetInfo() = default;
33 AWS_OUTPOSTS_API AssetInfo(Aws::Utils::Json::JsonView jsonValue);
34 AWS_OUTPOSTS_API AssetInfo& operator=(Aws::Utils::Json::JsonView jsonValue);
35 AWS_OUTPOSTS_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
42 inline const Aws::String& GetAssetId() const { return m_assetId; }
43 inline bool AssetIdHasBeenSet() const { return m_assetIdHasBeenSet; }
44 template <typename AssetIdT = Aws::String>
45 void SetAssetId(AssetIdT&& value) {
46 m_assetIdHasBeenSet = true;
47 m_assetId = std::forward<AssetIdT>(value);
48 }
49 template <typename AssetIdT = Aws::String>
50 AssetInfo& WithAssetId(AssetIdT&& value) {
51 SetAssetId(std::forward<AssetIdT>(value));
52 return *this;
53 }
55
57
60 inline const Aws::String& GetRackId() const { return m_rackId; }
61 inline bool RackIdHasBeenSet() const { return m_rackIdHasBeenSet; }
62 template <typename RackIdT = Aws::String>
63 void SetRackId(RackIdT&& value) {
64 m_rackIdHasBeenSet = true;
65 m_rackId = std::forward<RackIdT>(value);
66 }
67 template <typename RackIdT = Aws::String>
68 AssetInfo& WithRackId(RackIdT&& value) {
69 SetRackId(std::forward<RackIdT>(value));
70 return *this;
71 }
73
75
78 inline AssetType GetAssetType() const { return m_assetType; }
79 inline bool AssetTypeHasBeenSet() const { return m_assetTypeHasBeenSet; }
80 inline void SetAssetType(AssetType value) {
81 m_assetTypeHasBeenSet = true;
82 m_assetType = value;
83 }
85 SetAssetType(value);
86 return *this;
87 }
89
91
94 inline const ComputeAttributes& GetComputeAttributes() const { return m_computeAttributes; }
95 inline bool ComputeAttributesHasBeenSet() const { return m_computeAttributesHasBeenSet; }
96 template <typename ComputeAttributesT = ComputeAttributes>
97 void SetComputeAttributes(ComputeAttributesT&& value) {
98 m_computeAttributesHasBeenSet = true;
99 m_computeAttributes = std::forward<ComputeAttributesT>(value);
100 }
101 template <typename ComputeAttributesT = ComputeAttributes>
102 AssetInfo& WithComputeAttributes(ComputeAttributesT&& value) {
103 SetComputeAttributes(std::forward<ComputeAttributesT>(value));
104 return *this;
105 }
107
109
112 inline const AssetLocation& GetAssetLocation() const { return m_assetLocation; }
113 inline bool AssetLocationHasBeenSet() const { return m_assetLocationHasBeenSet; }
114 template <typename AssetLocationT = AssetLocation>
115 void SetAssetLocation(AssetLocationT&& value) {
116 m_assetLocationHasBeenSet = true;
117 m_assetLocation = std::forward<AssetLocationT>(value);
118 }
119 template <typename AssetLocationT = AssetLocation>
120 AssetInfo& WithAssetLocation(AssetLocationT&& value) {
121 SetAssetLocation(std::forward<AssetLocationT>(value));
122 return *this;
123 }
125 private:
126 Aws::String m_assetId;
127
128 Aws::String m_rackId;
129
130 AssetType m_assetType{AssetType::NOT_SET};
131
132 ComputeAttributes m_computeAttributes;
133
134 AssetLocation m_assetLocation;
135 bool m_assetIdHasBeenSet = false;
136 bool m_rackIdHasBeenSet = false;
137 bool m_assetTypeHasBeenSet = false;
138 bool m_computeAttributesHasBeenSet = false;
139 bool m_assetLocationHasBeenSet = false;
140};
141
142} // namespace Model
143} // namespace Outposts
144} // namespace Aws
AWS_OUTPOSTS_API AssetInfo()=default
AssetInfo & WithComputeAttributes(ComputeAttributesT &&value)
Definition AssetInfo.h:102
const AssetLocation & GetAssetLocation() const
Definition AssetInfo.h:112
AssetInfo & WithAssetType(AssetType value)
Definition AssetInfo.h:84
void SetAssetLocation(AssetLocationT &&value)
Definition AssetInfo.h:115
AWS_OUTPOSTS_API Aws::Utils::Json::JsonValue Jsonize() const
AssetInfo & WithAssetLocation(AssetLocationT &&value)
Definition AssetInfo.h:120
const ComputeAttributes & GetComputeAttributes() const
Definition AssetInfo.h:94
void SetAssetId(AssetIdT &&value)
Definition AssetInfo.h:45
void SetComputeAttributes(ComputeAttributesT &&value)
Definition AssetInfo.h:97
AssetInfo & WithAssetId(AssetIdT &&value)
Definition AssetInfo.h:50
const Aws::String & GetAssetId() const
Definition AssetInfo.h:42
AssetType GetAssetType() const
Definition AssetInfo.h:78
AWS_OUTPOSTS_API AssetInfo(Aws::Utils::Json::JsonView jsonValue)
void SetAssetType(AssetType value)
Definition AssetInfo.h:80
AWS_OUTPOSTS_API AssetInfo & operator=(Aws::Utils::Json::JsonView jsonValue)
AssetInfo & WithRackId(RackIdT &&value)
Definition AssetInfo.h:68
bool ComputeAttributesHasBeenSet() const
Definition AssetInfo.h:95
const Aws::String & GetRackId() const
Definition AssetInfo.h:60
void SetRackId(RackIdT &&value)
Definition AssetInfo.h:63
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue