AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
NetworkReachabilityDetails.h
1
6#pragma once
7#include <aws/inspector2/Inspector2_EXPORTS.h>
8#include <aws/inspector2/model/NetworkPath.h>
9#include <aws/inspector2/model/PortRange.h>
10#include <aws/inspector2/model/NetworkProtocol.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 Inspector2
24{
25namespace Model
26{
27
35 {
36 public:
37 AWS_INSPECTOR2_API NetworkReachabilityDetails() = default;
40 AWS_INSPECTOR2_API Aws::Utils::Json::JsonValue Jsonize() const;
41
42
44
48 inline const NetworkPath& GetNetworkPath() const { return m_networkPath; }
49 inline bool NetworkPathHasBeenSet() const { return m_networkPathHasBeenSet; }
50 template<typename NetworkPathT = NetworkPath>
51 void SetNetworkPath(NetworkPathT&& value) { m_networkPathHasBeenSet = true; m_networkPath = std::forward<NetworkPathT>(value); }
52 template<typename NetworkPathT = NetworkPath>
53 NetworkReachabilityDetails& WithNetworkPath(NetworkPathT&& value) { SetNetworkPath(std::forward<NetworkPathT>(value)); return *this;}
55
57
61 inline const PortRange& GetOpenPortRange() const { return m_openPortRange; }
62 inline bool OpenPortRangeHasBeenSet() const { return m_openPortRangeHasBeenSet; }
63 template<typename OpenPortRangeT = PortRange>
64 void SetOpenPortRange(OpenPortRangeT&& value) { m_openPortRangeHasBeenSet = true; m_openPortRange = std::forward<OpenPortRangeT>(value); }
65 template<typename OpenPortRangeT = PortRange>
66 NetworkReachabilityDetails& WithOpenPortRange(OpenPortRangeT&& value) { SetOpenPortRange(std::forward<OpenPortRangeT>(value)); return *this;}
68
70
73 inline NetworkProtocol GetProtocol() const { return m_protocol; }
74 inline bool ProtocolHasBeenSet() const { return m_protocolHasBeenSet; }
75 inline void SetProtocol(NetworkProtocol value) { m_protocolHasBeenSet = true; m_protocol = value; }
78 private:
79
80 NetworkPath m_networkPath;
81 bool m_networkPathHasBeenSet = false;
82
83 PortRange m_openPortRange;
84 bool m_openPortRangeHasBeenSet = false;
85
87 bool m_protocolHasBeenSet = false;
88 };
89
90} // namespace Model
91} // namespace Inspector2
92} // namespace Aws
AWS_INSPECTOR2_API NetworkReachabilityDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_INSPECTOR2_API Aws::Utils::Json::JsonValue Jsonize() const
NetworkReachabilityDetails & WithNetworkPath(NetworkPathT &&value)
AWS_INSPECTOR2_API NetworkReachabilityDetails(Aws::Utils::Json::JsonView jsonValue)
NetworkReachabilityDetails & WithProtocol(NetworkProtocol value)
NetworkReachabilityDetails & WithOpenPortRange(OpenPortRangeT &&value)
AWS_INSPECTOR2_API NetworkReachabilityDetails()=default
Aws::Utils::Json::JsonValue JsonValue