AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
DnsConfig.h
1
6#pragma once
7#include <aws/servicediscovery/ServiceDiscovery_EXPORTS.h>
8#include <aws/servicediscovery/model/RoutingPolicy.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/servicediscovery/model/DnsRecord.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 ServiceDiscovery
24{
25namespace Model
26{
27
36 {
37 public:
38 AWS_SERVICEDISCOVERY_API DnsConfig() = default;
39 AWS_SERVICEDISCOVERY_API DnsConfig(Aws::Utils::Json::JsonView jsonValue);
40 AWS_SERVICEDISCOVERY_API DnsConfig& operator=(Aws::Utils::Json::JsonView jsonValue);
41 AWS_SERVICEDISCOVERY_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
78 inline RoutingPolicy GetRoutingPolicy() const { return m_routingPolicy; }
79 inline bool RoutingPolicyHasBeenSet() const { return m_routingPolicyHasBeenSet; }
80 inline void SetRoutingPolicy(RoutingPolicy value) { m_routingPolicyHasBeenSet = true; m_routingPolicy = value; }
81 inline DnsConfig& WithRoutingPolicy(RoutingPolicy value) { SetRoutingPolicy(value); return *this;}
83
85
93 inline const Aws::Vector<DnsRecord>& GetDnsRecords() const { return m_dnsRecords; }
94 inline bool DnsRecordsHasBeenSet() const { return m_dnsRecordsHasBeenSet; }
95 template<typename DnsRecordsT = Aws::Vector<DnsRecord>>
96 void SetDnsRecords(DnsRecordsT&& value) { m_dnsRecordsHasBeenSet = true; m_dnsRecords = std::forward<DnsRecordsT>(value); }
97 template<typename DnsRecordsT = Aws::Vector<DnsRecord>>
98 DnsConfig& WithDnsRecords(DnsRecordsT&& value) { SetDnsRecords(std::forward<DnsRecordsT>(value)); return *this;}
99 template<typename DnsRecordsT = DnsRecord>
100 DnsConfig& AddDnsRecords(DnsRecordsT&& value) { m_dnsRecordsHasBeenSet = true; m_dnsRecords.emplace_back(std::forward<DnsRecordsT>(value)); return *this; }
102 private:
103
104 RoutingPolicy m_routingPolicy{RoutingPolicy::NOT_SET};
105 bool m_routingPolicyHasBeenSet = false;
106
107 Aws::Vector<DnsRecord> m_dnsRecords;
108 bool m_dnsRecordsHasBeenSet = false;
109 };
110
111} // namespace Model
112} // namespace ServiceDiscovery
113} // namespace Aws
AWS_SERVICEDISCOVERY_API DnsConfig(Aws::Utils::Json::JsonView jsonValue)
DnsConfig & WithRoutingPolicy(RoutingPolicy value)
Definition DnsConfig.h:81
AWS_SERVICEDISCOVERY_API DnsConfig()=default
AWS_SERVICEDISCOVERY_API DnsConfig & operator=(Aws::Utils::Json::JsonView jsonValue)
DnsConfig & AddDnsRecords(DnsRecordsT &&value)
Definition DnsConfig.h:100
void SetRoutingPolicy(RoutingPolicy value)
Definition DnsConfig.h:80
DnsConfig & WithDnsRecords(DnsRecordsT &&value)
Definition DnsConfig.h:98
AWS_SERVICEDISCOVERY_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< DnsRecord > & GetDnsRecords() const
Definition DnsConfig.h:93
void SetDnsRecords(DnsRecordsT &&value)
Definition DnsConfig.h:96
RoutingPolicy GetRoutingPolicy() const
Definition DnsConfig.h:78
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue