AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
SnapshotSchedule.h
1
6#pragma once
7#include <aws/redshift/Redshift_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/redshift/model/ResponseMetadata.h>
12#include <aws/redshift/model/Tag.h>
13#include <aws/core/utils/DateTime.h>
14#include <aws/redshift/model/ClusterAssociatedToSchedule.h>
15#include <utility>
16
17namespace Aws
18{
19namespace Utils
20{
21namespace Xml
22{
23 class XmlNode;
24} // namespace Xml
25} // namespace Utils
26namespace Redshift
27{
28namespace Model
29{
30
39 {
40 public:
41 AWS_REDSHIFT_API SnapshotSchedule() = default;
42 AWS_REDSHIFT_API SnapshotSchedule(const Aws::Utils::Xml::XmlNode& xmlNode);
43 AWS_REDSHIFT_API SnapshotSchedule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
44
45 AWS_REDSHIFT_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const;
46 AWS_REDSHIFT_API void OutputToStream(Aws::OStream& oStream, const char* location) const;
47
48
50
53 inline const Aws::Vector<Aws::String>& GetScheduleDefinitions() const { return m_scheduleDefinitions; }
54 inline bool ScheduleDefinitionsHasBeenSet() const { return m_scheduleDefinitionsHasBeenSet; }
55 template<typename ScheduleDefinitionsT = Aws::Vector<Aws::String>>
56 void SetScheduleDefinitions(ScheduleDefinitionsT&& value) { m_scheduleDefinitionsHasBeenSet = true; m_scheduleDefinitions = std::forward<ScheduleDefinitionsT>(value); }
57 template<typename ScheduleDefinitionsT = Aws::Vector<Aws::String>>
58 SnapshotSchedule& WithScheduleDefinitions(ScheduleDefinitionsT&& value) { SetScheduleDefinitions(std::forward<ScheduleDefinitionsT>(value)); return *this;}
59 template<typename ScheduleDefinitionsT = Aws::String>
60 SnapshotSchedule& AddScheduleDefinitions(ScheduleDefinitionsT&& value) { m_scheduleDefinitionsHasBeenSet = true; m_scheduleDefinitions.emplace_back(std::forward<ScheduleDefinitionsT>(value)); return *this; }
62
64
67 inline const Aws::String& GetScheduleIdentifier() const { return m_scheduleIdentifier; }
68 inline bool ScheduleIdentifierHasBeenSet() const { return m_scheduleIdentifierHasBeenSet; }
69 template<typename ScheduleIdentifierT = Aws::String>
70 void SetScheduleIdentifier(ScheduleIdentifierT&& value) { m_scheduleIdentifierHasBeenSet = true; m_scheduleIdentifier = std::forward<ScheduleIdentifierT>(value); }
71 template<typename ScheduleIdentifierT = Aws::String>
72 SnapshotSchedule& WithScheduleIdentifier(ScheduleIdentifierT&& value) { SetScheduleIdentifier(std::forward<ScheduleIdentifierT>(value)); return *this;}
74
76
79 inline const Aws::String& GetScheduleDescription() const { return m_scheduleDescription; }
80 inline bool ScheduleDescriptionHasBeenSet() const { return m_scheduleDescriptionHasBeenSet; }
81 template<typename ScheduleDescriptionT = Aws::String>
82 void SetScheduleDescription(ScheduleDescriptionT&& value) { m_scheduleDescriptionHasBeenSet = true; m_scheduleDescription = std::forward<ScheduleDescriptionT>(value); }
83 template<typename ScheduleDescriptionT = Aws::String>
84 SnapshotSchedule& WithScheduleDescription(ScheduleDescriptionT&& value) { SetScheduleDescription(std::forward<ScheduleDescriptionT>(value)); return *this;}
86
88
91 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
92 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
93 template<typename TagsT = Aws::Vector<Tag>>
94 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
95 template<typename TagsT = Aws::Vector<Tag>>
96 SnapshotSchedule& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
97 template<typename TagsT = Tag>
98 SnapshotSchedule& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
100
102
105 inline const Aws::Vector<Aws::Utils::DateTime>& GetNextInvocations() const { return m_nextInvocations; }
106 inline bool NextInvocationsHasBeenSet() const { return m_nextInvocationsHasBeenSet; }
107 template<typename NextInvocationsT = Aws::Vector<Aws::Utils::DateTime>>
108 void SetNextInvocations(NextInvocationsT&& value) { m_nextInvocationsHasBeenSet = true; m_nextInvocations = std::forward<NextInvocationsT>(value); }
109 template<typename NextInvocationsT = Aws::Vector<Aws::Utils::DateTime>>
110 SnapshotSchedule& WithNextInvocations(NextInvocationsT&& value) { SetNextInvocations(std::forward<NextInvocationsT>(value)); return *this;}
111 template<typename NextInvocationsT = Aws::Utils::DateTime>
112 SnapshotSchedule& AddNextInvocations(NextInvocationsT&& value) { m_nextInvocationsHasBeenSet = true; m_nextInvocations.emplace_back(std::forward<NextInvocationsT>(value)); return *this; }
114
116
119 inline int GetAssociatedClusterCount() const { return m_associatedClusterCount; }
120 inline bool AssociatedClusterCountHasBeenSet() const { return m_associatedClusterCountHasBeenSet; }
121 inline void SetAssociatedClusterCount(int value) { m_associatedClusterCountHasBeenSet = true; m_associatedClusterCount = value; }
124
126
130 inline const Aws::Vector<ClusterAssociatedToSchedule>& GetAssociatedClusters() const { return m_associatedClusters; }
131 inline bool AssociatedClustersHasBeenSet() const { return m_associatedClustersHasBeenSet; }
132 template<typename AssociatedClustersT = Aws::Vector<ClusterAssociatedToSchedule>>
133 void SetAssociatedClusters(AssociatedClustersT&& value) { m_associatedClustersHasBeenSet = true; m_associatedClusters = std::forward<AssociatedClustersT>(value); }
134 template<typename AssociatedClustersT = Aws::Vector<ClusterAssociatedToSchedule>>
135 SnapshotSchedule& WithAssociatedClusters(AssociatedClustersT&& value) { SetAssociatedClusters(std::forward<AssociatedClustersT>(value)); return *this;}
136 template<typename AssociatedClustersT = ClusterAssociatedToSchedule>
137 SnapshotSchedule& AddAssociatedClusters(AssociatedClustersT&& value) { m_associatedClustersHasBeenSet = true; m_associatedClusters.emplace_back(std::forward<AssociatedClustersT>(value)); return *this; }
139
141
142 inline const ResponseMetadata& GetResponseMetadata() const { return m_responseMetadata; }
143 template<typename ResponseMetadataT = ResponseMetadata>
144 void SetResponseMetadata(ResponseMetadataT&& value) { m_responseMetadataHasBeenSet = true; m_responseMetadata = std::forward<ResponseMetadataT>(value); }
145 template<typename ResponseMetadataT = ResponseMetadata>
146 SnapshotSchedule& WithResponseMetadata(ResponseMetadataT&& value) { SetResponseMetadata(std::forward<ResponseMetadataT>(value)); return *this;}
148 private:
149
150 Aws::Vector<Aws::String> m_scheduleDefinitions;
151 bool m_scheduleDefinitionsHasBeenSet = false;
152
153 Aws::String m_scheduleIdentifier;
154 bool m_scheduleIdentifierHasBeenSet = false;
155
156 Aws::String m_scheduleDescription;
157 bool m_scheduleDescriptionHasBeenSet = false;
158
159 Aws::Vector<Tag> m_tags;
160 bool m_tagsHasBeenSet = false;
161
162 Aws::Vector<Aws::Utils::DateTime> m_nextInvocations;
163 bool m_nextInvocationsHasBeenSet = false;
164
165 int m_associatedClusterCount{0};
166 bool m_associatedClusterCountHasBeenSet = false;
167
168 Aws::Vector<ClusterAssociatedToSchedule> m_associatedClusters;
169 bool m_associatedClustersHasBeenSet = false;
170
171 ResponseMetadata m_responseMetadata;
172 bool m_responseMetadataHasBeenSet = true;
173 };
174
175} // namespace Model
176} // namespace Redshift
177} // namespace Aws
AWS_REDSHIFT_API SnapshotSchedule()=default
void SetResponseMetadata(ResponseMetadataT &&value)
SnapshotSchedule & WithNextInvocations(NextInvocationsT &&value)
const Aws::String & GetScheduleIdentifier() const
SnapshotSchedule & WithAssociatedClusterCount(int value)
SnapshotSchedule & WithTags(TagsT &&value)
void SetScheduleDefinitions(ScheduleDefinitionsT &&value)
SnapshotSchedule & WithResponseMetadata(ResponseMetadataT &&value)
SnapshotSchedule & WithScheduleIdentifier(ScheduleIdentifierT &&value)
AWS_REDSHIFT_API SnapshotSchedule & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::Vector< Tag > & GetTags() const
SnapshotSchedule & WithScheduleDefinitions(ScheduleDefinitionsT &&value)
const Aws::Vector< Aws::Utils::DateTime > & GetNextInvocations() const
void SetScheduleDescription(ScheduleDescriptionT &&value)
AWS_REDSHIFT_API void OutputToStream(Aws::OStream &oStream, const char *location) const
AWS_REDSHIFT_API SnapshotSchedule(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetAssociatedClusters(AssociatedClustersT &&value)
void SetScheduleIdentifier(ScheduleIdentifierT &&value)
const Aws::Vector< ClusterAssociatedToSchedule > & GetAssociatedClusters() const
AWS_REDSHIFT_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
SnapshotSchedule & AddAssociatedClusters(AssociatedClustersT &&value)
void SetNextInvocations(NextInvocationsT &&value)
SnapshotSchedule & AddNextInvocations(NextInvocationsT &&value)
const ResponseMetadata & GetResponseMetadata() const
SnapshotSchedule & WithScheduleDescription(ScheduleDescriptionT &&value)
const Aws::String & GetScheduleDescription() const
SnapshotSchedule & AddScheduleDefinitions(ScheduleDefinitionsT &&value)
const Aws::Vector< Aws::String > & GetScheduleDefinitions() const
SnapshotSchedule & WithAssociatedClusters(AssociatedClustersT &&value)
SnapshotSchedule & AddTags(TagsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream