AWS SDK for C++

AWS SDK for C++ Version 1.11.894

Loading...
Searching...
No Matches
AvailableBillingMode.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/directconnect/DirectConnect_EXPORTS.h>
10#include <aws/directconnect/model/BillingMode.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace DirectConnect {
22namespace Model {
23
31 public:
32 AWS_DIRECTCONNECT_API AvailableBillingMode() = default;
33 AWS_DIRECTCONNECT_API AvailableBillingMode(Aws::Utils::Json::JsonView jsonValue);
35 AWS_DIRECTCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
41 inline BillingMode GetBillingMode() const { return m_billingMode; }
42 inline bool BillingModeHasBeenSet() const { return m_billingModeHasBeenSet; }
43 inline void SetBillingMode(BillingMode value) {
44 m_billingModeHasBeenSet = true;
45 m_billingMode = value;
46 }
48 SetBillingMode(value);
49 return *this;
50 }
52
54
57 inline const Aws::Vector<Aws::String>& GetAvailablePortSpeeds() const { return m_availablePortSpeeds; }
58 inline bool AvailablePortSpeedsHasBeenSet() const { return m_availablePortSpeedsHasBeenSet; }
59 template <typename AvailablePortSpeedsT = Aws::Vector<Aws::String>>
60 void SetAvailablePortSpeeds(AvailablePortSpeedsT&& value) {
61 m_availablePortSpeedsHasBeenSet = true;
62 m_availablePortSpeeds = std::forward<AvailablePortSpeedsT>(value);
63 }
64 template <typename AvailablePortSpeedsT = Aws::Vector<Aws::String>>
65 AvailableBillingMode& WithAvailablePortSpeeds(AvailablePortSpeedsT&& value) {
66 SetAvailablePortSpeeds(std::forward<AvailablePortSpeedsT>(value));
67 return *this;
68 }
69 template <typename AvailablePortSpeedsT = Aws::String>
70 AvailableBillingMode& AddAvailablePortSpeeds(AvailablePortSpeedsT&& value) {
71 m_availablePortSpeedsHasBeenSet = true;
72 m_availablePortSpeeds.emplace_back(std::forward<AvailablePortSpeedsT>(value));
73 return *this;
74 }
76
78
81 inline const Aws::Vector<Aws::String>& GetIncludedRegions() const { return m_includedRegions; }
82 inline bool IncludedRegionsHasBeenSet() const { return m_includedRegionsHasBeenSet; }
83 template <typename IncludedRegionsT = Aws::Vector<Aws::String>>
84 void SetIncludedRegions(IncludedRegionsT&& value) {
85 m_includedRegionsHasBeenSet = true;
86 m_includedRegions = std::forward<IncludedRegionsT>(value);
87 }
88 template <typename IncludedRegionsT = Aws::Vector<Aws::String>>
89 AvailableBillingMode& WithIncludedRegions(IncludedRegionsT&& value) {
90 SetIncludedRegions(std::forward<IncludedRegionsT>(value));
91 return *this;
92 }
93 template <typename IncludedRegionsT = Aws::String>
94 AvailableBillingMode& AddIncludedRegions(IncludedRegionsT&& value) {
95 m_includedRegionsHasBeenSet = true;
96 m_includedRegions.emplace_back(std::forward<IncludedRegionsT>(value));
97 return *this;
98 }
100 private:
101 BillingMode m_billingMode{BillingMode::NOT_SET};
102
103 Aws::Vector<Aws::String> m_availablePortSpeeds;
104
105 Aws::Vector<Aws::String> m_includedRegions;
106 bool m_billingModeHasBeenSet = false;
107 bool m_availablePortSpeedsHasBeenSet = false;
108 bool m_includedRegionsHasBeenSet = false;
109};
110
111} // namespace Model
112} // namespace DirectConnect
113} // namespace Aws
AWS_DIRECTCONNECT_API AvailableBillingMode()=default
AWS_DIRECTCONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< Aws::String > & GetAvailablePortSpeeds() const
AvailableBillingMode & WithBillingMode(BillingMode value)
void SetAvailablePortSpeeds(AvailablePortSpeedsT &&value)
AvailableBillingMode & WithAvailablePortSpeeds(AvailablePortSpeedsT &&value)
AvailableBillingMode & AddIncludedRegions(IncludedRegionsT &&value)
const Aws::Vector< Aws::String > & GetIncludedRegions() const
AWS_DIRECTCONNECT_API AvailableBillingMode(Aws::Utils::Json::JsonView jsonValue)
AvailableBillingMode & WithIncludedRegions(IncludedRegionsT &&value)
AWS_DIRECTCONNECT_API AvailableBillingMode & operator=(Aws::Utils::Json::JsonView jsonValue)
AvailableBillingMode & AddAvailablePortSpeeds(AvailablePortSpeedsT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue