AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
AwsRoute53HostedZoneDetails.h
1
6#pragma once
7#include <aws/securityhub/SecurityHub_EXPORTS.h>
8#include <aws/securityhub/model/AwsRoute53HostedZoneObjectDetails.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/securityhub/model/AwsRoute53QueryLoggingConfigDetails.h>
11#include <aws/securityhub/model/AwsRoute53HostedZoneVpcDetails.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Json
20{
21 class JsonValue;
22 class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace SecurityHub
26{
27namespace Model
28{
29
39 {
40 public:
41 AWS_SECURITYHUB_API AwsRoute53HostedZoneDetails() = default;
44 AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const;
45
46
48
51 inline const AwsRoute53HostedZoneObjectDetails& GetHostedZone() const { return m_hostedZone; }
52 inline bool HostedZoneHasBeenSet() const { return m_hostedZoneHasBeenSet; }
53 template<typename HostedZoneT = AwsRoute53HostedZoneObjectDetails>
54 void SetHostedZone(HostedZoneT&& value) { m_hostedZoneHasBeenSet = true; m_hostedZone = std::forward<HostedZoneT>(value); }
55 template<typename HostedZoneT = AwsRoute53HostedZoneObjectDetails>
56 AwsRoute53HostedZoneDetails& WithHostedZone(HostedZoneT&& value) { SetHostedZone(std::forward<HostedZoneT>(value)); return *this;}
58
60
64 inline const Aws::Vector<AwsRoute53HostedZoneVpcDetails>& GetVpcs() const { return m_vpcs; }
65 inline bool VpcsHasBeenSet() const { return m_vpcsHasBeenSet; }
66 template<typename VpcsT = Aws::Vector<AwsRoute53HostedZoneVpcDetails>>
67 void SetVpcs(VpcsT&& value) { m_vpcsHasBeenSet = true; m_vpcs = std::forward<VpcsT>(value); }
68 template<typename VpcsT = Aws::Vector<AwsRoute53HostedZoneVpcDetails>>
69 AwsRoute53HostedZoneDetails& WithVpcs(VpcsT&& value) { SetVpcs(std::forward<VpcsT>(value)); return *this;}
70 template<typename VpcsT = AwsRoute53HostedZoneVpcDetails>
71 AwsRoute53HostedZoneDetails& AddVpcs(VpcsT&& value) { m_vpcsHasBeenSet = true; m_vpcs.emplace_back(std::forward<VpcsT>(value)); return *this; }
73
75
79 inline const Aws::Vector<Aws::String>& GetNameServers() const { return m_nameServers; }
80 inline bool NameServersHasBeenSet() const { return m_nameServersHasBeenSet; }
81 template<typename NameServersT = Aws::Vector<Aws::String>>
82 void SetNameServers(NameServersT&& value) { m_nameServersHasBeenSet = true; m_nameServers = std::forward<NameServersT>(value); }
83 template<typename NameServersT = Aws::Vector<Aws::String>>
84 AwsRoute53HostedZoneDetails& WithNameServers(NameServersT&& value) { SetNameServers(std::forward<NameServersT>(value)); return *this;}
85 template<typename NameServersT = Aws::String>
86 AwsRoute53HostedZoneDetails& AddNameServers(NameServersT&& value) { m_nameServersHasBeenSet = true; m_nameServers.emplace_back(std::forward<NameServersT>(value)); return *this; }
88
90
95 inline const AwsRoute53QueryLoggingConfigDetails& GetQueryLoggingConfig() const { return m_queryLoggingConfig; }
96 inline bool QueryLoggingConfigHasBeenSet() const { return m_queryLoggingConfigHasBeenSet; }
97 template<typename QueryLoggingConfigT = AwsRoute53QueryLoggingConfigDetails>
98 void SetQueryLoggingConfig(QueryLoggingConfigT&& value) { m_queryLoggingConfigHasBeenSet = true; m_queryLoggingConfig = std::forward<QueryLoggingConfigT>(value); }
99 template<typename QueryLoggingConfigT = AwsRoute53QueryLoggingConfigDetails>
100 AwsRoute53HostedZoneDetails& WithQueryLoggingConfig(QueryLoggingConfigT&& value) { SetQueryLoggingConfig(std::forward<QueryLoggingConfigT>(value)); return *this;}
102 private:
103
105 bool m_hostedZoneHasBeenSet = false;
106
108 bool m_vpcsHasBeenSet = false;
109
110 Aws::Vector<Aws::String> m_nameServers;
111 bool m_nameServersHasBeenSet = false;
112
113 AwsRoute53QueryLoggingConfigDetails m_queryLoggingConfig;
114 bool m_queryLoggingConfigHasBeenSet = false;
115 };
116
117} // namespace Model
118} // namespace SecurityHub
119} // namespace Aws
AwsRoute53HostedZoneDetails & WithNameServers(NameServersT &&value)
AwsRoute53HostedZoneDetails & WithVpcs(VpcsT &&value)
const AwsRoute53QueryLoggingConfigDetails & GetQueryLoggingConfig() const
const Aws::Vector< AwsRoute53HostedZoneVpcDetails > & GetVpcs() const
AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const
AwsRoute53HostedZoneDetails & WithQueryLoggingConfig(QueryLoggingConfigT &&value)
AWS_SECURITYHUB_API AwsRoute53HostedZoneDetails(Aws::Utils::Json::JsonView jsonValue)
AwsRoute53HostedZoneDetails & WithHostedZone(HostedZoneT &&value)
AwsRoute53HostedZoneDetails & AddVpcs(VpcsT &&value)
AwsRoute53HostedZoneDetails & AddNameServers(NameServersT &&value)
AWS_SECURITYHUB_API AwsRoute53HostedZoneDetails()=default
AWS_SECURITYHUB_API AwsRoute53HostedZoneDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< Aws::String > & GetNameServers() const
const AwsRoute53HostedZoneObjectDetails & GetHostedZone() const
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue