AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
RoutingCriteria.h
1
6#pragma once
7#include <aws/connect/Connect_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/connect/model/Step.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 Connect
24{
25namespace Model
26{
27
34 {
35 public:
36 AWS_CONNECT_API RoutingCriteria() = default;
37 AWS_CONNECT_API RoutingCriteria(Aws::Utils::Json::JsonView jsonValue);
39 AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
40
41
43
50 inline const Aws::Vector<Step>& GetSteps() const { return m_steps; }
51 inline bool StepsHasBeenSet() const { return m_stepsHasBeenSet; }
52 template<typename StepsT = Aws::Vector<Step>>
53 void SetSteps(StepsT&& value) { m_stepsHasBeenSet = true; m_steps = std::forward<StepsT>(value); }
54 template<typename StepsT = Aws::Vector<Step>>
55 RoutingCriteria& WithSteps(StepsT&& value) { SetSteps(std::forward<StepsT>(value)); return *this;}
56 template<typename StepsT = Step>
57 RoutingCriteria& AddSteps(StepsT&& value) { m_stepsHasBeenSet = true; m_steps.emplace_back(std::forward<StepsT>(value)); return *this; }
59
61
67 inline const Aws::Utils::DateTime& GetActivationTimestamp() const { return m_activationTimestamp; }
68 inline bool ActivationTimestampHasBeenSet() const { return m_activationTimestampHasBeenSet; }
69 template<typename ActivationTimestampT = Aws::Utils::DateTime>
70 void SetActivationTimestamp(ActivationTimestampT&& value) { m_activationTimestampHasBeenSet = true; m_activationTimestamp = std::forward<ActivationTimestampT>(value); }
71 template<typename ActivationTimestampT = Aws::Utils::DateTime>
72 RoutingCriteria& WithActivationTimestamp(ActivationTimestampT&& value) { SetActivationTimestamp(std::forward<ActivationTimestampT>(value)); return *this;}
74
76
79 inline int GetIndex() const { return m_index; }
80 inline bool IndexHasBeenSet() const { return m_indexHasBeenSet; }
81 inline void SetIndex(int value) { m_indexHasBeenSet = true; m_index = value; }
82 inline RoutingCriteria& WithIndex(int value) { SetIndex(value); return *this;}
84 private:
85
86 Aws::Vector<Step> m_steps;
87 bool m_stepsHasBeenSet = false;
88
89 Aws::Utils::DateTime m_activationTimestamp{};
90 bool m_activationTimestampHasBeenSet = false;
91
92 int m_index{0};
93 bool m_indexHasBeenSet = false;
94 };
95
96} // namespace Model
97} // namespace Connect
98} // namespace Aws
AWS_CONNECT_API RoutingCriteria()=default
AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
void SetActivationTimestamp(ActivationTimestampT &&value)
RoutingCriteria & WithActivationTimestamp(ActivationTimestampT &&value)
RoutingCriteria & AddSteps(StepsT &&value)
RoutingCriteria & WithIndex(int value)
RoutingCriteria & WithSteps(StepsT &&value)
const Aws::Vector< Step > & GetSteps() const
AWS_CONNECT_API RoutingCriteria(Aws::Utils::Json::JsonView jsonValue)
const Aws::Utils::DateTime & GetActivationTimestamp() const
AWS_CONNECT_API RoutingCriteria & operator=(Aws::Utils::Json::JsonView jsonValue)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue