AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
Action.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/dlm/DLM_EXPORTS.h>
10#include <aws/dlm/model/CrossRegionCopyAction.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace DLM {
22namespace Model {
23
30class Action {
31 public:
32 AWS_DLM_API Action() = default;
33 AWS_DLM_API Action(Aws::Utils::Json::JsonView jsonValue);
36
38
41 inline const Aws::String& GetName() const { return m_name; }
42 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
43 template <typename NameT = Aws::String>
44 void SetName(NameT&& value) {
45 m_nameHasBeenSet = true;
46 m_name = std::forward<NameT>(value);
47 }
48 template <typename NameT = Aws::String>
49 Action& WithName(NameT&& value) {
50 SetName(std::forward<NameT>(value));
51 return *this;
52 }
54
56
59 inline const Aws::Vector<CrossRegionCopyAction>& GetCrossRegionCopy() const { return m_crossRegionCopy; }
60 inline bool CrossRegionCopyHasBeenSet() const { return m_crossRegionCopyHasBeenSet; }
61 template <typename CrossRegionCopyT = Aws::Vector<CrossRegionCopyAction>>
62 void SetCrossRegionCopy(CrossRegionCopyT&& value) {
63 m_crossRegionCopyHasBeenSet = true;
64 m_crossRegionCopy = std::forward<CrossRegionCopyT>(value);
65 }
66 template <typename CrossRegionCopyT = Aws::Vector<CrossRegionCopyAction>>
67 Action& WithCrossRegionCopy(CrossRegionCopyT&& value) {
68 SetCrossRegionCopy(std::forward<CrossRegionCopyT>(value));
69 return *this;
70 }
71 template <typename CrossRegionCopyT = CrossRegionCopyAction>
72 Action& AddCrossRegionCopy(CrossRegionCopyT&& value) {
73 m_crossRegionCopyHasBeenSet = true;
74 m_crossRegionCopy.emplace_back(std::forward<CrossRegionCopyT>(value));
75 return *this;
76 }
78 private:
79 Aws::String m_name;
80
81 Aws::Vector<CrossRegionCopyAction> m_crossRegionCopy;
82 bool m_nameHasBeenSet = false;
83 bool m_crossRegionCopyHasBeenSet = false;
84};
85
86} // namespace Model
87} // namespace DLM
88} // namespace Aws
const Aws::Vector< CrossRegionCopyAction > & GetCrossRegionCopy() const
Definition Action.h:59
bool NameHasBeenSet() const
Definition Action.h:42
void SetCrossRegionCopy(CrossRegionCopyT &&value)
Definition Action.h:62
Action & WithCrossRegionCopy(CrossRegionCopyT &&value)
Definition Action.h:67
AWS_DLM_API Aws::Utils::Json::JsonValue Jsonize() const
Action & WithName(NameT &&value)
Definition Action.h:49
bool CrossRegionCopyHasBeenSet() const
Definition Action.h:60
AWS_DLM_API Action & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetName(NameT &&value)
Definition Action.h:44
const Aws::String & GetName() const
Definition Action.h:41
Action & AddCrossRegionCopy(CrossRegionCopyT &&value)
Definition Action.h:72
AWS_DLM_API Action(Aws::Utils::Json::JsonView jsonValue)
AWS_DLM_API Action()=default
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue