AWS SDK for C++

AWS SDK for C++ Version 1.11.906

Loading...
Searching...
No Matches
MediaConcurrency.h
1
6#pragma once
7#include <aws/connect/Connect_EXPORTS.h>
8#include <aws/connect/model/Channel.h>
9#include <aws/connect/model/CrossChannelBehavior.h>
10#include <aws/connect/model/WorkloadTypeConcurrency.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace Connect {
23namespace Model {
24
33 public:
34 AWS_CONNECT_API MediaConcurrency() = default;
35 AWS_CONNECT_API MediaConcurrency(Aws::Utils::Json::JsonView jsonValue);
37 AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
43 inline Channel GetChannel() const { return m_channel; }
44 inline bool ChannelHasBeenSet() const { return m_channelHasBeenSet; }
45 inline void SetChannel(Channel value) {
46 m_channelHasBeenSet = true;
47 m_channel = value;
48 }
50 SetChannel(value);
51 return *this;
52 }
54
56
63 inline int GetConcurrency() const { return m_concurrency; }
64 inline bool ConcurrencyHasBeenSet() const { return m_concurrencyHasBeenSet; }
65 inline void SetConcurrency(int value) {
66 m_concurrencyHasBeenSet = true;
67 m_concurrency = value;
68 }
69 inline MediaConcurrency& WithConcurrency(int value) {
70 SetConcurrency(value);
71 return *this;
72 }
74
76
82 inline const CrossChannelBehavior& GetCrossChannelBehavior() const { return m_crossChannelBehavior; }
83 inline bool CrossChannelBehaviorHasBeenSet() const { return m_crossChannelBehaviorHasBeenSet; }
84 template <typename CrossChannelBehaviorT = CrossChannelBehavior>
85 void SetCrossChannelBehavior(CrossChannelBehaviorT&& value) {
86 m_crossChannelBehaviorHasBeenSet = true;
87 m_crossChannelBehavior = std::forward<CrossChannelBehaviorT>(value);
88 }
89 template <typename CrossChannelBehaviorT = CrossChannelBehavior>
90 MediaConcurrency& WithCrossChannelBehavior(CrossChannelBehaviorT&& value) {
91 SetCrossChannelBehavior(std::forward<CrossChannelBehaviorT>(value));
92 return *this;
93 }
95
97
102 inline const Aws::Vector<WorkloadTypeConcurrency>& GetWorkloadTypeConcurrencies() const { return m_workloadTypeConcurrencies; }
103 inline bool WorkloadTypeConcurrenciesHasBeenSet() const { return m_workloadTypeConcurrenciesHasBeenSet; }
104 template <typename WorkloadTypeConcurrenciesT = Aws::Vector<WorkloadTypeConcurrency>>
105 void SetWorkloadTypeConcurrencies(WorkloadTypeConcurrenciesT&& value) {
106 m_workloadTypeConcurrenciesHasBeenSet = true;
107 m_workloadTypeConcurrencies = std::forward<WorkloadTypeConcurrenciesT>(value);
108 }
109 template <typename WorkloadTypeConcurrenciesT = Aws::Vector<WorkloadTypeConcurrency>>
110 MediaConcurrency& WithWorkloadTypeConcurrencies(WorkloadTypeConcurrenciesT&& value) {
111 SetWorkloadTypeConcurrencies(std::forward<WorkloadTypeConcurrenciesT>(value));
112 return *this;
113 }
114 template <typename WorkloadTypeConcurrenciesT = WorkloadTypeConcurrency>
115 MediaConcurrency& AddWorkloadTypeConcurrencies(WorkloadTypeConcurrenciesT&& value) {
116 m_workloadTypeConcurrenciesHasBeenSet = true;
117 m_workloadTypeConcurrencies.emplace_back(std::forward<WorkloadTypeConcurrenciesT>(value));
118 return *this;
119 }
121 private:
122 Channel m_channel{Channel::NOT_SET};
123
124 int m_concurrency{0};
125
126 CrossChannelBehavior m_crossChannelBehavior;
127
128 Aws::Vector<WorkloadTypeConcurrency> m_workloadTypeConcurrencies;
129 bool m_channelHasBeenSet = false;
130 bool m_concurrencyHasBeenSet = false;
131 bool m_crossChannelBehaviorHasBeenSet = false;
132 bool m_workloadTypeConcurrenciesHasBeenSet = false;
133};
134
135} // namespace Model
136} // namespace Connect
137} // namespace Aws
AWS_CONNECT_API MediaConcurrency()=default
const CrossChannelBehavior & GetCrossChannelBehavior() const
AWS_CONNECT_API MediaConcurrency & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< WorkloadTypeConcurrency > & GetWorkloadTypeConcurrencies() const
void SetWorkloadTypeConcurrencies(WorkloadTypeConcurrenciesT &&value)
MediaConcurrency & WithConcurrency(int value)
void SetCrossChannelBehavior(CrossChannelBehaviorT &&value)
MediaConcurrency & WithChannel(Channel value)
AWS_CONNECT_API MediaConcurrency(Aws::Utils::Json::JsonView jsonValue)
MediaConcurrency & WithWorkloadTypeConcurrencies(WorkloadTypeConcurrenciesT &&value)
MediaConcurrency & AddWorkloadTypeConcurrencies(WorkloadTypeConcurrenciesT &&value)
MediaConcurrency & WithCrossChannelBehavior(CrossChannelBehaviorT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue