AWS SDK for C++

AWS SDK for C++ Version 1.11.769

Loading...
Searching...
No Matches
RouteToll.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/geo-routes/GeoRoutes_EXPORTS.h>
10#include <aws/geo-routes/model/RouteTollPaymentSite.h>
11#include <aws/geo-routes/model/RouteTollRate.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace GeoRoutes {
23namespace Model {
24
32class RouteToll {
33 public:
34 AWS_GEOROUTES_API RouteToll() = default;
35 AWS_GEOROUTES_API RouteToll(Aws::Utils::Json::JsonView jsonValue);
36 AWS_GEOROUTES_API RouteToll& operator=(Aws::Utils::Json::JsonView jsonValue);
37 AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
43 inline const Aws::String& GetCountry() const { return m_country; }
44 inline bool CountryHasBeenSet() const { return m_countryHasBeenSet; }
45 template <typename CountryT = Aws::String>
46 void SetCountry(CountryT&& value) {
47 m_countryHasBeenSet = true;
48 m_country = std::forward<CountryT>(value);
49 }
50 template <typename CountryT = Aws::String>
51 RouteToll& WithCountry(CountryT&& value) {
52 SetCountry(std::forward<CountryT>(value));
53 return *this;
54 }
56
58
61 inline const Aws::Vector<RouteTollPaymentSite>& GetPaymentSites() const { return m_paymentSites; }
62 inline bool PaymentSitesHasBeenSet() const { return m_paymentSitesHasBeenSet; }
63 template <typename PaymentSitesT = Aws::Vector<RouteTollPaymentSite>>
64 void SetPaymentSites(PaymentSitesT&& value) {
65 m_paymentSitesHasBeenSet = true;
66 m_paymentSites = std::forward<PaymentSitesT>(value);
67 }
68 template <typename PaymentSitesT = Aws::Vector<RouteTollPaymentSite>>
69 RouteToll& WithPaymentSites(PaymentSitesT&& value) {
70 SetPaymentSites(std::forward<PaymentSitesT>(value));
71 return *this;
72 }
73 template <typename PaymentSitesT = RouteTollPaymentSite>
74 RouteToll& AddPaymentSites(PaymentSitesT&& value) {
75 m_paymentSitesHasBeenSet = true;
76 m_paymentSites.emplace_back(std::forward<PaymentSitesT>(value));
77 return *this;
78 }
80
82
85 inline const Aws::Vector<RouteTollRate>& GetRates() const { return m_rates; }
86 inline bool RatesHasBeenSet() const { return m_ratesHasBeenSet; }
87 template <typename RatesT = Aws::Vector<RouteTollRate>>
88 void SetRates(RatesT&& value) {
89 m_ratesHasBeenSet = true;
90 m_rates = std::forward<RatesT>(value);
91 }
92 template <typename RatesT = Aws::Vector<RouteTollRate>>
93 RouteToll& WithRates(RatesT&& value) {
94 SetRates(std::forward<RatesT>(value));
95 return *this;
96 }
97 template <typename RatesT = RouteTollRate>
98 RouteToll& AddRates(RatesT&& value) {
99 m_ratesHasBeenSet = true;
100 m_rates.emplace_back(std::forward<RatesT>(value));
101 return *this;
102 }
104
106
109 inline const Aws::Vector<int>& GetSystems() const { return m_systems; }
110 inline bool SystemsHasBeenSet() const { return m_systemsHasBeenSet; }
111 template <typename SystemsT = Aws::Vector<int>>
112 void SetSystems(SystemsT&& value) {
113 m_systemsHasBeenSet = true;
114 m_systems = std::forward<SystemsT>(value);
115 }
116 template <typename SystemsT = Aws::Vector<int>>
117 RouteToll& WithSystems(SystemsT&& value) {
118 SetSystems(std::forward<SystemsT>(value));
119 return *this;
120 }
121 inline RouteToll& AddSystems(int value) {
122 m_systemsHasBeenSet = true;
123 m_systems.push_back(value);
124 return *this;
125 }
127 private:
128 Aws::String m_country;
129
131
133
134 Aws::Vector<int> m_systems;
135 bool m_countryHasBeenSet = false;
136 bool m_paymentSitesHasBeenSet = false;
137 bool m_ratesHasBeenSet = false;
138 bool m_systemsHasBeenSet = false;
139};
140
141} // namespace Model
142} // namespace GeoRoutes
143} // namespace Aws
RouteToll & AddRates(RatesT &&value)
Definition RouteToll.h:98
const Aws::String & GetCountry() const
Definition RouteToll.h:43
AWS_GEOROUTES_API RouteToll & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_GEOROUTES_API RouteToll(Aws::Utils::Json::JsonView jsonValue)
RouteToll & WithSystems(SystemsT &&value)
Definition RouteToll.h:117
RouteToll & WithPaymentSites(PaymentSitesT &&value)
Definition RouteToll.h:69
void SetPaymentSites(PaymentSitesT &&value)
Definition RouteToll.h:64
RouteToll & WithCountry(CountryT &&value)
Definition RouteToll.h:51
const Aws::Vector< RouteTollPaymentSite > & GetPaymentSites() const
Definition RouteToll.h:61
AWS_GEOROUTES_API RouteToll()=default
RouteToll & AddPaymentSites(PaymentSitesT &&value)
Definition RouteToll.h:74
void SetSystems(SystemsT &&value)
Definition RouteToll.h:112
void SetCountry(CountryT &&value)
Definition RouteToll.h:46
void SetRates(RatesT &&value)
Definition RouteToll.h:88
const Aws::Vector< int > & GetSystems() const
Definition RouteToll.h:109
AWS_GEOROUTES_API Aws::Utils::Json::JsonValue Jsonize() const
RouteToll & AddSystems(int value)
Definition RouteToll.h:121
const Aws::Vector< RouteTollRate > & GetRates() const
Definition RouteToll.h:85
RouteToll & WithRates(RatesT &&value)
Definition RouteToll.h:93
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue