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/inspector/Inspector_EXPORTS.h>
8 #include <aws/core/utils/memory/stl/AWSString.h>
9 #include <aws/inspector/model/AgentHealth.h>
10 #include <utility>
11 
12 namespace Aws
13 {
14 namespace Utils
15 {
16 namespace Json
17 {
18   class JsonValue;
19   class JsonView;
20 } // namespace Json
21 } // namespace Utils
22 namespace Inspector
23 {
24 namespace Model
25 {
26 
27   /**
28    * <p>Used as a response element in the <a>PreviewAgents</a> action.</p><p><h3>See
29    * Also:</h3>   <a
30    * href="http://docs.aws.amazon.com/goto/WebAPI/inspector-2016-02-16/AgentPreview">AWS
31    * API Reference</a></p>
32    */
33   class AWS_INSPECTOR_API AgentPreview
34   {
35   public:
36     AgentPreview();
37     AgentPreview(Aws::Utils::Json::JsonView jsonValue);
38     AgentPreview& operator=(Aws::Utils::Json::JsonView jsonValue);
39     Aws::Utils::Json::JsonValue Jsonize() const;
40 
41 
42     /**
43      * <p>The hostname of the EC2 instance on which the Amazon Inspector Agent is
44      * installed.</p>
45      */
GetHostname()46     inline const Aws::String& GetHostname() const{ return m_hostname; }
47 
48     /**
49      * <p>The hostname of the EC2 instance on which the Amazon Inspector Agent is
50      * installed.</p>
51      */
HostnameHasBeenSet()52     inline bool HostnameHasBeenSet() const { return m_hostnameHasBeenSet; }
53 
54     /**
55      * <p>The hostname of the EC2 instance on which the Amazon Inspector Agent is
56      * installed.</p>
57      */
SetHostname(const Aws::String & value)58     inline void SetHostname(const Aws::String& value) { m_hostnameHasBeenSet = true; m_hostname = value; }
59 
60     /**
61      * <p>The hostname of the EC2 instance on which the Amazon Inspector Agent is
62      * installed.</p>
63      */
SetHostname(Aws::String && value)64     inline void SetHostname(Aws::String&& value) { m_hostnameHasBeenSet = true; m_hostname = std::move(value); }
65 
66     /**
67      * <p>The hostname of the EC2 instance on which the Amazon Inspector Agent is
68      * installed.</p>
69      */
SetHostname(const char * value)70     inline void SetHostname(const char* value) { m_hostnameHasBeenSet = true; m_hostname.assign(value); }
71 
72     /**
73      * <p>The hostname of the EC2 instance on which the Amazon Inspector Agent is
74      * installed.</p>
75      */
WithHostname(const Aws::String & value)76     inline AgentPreview& WithHostname(const Aws::String& value) { SetHostname(value); return *this;}
77 
78     /**
79      * <p>The hostname of the EC2 instance on which the Amazon Inspector Agent is
80      * installed.</p>
81      */
WithHostname(Aws::String && value)82     inline AgentPreview& WithHostname(Aws::String&& value) { SetHostname(std::move(value)); return *this;}
83 
84     /**
85      * <p>The hostname of the EC2 instance on which the Amazon Inspector Agent is
86      * installed.</p>
87      */
WithHostname(const char * value)88     inline AgentPreview& WithHostname(const char* value) { SetHostname(value); return *this;}
89 
90 
91     /**
92      * <p>The ID of the EC2 instance where the agent is installed.</p>
93      */
GetAgentId()94     inline const Aws::String& GetAgentId() const{ return m_agentId; }
95 
96     /**
97      * <p>The ID of the EC2 instance where the agent is installed.</p>
98      */
AgentIdHasBeenSet()99     inline bool AgentIdHasBeenSet() const { return m_agentIdHasBeenSet; }
100 
101     /**
102      * <p>The ID of the EC2 instance where the agent is installed.</p>
103      */
SetAgentId(const Aws::String & value)104     inline void SetAgentId(const Aws::String& value) { m_agentIdHasBeenSet = true; m_agentId = value; }
105 
106     /**
107      * <p>The ID of the EC2 instance where the agent is installed.</p>
108      */
SetAgentId(Aws::String && value)109     inline void SetAgentId(Aws::String&& value) { m_agentIdHasBeenSet = true; m_agentId = std::move(value); }
110 
111     /**
112      * <p>The ID of the EC2 instance where the agent is installed.</p>
113      */
SetAgentId(const char * value)114     inline void SetAgentId(const char* value) { m_agentIdHasBeenSet = true; m_agentId.assign(value); }
115 
116     /**
117      * <p>The ID of the EC2 instance where the agent is installed.</p>
118      */
WithAgentId(const Aws::String & value)119     inline AgentPreview& WithAgentId(const Aws::String& value) { SetAgentId(value); return *this;}
120 
121     /**
122      * <p>The ID of the EC2 instance where the agent is installed.</p>
123      */
WithAgentId(Aws::String && value)124     inline AgentPreview& WithAgentId(Aws::String&& value) { SetAgentId(std::move(value)); return *this;}
125 
126     /**
127      * <p>The ID of the EC2 instance where the agent is installed.</p>
128      */
WithAgentId(const char * value)129     inline AgentPreview& WithAgentId(const char* value) { SetAgentId(value); return *this;}
130 
131 
132     /**
133      * <p>The Auto Scaling group for the EC2 instance where the agent is installed.</p>
134      */
GetAutoScalingGroup()135     inline const Aws::String& GetAutoScalingGroup() const{ return m_autoScalingGroup; }
136 
137     /**
138      * <p>The Auto Scaling group for the EC2 instance where the agent is installed.</p>
139      */
AutoScalingGroupHasBeenSet()140     inline bool AutoScalingGroupHasBeenSet() const { return m_autoScalingGroupHasBeenSet; }
141 
142     /**
143      * <p>The Auto Scaling group for the EC2 instance where the agent is installed.</p>
144      */
SetAutoScalingGroup(const Aws::String & value)145     inline void SetAutoScalingGroup(const Aws::String& value) { m_autoScalingGroupHasBeenSet = true; m_autoScalingGroup = value; }
146 
147     /**
148      * <p>The Auto Scaling group for the EC2 instance where the agent is installed.</p>
149      */
SetAutoScalingGroup(Aws::String && value)150     inline void SetAutoScalingGroup(Aws::String&& value) { m_autoScalingGroupHasBeenSet = true; m_autoScalingGroup = std::move(value); }
151 
152     /**
153      * <p>The Auto Scaling group for the EC2 instance where the agent is installed.</p>
154      */
SetAutoScalingGroup(const char * value)155     inline void SetAutoScalingGroup(const char* value) { m_autoScalingGroupHasBeenSet = true; m_autoScalingGroup.assign(value); }
156 
157     /**
158      * <p>The Auto Scaling group for the EC2 instance where the agent is installed.</p>
159      */
WithAutoScalingGroup(const Aws::String & value)160     inline AgentPreview& WithAutoScalingGroup(const Aws::String& value) { SetAutoScalingGroup(value); return *this;}
161 
162     /**
163      * <p>The Auto Scaling group for the EC2 instance where the agent is installed.</p>
164      */
WithAutoScalingGroup(Aws::String && value)165     inline AgentPreview& WithAutoScalingGroup(Aws::String&& value) { SetAutoScalingGroup(std::move(value)); return *this;}
166 
167     /**
168      * <p>The Auto Scaling group for the EC2 instance where the agent is installed.</p>
169      */
WithAutoScalingGroup(const char * value)170     inline AgentPreview& WithAutoScalingGroup(const char* value) { SetAutoScalingGroup(value); return *this;}
171 
172 
173     /**
174      * <p>The health status of the Amazon Inspector Agent.</p>
175      */
GetAgentHealth()176     inline const AgentHealth& GetAgentHealth() const{ return m_agentHealth; }
177 
178     /**
179      * <p>The health status of the Amazon Inspector Agent.</p>
180      */
AgentHealthHasBeenSet()181     inline bool AgentHealthHasBeenSet() const { return m_agentHealthHasBeenSet; }
182 
183     /**
184      * <p>The health status of the Amazon Inspector Agent.</p>
185      */
SetAgentHealth(const AgentHealth & value)186     inline void SetAgentHealth(const AgentHealth& value) { m_agentHealthHasBeenSet = true; m_agentHealth = value; }
187 
188     /**
189      * <p>The health status of the Amazon Inspector Agent.</p>
190      */
SetAgentHealth(AgentHealth && value)191     inline void SetAgentHealth(AgentHealth&& value) { m_agentHealthHasBeenSet = true; m_agentHealth = std::move(value); }
192 
193     /**
194      * <p>The health status of the Amazon Inspector Agent.</p>
195      */
WithAgentHealth(const AgentHealth & value)196     inline AgentPreview& WithAgentHealth(const AgentHealth& value) { SetAgentHealth(value); return *this;}
197 
198     /**
199      * <p>The health status of the Amazon Inspector Agent.</p>
200      */
WithAgentHealth(AgentHealth && value)201     inline AgentPreview& WithAgentHealth(AgentHealth&& value) { SetAgentHealth(std::move(value)); return *this;}
202 
203 
204     /**
205      * <p>The version of the Amazon Inspector Agent.</p>
206      */
GetAgentVersion()207     inline const Aws::String& GetAgentVersion() const{ return m_agentVersion; }
208 
209     /**
210      * <p>The version of the Amazon Inspector Agent.</p>
211      */
AgentVersionHasBeenSet()212     inline bool AgentVersionHasBeenSet() const { return m_agentVersionHasBeenSet; }
213 
214     /**
215      * <p>The version of the Amazon Inspector Agent.</p>
216      */
SetAgentVersion(const Aws::String & value)217     inline void SetAgentVersion(const Aws::String& value) { m_agentVersionHasBeenSet = true; m_agentVersion = value; }
218 
219     /**
220      * <p>The version of the Amazon Inspector Agent.</p>
221      */
SetAgentVersion(Aws::String && value)222     inline void SetAgentVersion(Aws::String&& value) { m_agentVersionHasBeenSet = true; m_agentVersion = std::move(value); }
223 
224     /**
225      * <p>The version of the Amazon Inspector Agent.</p>
226      */
SetAgentVersion(const char * value)227     inline void SetAgentVersion(const char* value) { m_agentVersionHasBeenSet = true; m_agentVersion.assign(value); }
228 
229     /**
230      * <p>The version of the Amazon Inspector Agent.</p>
231      */
WithAgentVersion(const Aws::String & value)232     inline AgentPreview& WithAgentVersion(const Aws::String& value) { SetAgentVersion(value); return *this;}
233 
234     /**
235      * <p>The version of the Amazon Inspector Agent.</p>
236      */
WithAgentVersion(Aws::String && value)237     inline AgentPreview& WithAgentVersion(Aws::String&& value) { SetAgentVersion(std::move(value)); return *this;}
238 
239     /**
240      * <p>The version of the Amazon Inspector Agent.</p>
241      */
WithAgentVersion(const char * value)242     inline AgentPreview& WithAgentVersion(const char* value) { SetAgentVersion(value); return *this;}
243 
244 
245     /**
246      * <p>The operating system running on the EC2 instance on which the Amazon
247      * Inspector Agent is installed.</p>
248      */
GetOperatingSystem()249     inline const Aws::String& GetOperatingSystem() const{ return m_operatingSystem; }
250 
251     /**
252      * <p>The operating system running on the EC2 instance on which the Amazon
253      * Inspector Agent is installed.</p>
254      */
OperatingSystemHasBeenSet()255     inline bool OperatingSystemHasBeenSet() const { return m_operatingSystemHasBeenSet; }
256 
257     /**
258      * <p>The operating system running on the EC2 instance on which the Amazon
259      * Inspector Agent is installed.</p>
260      */
SetOperatingSystem(const Aws::String & value)261     inline void SetOperatingSystem(const Aws::String& value) { m_operatingSystemHasBeenSet = true; m_operatingSystem = value; }
262 
263     /**
264      * <p>The operating system running on the EC2 instance on which the Amazon
265      * Inspector Agent is installed.</p>
266      */
SetOperatingSystem(Aws::String && value)267     inline void SetOperatingSystem(Aws::String&& value) { m_operatingSystemHasBeenSet = true; m_operatingSystem = std::move(value); }
268 
269     /**
270      * <p>The operating system running on the EC2 instance on which the Amazon
271      * Inspector Agent is installed.</p>
272      */
SetOperatingSystem(const char * value)273     inline void SetOperatingSystem(const char* value) { m_operatingSystemHasBeenSet = true; m_operatingSystem.assign(value); }
274 
275     /**
276      * <p>The operating system running on the EC2 instance on which the Amazon
277      * Inspector Agent is installed.</p>
278      */
WithOperatingSystem(const Aws::String & value)279     inline AgentPreview& WithOperatingSystem(const Aws::String& value) { SetOperatingSystem(value); return *this;}
280 
281     /**
282      * <p>The operating system running on the EC2 instance on which the Amazon
283      * Inspector Agent is installed.</p>
284      */
WithOperatingSystem(Aws::String && value)285     inline AgentPreview& WithOperatingSystem(Aws::String&& value) { SetOperatingSystem(std::move(value)); return *this;}
286 
287     /**
288      * <p>The operating system running on the EC2 instance on which the Amazon
289      * Inspector Agent is installed.</p>
290      */
WithOperatingSystem(const char * value)291     inline AgentPreview& WithOperatingSystem(const char* value) { SetOperatingSystem(value); return *this;}
292 
293 
294     /**
295      * <p>The kernel version of the operating system running on the EC2 instance on
296      * which the Amazon Inspector Agent is installed.</p>
297      */
GetKernelVersion()298     inline const Aws::String& GetKernelVersion() const{ return m_kernelVersion; }
299 
300     /**
301      * <p>The kernel version of the operating system running on the EC2 instance on
302      * which the Amazon Inspector Agent is installed.</p>
303      */
KernelVersionHasBeenSet()304     inline bool KernelVersionHasBeenSet() const { return m_kernelVersionHasBeenSet; }
305 
306     /**
307      * <p>The kernel version of the operating system running on the EC2 instance on
308      * which the Amazon Inspector Agent is installed.</p>
309      */
SetKernelVersion(const Aws::String & value)310     inline void SetKernelVersion(const Aws::String& value) { m_kernelVersionHasBeenSet = true; m_kernelVersion = value; }
311 
312     /**
313      * <p>The kernel version of the operating system running on the EC2 instance on
314      * which the Amazon Inspector Agent is installed.</p>
315      */
SetKernelVersion(Aws::String && value)316     inline void SetKernelVersion(Aws::String&& value) { m_kernelVersionHasBeenSet = true; m_kernelVersion = std::move(value); }
317 
318     /**
319      * <p>The kernel version of the operating system running on the EC2 instance on
320      * which the Amazon Inspector Agent is installed.</p>
321      */
SetKernelVersion(const char * value)322     inline void SetKernelVersion(const char* value) { m_kernelVersionHasBeenSet = true; m_kernelVersion.assign(value); }
323 
324     /**
325      * <p>The kernel version of the operating system running on the EC2 instance on
326      * which the Amazon Inspector Agent is installed.</p>
327      */
WithKernelVersion(const Aws::String & value)328     inline AgentPreview& WithKernelVersion(const Aws::String& value) { SetKernelVersion(value); return *this;}
329 
330     /**
331      * <p>The kernel version of the operating system running on the EC2 instance on
332      * which the Amazon Inspector Agent is installed.</p>
333      */
WithKernelVersion(Aws::String && value)334     inline AgentPreview& WithKernelVersion(Aws::String&& value) { SetKernelVersion(std::move(value)); return *this;}
335 
336     /**
337      * <p>The kernel version of the operating system running on the EC2 instance on
338      * which the Amazon Inspector Agent is installed.</p>
339      */
WithKernelVersion(const char * value)340     inline AgentPreview& WithKernelVersion(const char* value) { SetKernelVersion(value); return *this;}
341 
342 
343     /**
344      * <p>The IP address of the EC2 instance on which the Amazon Inspector Agent is
345      * installed.</p>
346      */
GetIpv4Address()347     inline const Aws::String& GetIpv4Address() const{ return m_ipv4Address; }
348 
349     /**
350      * <p>The IP address of the EC2 instance on which the Amazon Inspector Agent is
351      * installed.</p>
352      */
Ipv4AddressHasBeenSet()353     inline bool Ipv4AddressHasBeenSet() const { return m_ipv4AddressHasBeenSet; }
354 
355     /**
356      * <p>The IP address of the EC2 instance on which the Amazon Inspector Agent is
357      * installed.</p>
358      */
SetIpv4Address(const Aws::String & value)359     inline void SetIpv4Address(const Aws::String& value) { m_ipv4AddressHasBeenSet = true; m_ipv4Address = value; }
360 
361     /**
362      * <p>The IP address of the EC2 instance on which the Amazon Inspector Agent is
363      * installed.</p>
364      */
SetIpv4Address(Aws::String && value)365     inline void SetIpv4Address(Aws::String&& value) { m_ipv4AddressHasBeenSet = true; m_ipv4Address = std::move(value); }
366 
367     /**
368      * <p>The IP address of the EC2 instance on which the Amazon Inspector Agent is
369      * installed.</p>
370      */
SetIpv4Address(const char * value)371     inline void SetIpv4Address(const char* value) { m_ipv4AddressHasBeenSet = true; m_ipv4Address.assign(value); }
372 
373     /**
374      * <p>The IP address of the EC2 instance on which the Amazon Inspector Agent is
375      * installed.</p>
376      */
WithIpv4Address(const Aws::String & value)377     inline AgentPreview& WithIpv4Address(const Aws::String& value) { SetIpv4Address(value); return *this;}
378 
379     /**
380      * <p>The IP address of the EC2 instance on which the Amazon Inspector Agent is
381      * installed.</p>
382      */
WithIpv4Address(Aws::String && value)383     inline AgentPreview& WithIpv4Address(Aws::String&& value) { SetIpv4Address(std::move(value)); return *this;}
384 
385     /**
386      * <p>The IP address of the EC2 instance on which the Amazon Inspector Agent is
387      * installed.</p>
388      */
WithIpv4Address(const char * value)389     inline AgentPreview& WithIpv4Address(const char* value) { SetIpv4Address(value); return *this;}
390 
391   private:
392 
393     Aws::String m_hostname;
394     bool m_hostnameHasBeenSet;
395 
396     Aws::String m_agentId;
397     bool m_agentIdHasBeenSet;
398 
399     Aws::String m_autoScalingGroup;
400     bool m_autoScalingGroupHasBeenSet;
401 
402     AgentHealth m_agentHealth;
403     bool m_agentHealthHasBeenSet;
404 
405     Aws::String m_agentVersion;
406     bool m_agentVersionHasBeenSet;
407 
408     Aws::String m_operatingSystem;
409     bool m_operatingSystemHasBeenSet;
410 
411     Aws::String m_kernelVersion;
412     bool m_kernelVersionHasBeenSet;
413 
414     Aws::String m_ipv4Address;
415     bool m_ipv4AddressHasBeenSet;
416   };
417 
418 } // namespace Model
419 } // namespace Inspector
420 } // namespace Aws
421