AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
ResourceConfigurationDefinition.h
1
6#pragma once
7#include <aws/vpc-lattice/VPCLattice_EXPORTS.h>
8#include <aws/vpc-lattice/model/ArnResource.h>
9#include <aws/vpc-lattice/model/DnsResource.h>
10#include <aws/vpc-lattice/model/IpResource.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 VPCLattice
24{
25namespace Model
26{
27
34 {
35 public:
36 AWS_VPCLATTICE_API ResourceConfigurationDefinition() = default;
39 AWS_VPCLATTICE_API Aws::Utils::Json::JsonValue Jsonize() const;
40
41
43
46 inline const ArnResource& GetArnResource() const { return m_arnResource; }
47 inline bool ArnResourceHasBeenSet() const { return m_arnResourceHasBeenSet; }
48 template<typename ArnResourceT = ArnResource>
49 void SetArnResource(ArnResourceT&& value) { m_arnResourceHasBeenSet = true; m_arnResource = std::forward<ArnResourceT>(value); }
50 template<typename ArnResourceT = ArnResource>
51 ResourceConfigurationDefinition& WithArnResource(ArnResourceT&& value) { SetArnResource(std::forward<ArnResourceT>(value)); return *this;}
53
55
58 inline const DnsResource& GetDnsResource() const { return m_dnsResource; }
59 inline bool DnsResourceHasBeenSet() const { return m_dnsResourceHasBeenSet; }
60 template<typename DnsResourceT = DnsResource>
61 void SetDnsResource(DnsResourceT&& value) { m_dnsResourceHasBeenSet = true; m_dnsResource = std::forward<DnsResourceT>(value); }
62 template<typename DnsResourceT = DnsResource>
63 ResourceConfigurationDefinition& WithDnsResource(DnsResourceT&& value) { SetDnsResource(std::forward<DnsResourceT>(value)); return *this;}
65
67
70 inline const IpResource& GetIpResource() const { return m_ipResource; }
71 inline bool IpResourceHasBeenSet() const { return m_ipResourceHasBeenSet; }
72 template<typename IpResourceT = IpResource>
73 void SetIpResource(IpResourceT&& value) { m_ipResourceHasBeenSet = true; m_ipResource = std::forward<IpResourceT>(value); }
74 template<typename IpResourceT = IpResource>
75 ResourceConfigurationDefinition& WithIpResource(IpResourceT&& value) { SetIpResource(std::forward<IpResourceT>(value)); return *this;}
77 private:
78
79 ArnResource m_arnResource;
80 bool m_arnResourceHasBeenSet = false;
81
82 DnsResource m_dnsResource;
83 bool m_dnsResourceHasBeenSet = false;
84
85 IpResource m_ipResource;
86 bool m_ipResourceHasBeenSet = false;
87 };
88
89} // namespace Model
90} // namespace VPCLattice
91} // namespace Aws
AWS_VPCLATTICE_API ResourceConfigurationDefinition & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_VPCLATTICE_API ResourceConfigurationDefinition()=default
AWS_VPCLATTICE_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_VPCLATTICE_API ResourceConfigurationDefinition(Aws::Utils::Json::JsonView jsonValue)
ResourceConfigurationDefinition & WithIpResource(IpResourceT &&value)
ResourceConfigurationDefinition & WithArnResource(ArnResourceT &&value)
ResourceConfigurationDefinition & WithDnsResource(DnsResourceT &&value)
Aws::Utils::Json::JsonValue JsonValue