AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
Endpoint.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/redshift-serverless/RedshiftServerless_EXPORTS.h>
10#include <aws/redshift-serverless/model/VpcEndpoint.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace RedshiftServerless {
22namespace Model {
23
29class Endpoint {
30 public:
31 AWS_REDSHIFTSERVERLESS_API Endpoint() = default;
32 AWS_REDSHIFTSERVERLESS_API Endpoint(Aws::Utils::Json::JsonView jsonValue);
33 AWS_REDSHIFTSERVERLESS_API Endpoint& operator=(Aws::Utils::Json::JsonView jsonValue);
34 AWS_REDSHIFTSERVERLESS_API Aws::Utils::Json::JsonValue Jsonize() const;
35
37
40 inline const Aws::String& GetAddress() const { return m_address; }
41 inline bool AddressHasBeenSet() const { return m_addressHasBeenSet; }
42 template <typename AddressT = Aws::String>
43 void SetAddress(AddressT&& value) {
44 m_addressHasBeenSet = true;
45 m_address = std::forward<AddressT>(value);
46 }
47 template <typename AddressT = Aws::String>
48 Endpoint& WithAddress(AddressT&& value) {
49 SetAddress(std::forward<AddressT>(value));
50 return *this;
51 }
53
55
58 inline int GetPort() const { return m_port; }
59 inline bool PortHasBeenSet() const { return m_portHasBeenSet; }
60 inline void SetPort(int value) {
61 m_portHasBeenSet = true;
62 m_port = value;
63 }
64 inline Endpoint& WithPort(int value) {
65 SetPort(value);
66 return *this;
67 }
69
71
74 inline const Aws::Vector<VpcEndpoint>& GetVpcEndpoints() const { return m_vpcEndpoints; }
75 inline bool VpcEndpointsHasBeenSet() const { return m_vpcEndpointsHasBeenSet; }
76 template <typename VpcEndpointsT = Aws::Vector<VpcEndpoint>>
77 void SetVpcEndpoints(VpcEndpointsT&& value) {
78 m_vpcEndpointsHasBeenSet = true;
79 m_vpcEndpoints = std::forward<VpcEndpointsT>(value);
80 }
81 template <typename VpcEndpointsT = Aws::Vector<VpcEndpoint>>
82 Endpoint& WithVpcEndpoints(VpcEndpointsT&& value) {
83 SetVpcEndpoints(std::forward<VpcEndpointsT>(value));
84 return *this;
85 }
86 template <typename VpcEndpointsT = VpcEndpoint>
87 Endpoint& AddVpcEndpoints(VpcEndpointsT&& value) {
88 m_vpcEndpointsHasBeenSet = true;
89 m_vpcEndpoints.emplace_back(std::forward<VpcEndpointsT>(value));
90 return *this;
91 }
93 private:
94 Aws::String m_address;
95
96 int m_port{0};
97
98 Aws::Vector<VpcEndpoint> m_vpcEndpoints;
99 bool m_addressHasBeenSet = false;
100 bool m_portHasBeenSet = false;
101 bool m_vpcEndpointsHasBeenSet = false;
102};
103
104} // namespace Model
105} // namespace RedshiftServerless
106} // namespace Aws
Endpoint & WithAddress(AddressT &&value)
Definition Endpoint.h:48
const Aws::Vector< VpcEndpoint > & GetVpcEndpoints() const
Definition Endpoint.h:74
const Aws::String & GetAddress() const
Definition Endpoint.h:40
void SetVpcEndpoints(VpcEndpointsT &&value)
Definition Endpoint.h:77
void SetAddress(AddressT &&value)
Definition Endpoint.h:43
Endpoint & WithVpcEndpoints(VpcEndpointsT &&value)
Definition Endpoint.h:82
AWS_REDSHIFTSERVERLESS_API Endpoint()=default
AWS_REDSHIFTSERVERLESS_API Endpoint(Aws::Utils::Json::JsonView jsonValue)
Endpoint & AddVpcEndpoints(VpcEndpointsT &&value)
Definition Endpoint.h:87
AWS_REDSHIFTSERVERLESS_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_REDSHIFTSERVERLESS_API Endpoint & operator=(Aws::Utils::Json::JsonView jsonValue)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue