AWS SDK for C++

AWS SDK for C++ Version 1.11.850

Loading...
Searching...
No Matches
ResourceDetails.h
1
6#pragma once
7#include <aws/inspector2/Inspector2_EXPORTS.h>
8#include <aws/inspector2/model/AwsEc2InstanceDetails.h>
9#include <aws/inspector2/model/AwsEcrContainerImageDetails.h>
10#include <aws/inspector2/model/AwsLambdaFunctionDetails.h>
11#include <aws/inspector2/model/CodeRepositoryDetails.h>
12#include <aws/inspector2/model/Image.h>
13#include <aws/inspector2/model/ServerlessFunction.h>
14#include <aws/inspector2/model/Vm.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Json {
21class JsonValue;
22class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace Inspector2 {
26namespace Model {
27
35 public:
36 AWS_INSPECTOR2_API ResourceDetails() = default;
37 AWS_INSPECTOR2_API ResourceDetails(Aws::Utils::Json::JsonView jsonValue);
39 AWS_INSPECTOR2_API Aws::Utils::Json::JsonValue Jsonize() const;
40
42
46 inline const AwsEc2InstanceDetails& GetAwsEc2Instance() const { return m_awsEc2Instance; }
47 inline bool AwsEc2InstanceHasBeenSet() const { return m_awsEc2InstanceHasBeenSet; }
48 template <typename AwsEc2InstanceT = AwsEc2InstanceDetails>
49 void SetAwsEc2Instance(AwsEc2InstanceT&& value) {
50 m_awsEc2InstanceHasBeenSet = true;
51 m_awsEc2Instance = std::forward<AwsEc2InstanceT>(value);
52 }
53 template <typename AwsEc2InstanceT = AwsEc2InstanceDetails>
54 ResourceDetails& WithAwsEc2Instance(AwsEc2InstanceT&& value) {
55 SetAwsEc2Instance(std::forward<AwsEc2InstanceT>(value));
56 return *this;
57 }
59
61
65 inline const AwsEcrContainerImageDetails& GetAwsEcrContainerImage() const { return m_awsEcrContainerImage; }
66 inline bool AwsEcrContainerImageHasBeenSet() const { return m_awsEcrContainerImageHasBeenSet; }
67 template <typename AwsEcrContainerImageT = AwsEcrContainerImageDetails>
68 void SetAwsEcrContainerImage(AwsEcrContainerImageT&& value) {
69 m_awsEcrContainerImageHasBeenSet = true;
70 m_awsEcrContainerImage = std::forward<AwsEcrContainerImageT>(value);
71 }
72 template <typename AwsEcrContainerImageT = AwsEcrContainerImageDetails>
73 ResourceDetails& WithAwsEcrContainerImage(AwsEcrContainerImageT&& value) {
74 SetAwsEcrContainerImage(std::forward<AwsEcrContainerImageT>(value));
75 return *this;
76 }
78
80
84 inline const AwsLambdaFunctionDetails& GetAwsLambdaFunction() const { return m_awsLambdaFunction; }
85 inline bool AwsLambdaFunctionHasBeenSet() const { return m_awsLambdaFunctionHasBeenSet; }
86 template <typename AwsLambdaFunctionT = AwsLambdaFunctionDetails>
87 void SetAwsLambdaFunction(AwsLambdaFunctionT&& value) {
88 m_awsLambdaFunctionHasBeenSet = true;
89 m_awsLambdaFunction = std::forward<AwsLambdaFunctionT>(value);
90 }
91 template <typename AwsLambdaFunctionT = AwsLambdaFunctionDetails>
92 ResourceDetails& WithAwsLambdaFunction(AwsLambdaFunctionT&& value) {
93 SetAwsLambdaFunction(std::forward<AwsLambdaFunctionT>(value));
94 return *this;
95 }
97
99
103 inline const CodeRepositoryDetails& GetCodeRepository() const { return m_codeRepository; }
104 inline bool CodeRepositoryHasBeenSet() const { return m_codeRepositoryHasBeenSet; }
105 template <typename CodeRepositoryT = CodeRepositoryDetails>
106 void SetCodeRepository(CodeRepositoryT&& value) {
107 m_codeRepositoryHasBeenSet = true;
108 m_codeRepository = std::forward<CodeRepositoryT>(value);
109 }
110 template <typename CodeRepositoryT = CodeRepositoryDetails>
111 ResourceDetails& WithCodeRepository(CodeRepositoryT&& value) {
112 SetCodeRepository(std::forward<CodeRepositoryT>(value));
113 return *this;
114 }
116
118
122 inline const Vm& GetVm() const { return m_vm; }
123 inline bool VmHasBeenSet() const { return m_vmHasBeenSet; }
124 template <typename VmT = Vm>
125 void SetVm(VmT&& value) {
126 m_vmHasBeenSet = true;
127 m_vm = std::forward<VmT>(value);
128 }
129 template <typename VmT = Vm>
130 ResourceDetails& WithVm(VmT&& value) {
131 SetVm(std::forward<VmT>(value));
132 return *this;
133 }
135
137
141 inline const Image& GetImage() const { return m_image; }
142 inline bool ImageHasBeenSet() const { return m_imageHasBeenSet; }
143 template <typename ImageT = Image>
144 void SetImage(ImageT&& value) {
145 m_imageHasBeenSet = true;
146 m_image = std::forward<ImageT>(value);
147 }
148 template <typename ImageT = Image>
149 ResourceDetails& WithImage(ImageT&& value) {
150 SetImage(std::forward<ImageT>(value));
151 return *this;
152 }
154
156
160 inline const ServerlessFunction& GetServerlessFunction() const { return m_serverlessFunction; }
161 inline bool ServerlessFunctionHasBeenSet() const { return m_serverlessFunctionHasBeenSet; }
162 template <typename ServerlessFunctionT = ServerlessFunction>
163 void SetServerlessFunction(ServerlessFunctionT&& value) {
164 m_serverlessFunctionHasBeenSet = true;
165 m_serverlessFunction = std::forward<ServerlessFunctionT>(value);
166 }
167 template <typename ServerlessFunctionT = ServerlessFunction>
168 ResourceDetails& WithServerlessFunction(ServerlessFunctionT&& value) {
169 SetServerlessFunction(std::forward<ServerlessFunctionT>(value));
170 return *this;
171 }
173 private:
174 AwsEc2InstanceDetails m_awsEc2Instance;
175
176 AwsEcrContainerImageDetails m_awsEcrContainerImage;
177
178 AwsLambdaFunctionDetails m_awsLambdaFunction;
179
180 CodeRepositoryDetails m_codeRepository;
181
182 Vm m_vm;
183
184 Image m_image;
185
186 ServerlessFunction m_serverlessFunction;
187 bool m_awsEc2InstanceHasBeenSet = false;
188 bool m_awsEcrContainerImageHasBeenSet = false;
189 bool m_awsLambdaFunctionHasBeenSet = false;
190 bool m_codeRepositoryHasBeenSet = false;
191 bool m_vmHasBeenSet = false;
192 bool m_imageHasBeenSet = false;
193 bool m_serverlessFunctionHasBeenSet = false;
194};
195
196} // namespace Model
197} // namespace Inspector2
198} // namespace Aws
AWS_INSPECTOR2_API ResourceDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
const ServerlessFunction & GetServerlessFunction() const
void SetAwsLambdaFunction(AwsLambdaFunctionT &&value)
ResourceDetails & WithAwsEcrContainerImage(AwsEcrContainerImageT &&value)
ResourceDetails & WithAwsLambdaFunction(AwsLambdaFunctionT &&value)
void SetServerlessFunction(ServerlessFunctionT &&value)
const AwsEc2InstanceDetails & GetAwsEc2Instance() const
void SetAwsEc2Instance(AwsEc2InstanceT &&value)
AWS_INSPECTOR2_API ResourceDetails(Aws::Utils::Json::JsonView jsonValue)
AWS_INSPECTOR2_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_INSPECTOR2_API ResourceDetails()=default
ResourceDetails & WithCodeRepository(CodeRepositoryT &&value)
const AwsEcrContainerImageDetails & GetAwsEcrContainerImage() const
void SetAwsEcrContainerImage(AwsEcrContainerImageT &&value)
void SetCodeRepository(CodeRepositoryT &&value)
ResourceDetails & WithServerlessFunction(ServerlessFunctionT &&value)
const CodeRepositoryDetails & GetCodeRepository() const
const AwsLambdaFunctionDetails & GetAwsLambdaFunction() const
ResourceDetails & WithAwsEc2Instance(AwsEc2InstanceT &&value)
ResourceDetails & WithVm(VmT &&value)
ResourceDetails & WithImage(ImageT &&value)
Aws::Utils::Json::JsonValue JsonValue