AWS SDK for C++  0.14.3
AWS SDK for C++
Rule.h
Go to the documentation of this file.
1 /*
2 * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License").
5 * You may not use this file except in compliance with the License.
6 * A copy of the License is located at
7 *
8 * http://aws.amazon.com/apache2.0
9 *
10 * or in the "license" file accompanying this file. This file is distributed
11 * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12 * express or implied. See the License for the specific language governing
13 * permissions and limitations under the License.
14 */
15 #pragma once
16 #include <aws/s3/S3_EXPORTS.h>
24 
25 namespace Aws
26 {
27 namespace Utils
28 {
29 namespace Xml
30 {
31  class XmlNode;
32 } // namespace Xml
33 } // namespace Utils
34 namespace S3
35 {
36 namespace Model
37 {
38 
40  {
41  public:
42  Rule();
43  Rule(const Aws::Utils::Xml::XmlNode& xmlNode);
44  Rule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
45 
46  void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
47 
48 
49  inline const LifecycleExpiration& GetExpiration() const{ return m_expiration; }
50 
51 
52  inline void SetExpiration(const LifecycleExpiration& value) { m_expirationHasBeenSet = true; m_expiration = value; }
53 
54 
55  inline void SetExpiration(LifecycleExpiration&& value) { m_expirationHasBeenSet = true; m_expiration = value; }
56 
57 
58  inline Rule& WithExpiration(const LifecycleExpiration& value) { SetExpiration(value); return *this;}
59 
60 
61  inline Rule& WithExpiration(LifecycleExpiration&& value) { SetExpiration(value); return *this;}
62 
66  inline const Aws::String& GetID() const{ return m_iD; }
67 
71  inline void SetID(const Aws::String& value) { m_iDHasBeenSet = true; m_iD = value; }
72 
76  inline void SetID(Aws::String&& value) { m_iDHasBeenSet = true; m_iD = value; }
77 
81  inline void SetID(const char* value) { m_iDHasBeenSet = true; m_iD.assign(value); }
82 
86  inline Rule& WithID(const Aws::String& value) { SetID(value); return *this;}
87 
91  inline Rule& WithID(Aws::String&& value) { SetID(value); return *this;}
92 
96  inline Rule& WithID(const char* value) { SetID(value); return *this;}
97 
101  inline const Aws::String& GetPrefix() const{ return m_prefix; }
102 
106  inline void SetPrefix(const Aws::String& value) { m_prefixHasBeenSet = true; m_prefix = value; }
107 
111  inline void SetPrefix(Aws::String&& value) { m_prefixHasBeenSet = true; m_prefix = value; }
112 
116  inline void SetPrefix(const char* value) { m_prefixHasBeenSet = true; m_prefix.assign(value); }
117 
121  inline Rule& WithPrefix(const Aws::String& value) { SetPrefix(value); return *this;}
122 
126  inline Rule& WithPrefix(Aws::String&& value) { SetPrefix(value); return *this;}
127 
131  inline Rule& WithPrefix(const char* value) { SetPrefix(value); return *this;}
132 
137  inline const ExpirationStatus& GetStatus() const{ return m_status; }
138 
143  inline void SetStatus(const ExpirationStatus& value) { m_statusHasBeenSet = true; m_status = value; }
144 
149  inline void SetStatus(ExpirationStatus&& value) { m_statusHasBeenSet = true; m_status = value; }
150 
155  inline Rule& WithStatus(const ExpirationStatus& value) { SetStatus(value); return *this;}
156 
161  inline Rule& WithStatus(ExpirationStatus&& value) { SetStatus(value); return *this;}
162 
163 
164  inline const Transition& GetTransition() const{ return m_transition; }
165 
166 
167  inline void SetTransition(const Transition& value) { m_transitionHasBeenSet = true; m_transition = value; }
168 
169 
170  inline void SetTransition(Transition&& value) { m_transitionHasBeenSet = true; m_transition = value; }
171 
172 
173  inline Rule& WithTransition(const Transition& value) { SetTransition(value); return *this;}
174 
175 
176  inline Rule& WithTransition(Transition&& value) { SetTransition(value); return *this;}
177 
178 
179  inline const NoncurrentVersionTransition& GetNoncurrentVersionTransition() const{ return m_noncurrentVersionTransition; }
180 
181 
182  inline void SetNoncurrentVersionTransition(const NoncurrentVersionTransition& value) { m_noncurrentVersionTransitionHasBeenSet = true; m_noncurrentVersionTransition = value; }
183 
184 
185  inline void SetNoncurrentVersionTransition(NoncurrentVersionTransition&& value) { m_noncurrentVersionTransitionHasBeenSet = true; m_noncurrentVersionTransition = value; }
186 
187 
188  inline Rule& WithNoncurrentVersionTransition(const NoncurrentVersionTransition& value) { SetNoncurrentVersionTransition(value); return *this;}
189 
190 
191  inline Rule& WithNoncurrentVersionTransition(NoncurrentVersionTransition&& value) { SetNoncurrentVersionTransition(value); return *this;}
192 
193 
194  inline const NoncurrentVersionExpiration& GetNoncurrentVersionExpiration() const{ return m_noncurrentVersionExpiration; }
195 
196 
197  inline void SetNoncurrentVersionExpiration(const NoncurrentVersionExpiration& value) { m_noncurrentVersionExpirationHasBeenSet = true; m_noncurrentVersionExpiration = value; }
198 
199 
200  inline void SetNoncurrentVersionExpiration(NoncurrentVersionExpiration&& value) { m_noncurrentVersionExpirationHasBeenSet = true; m_noncurrentVersionExpiration = value; }
201 
202 
203  inline Rule& WithNoncurrentVersionExpiration(const NoncurrentVersionExpiration& value) { SetNoncurrentVersionExpiration(value); return *this;}
204 
205 
206  inline Rule& WithNoncurrentVersionExpiration(NoncurrentVersionExpiration&& value) { SetNoncurrentVersionExpiration(value); return *this;}
207 
208 
209  inline const AbortIncompleteMultipartUpload& GetAbortIncompleteMultipartUpload() const{ return m_abortIncompleteMultipartUpload; }
210 
211 
212  inline void SetAbortIncompleteMultipartUpload(const AbortIncompleteMultipartUpload& value) { m_abortIncompleteMultipartUploadHasBeenSet = true; m_abortIncompleteMultipartUpload = value; }
213 
214 
215  inline void SetAbortIncompleteMultipartUpload(AbortIncompleteMultipartUpload&& value) { m_abortIncompleteMultipartUploadHasBeenSet = true; m_abortIncompleteMultipartUpload = value; }
216 
217 
218  inline Rule& WithAbortIncompleteMultipartUpload(const AbortIncompleteMultipartUpload& value) { SetAbortIncompleteMultipartUpload(value); return *this;}
219 
220 
221  inline Rule& WithAbortIncompleteMultipartUpload(AbortIncompleteMultipartUpload&& value) { SetAbortIncompleteMultipartUpload(value); return *this;}
222 
223  private:
224  LifecycleExpiration m_expiration;
225  bool m_expirationHasBeenSet;
226  Aws::String m_iD;
227  bool m_iDHasBeenSet;
228  Aws::String m_prefix;
229  bool m_prefixHasBeenSet;
230  ExpirationStatus m_status;
231  bool m_statusHasBeenSet;
232  Transition m_transition;
233  bool m_transitionHasBeenSet;
234  NoncurrentVersionTransition m_noncurrentVersionTransition;
235  bool m_noncurrentVersionTransitionHasBeenSet;
236  NoncurrentVersionExpiration m_noncurrentVersionExpiration;
237  bool m_noncurrentVersionExpirationHasBeenSet;
238  AbortIncompleteMultipartUpload m_abortIncompleteMultipartUpload;
239  bool m_abortIncompleteMultipartUploadHasBeenSet;
240  };
241 
242 } // namespace Model
243 } // namespace S3
244 } // namespace Aws
Rule & WithExpiration(LifecycleExpiration &&value)
Definition: Rule.h:61
void SetPrefix(const char *value)
Definition: Rule.h:116
const Aws::String & GetPrefix() const
Definition: Rule.h:101
void SetNoncurrentVersionExpiration(NoncurrentVersionExpiration &&value)
Definition: Rule.h:200
void SetNoncurrentVersionTransition(NoncurrentVersionTransition &&value)
Definition: Rule.h:185
void SetID(const Aws::String &value)
Definition: Rule.h:71
const ExpirationStatus & GetStatus() const
Definition: Rule.h:137
Rule & WithNoncurrentVersionExpiration(const NoncurrentVersionExpiration &value)
Definition: Rule.h:203
Rule & WithAbortIncompleteMultipartUpload(const AbortIncompleteMultipartUpload &value)
Definition: Rule.h:218
Rule & WithNoncurrentVersionExpiration(NoncurrentVersionExpiration &&value)
Definition: Rule.h:206
Rule & WithExpiration(const LifecycleExpiration &value)
Definition: Rule.h:58
Rule & WithNoncurrentVersionTransition(const NoncurrentVersionTransition &value)
Definition: Rule.h:188
#define AWS_S3_API
Definition: S3_EXPORTS.h:37
void SetID(Aws::String &&value)
Definition: Rule.h:76
Rule & WithPrefix(Aws::String &&value)
Definition: Rule.h:126
Rule & WithStatus(const ExpirationStatus &value)
Definition: Rule.h:155
Rule & WithID(const Aws::String &value)
Definition: Rule.h:86
const LifecycleExpiration & GetExpiration() const
Definition: Rule.h:49
const AbortIncompleteMultipartUpload & GetAbortIncompleteMultipartUpload() const
Definition: Rule.h:209
void SetPrefix(Aws::String &&value)
Definition: Rule.h:111
const Transition & GetTransition() const
Definition: Rule.h:164
const Aws::String & GetID() const
Definition: Rule.h:66
void SetTransition(const Transition &value)
Definition: Rule.h:167
Rule & WithStatus(ExpirationStatus &&value)
Definition: Rule.h:161
void SetPrefix(const Aws::String &value)
Definition: Rule.h:106
void SetNoncurrentVersionExpiration(const NoncurrentVersionExpiration &value)
Definition: Rule.h:197
const NoncurrentVersionTransition & GetNoncurrentVersionTransition() const
Definition: Rule.h:179
Rule & WithPrefix(const char *value)
Definition: Rule.h:131
Rule & WithTransition(const Transition &value)
Definition: Rule.h:173
void SetAbortIncompleteMultipartUpload(AbortIncompleteMultipartUpload &&value)
Definition: Rule.h:215
const NoncurrentVersionExpiration & GetNoncurrentVersionExpiration() const
Definition: Rule.h:194
void SetID(const char *value)
Definition: Rule.h:81
Rule & WithTransition(Transition &&value)
Definition: Rule.h:176
Rule & WithAbortIncompleteMultipartUpload(AbortIncompleteMultipartUpload &&value)
Definition: Rule.h:221
void SetStatus(ExpirationStatus &&value)
Definition: Rule.h:149
Rule & WithPrefix(const Aws::String &value)
Definition: Rule.h:121
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Rule & WithNoncurrentVersionTransition(NoncurrentVersionTransition &&value)
Definition: Rule.h:191
void SetNoncurrentVersionTransition(const NoncurrentVersionTransition &value)
Definition: Rule.h:182
Rule & WithID(Aws::String &&value)
Definition: Rule.h:91
void SetTransition(Transition &&value)
Definition: Rule.h:170
Rule & WithID(const char *value)
Definition: Rule.h:96
void SetExpiration(LifecycleExpiration &&value)
Definition: Rule.h:55
void SetExpiration(const LifecycleExpiration &value)
Definition: Rule.h:52
void SetStatus(const ExpirationStatus &value)
Definition: Rule.h:143
JSON (JavaScript Object Notation).
void SetAbortIncompleteMultipartUpload(const AbortIncompleteMultipartUpload &value)
Definition: Rule.h:212