AWS SDK for C++  0.14.3
AWS SDK for C++
CORSRule.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>
19 
20 namespace Aws
21 {
22 namespace Utils
23 {
24 namespace Xml
25 {
26  class XmlNode;
27 } // namespace Xml
28 } // namespace Utils
29 namespace S3
30 {
31 namespace Model
32 {
33 
35  {
36  public:
37  CORSRule();
38  CORSRule(const Aws::Utils::Xml::XmlNode& xmlNode);
39  CORSRule& operator=(const Aws::Utils::Xml::XmlNode& xmlNode);
40 
41  void AddToNode(Aws::Utils::Xml::XmlNode& parentNode) const;
42 
46  inline const Aws::Vector<Aws::String>& GetAllowedHeaders() const{ return m_allowedHeaders; }
47 
51  inline void SetAllowedHeaders(const Aws::Vector<Aws::String>& value) { m_allowedHeadersHasBeenSet = true; m_allowedHeaders = value; }
52 
56  inline void SetAllowedHeaders(Aws::Vector<Aws::String>&& value) { m_allowedHeadersHasBeenSet = true; m_allowedHeaders = value; }
57 
61  inline CORSRule& WithAllowedHeaders(const Aws::Vector<Aws::String>& value) { SetAllowedHeaders(value); return *this;}
62 
66  inline CORSRule& WithAllowedHeaders(Aws::Vector<Aws::String>&& value) { SetAllowedHeaders(value); return *this;}
67 
71  inline CORSRule& AddAllowedHeaders(const Aws::String& value) { m_allowedHeadersHasBeenSet = true; m_allowedHeaders.push_back(value); return *this; }
72 
76  inline CORSRule& AddAllowedHeaders(Aws::String&& value) { m_allowedHeadersHasBeenSet = true; m_allowedHeaders.push_back(value); return *this; }
77 
81  inline CORSRule& AddAllowedHeaders(const char* value) { m_allowedHeadersHasBeenSet = true; m_allowedHeaders.push_back(value); return *this; }
82 
87  inline const Aws::Vector<Aws::String>& GetAllowedMethods() const{ return m_allowedMethods; }
88 
93  inline void SetAllowedMethods(const Aws::Vector<Aws::String>& value) { m_allowedMethodsHasBeenSet = true; m_allowedMethods = value; }
94 
99  inline void SetAllowedMethods(Aws::Vector<Aws::String>&& value) { m_allowedMethodsHasBeenSet = true; m_allowedMethods = value; }
100 
105  inline CORSRule& WithAllowedMethods(const Aws::Vector<Aws::String>& value) { SetAllowedMethods(value); return *this;}
106 
111  inline CORSRule& WithAllowedMethods(Aws::Vector<Aws::String>&& value) { SetAllowedMethods(value); return *this;}
112 
117  inline CORSRule& AddAllowedMethods(const Aws::String& value) { m_allowedMethodsHasBeenSet = true; m_allowedMethods.push_back(value); return *this; }
118 
123  inline CORSRule& AddAllowedMethods(Aws::String&& value) { m_allowedMethodsHasBeenSet = true; m_allowedMethods.push_back(value); return *this; }
124 
129  inline CORSRule& AddAllowedMethods(const char* value) { m_allowedMethodsHasBeenSet = true; m_allowedMethods.push_back(value); return *this; }
130 
134  inline const Aws::Vector<Aws::String>& GetAllowedOrigins() const{ return m_allowedOrigins; }
135 
139  inline void SetAllowedOrigins(const Aws::Vector<Aws::String>& value) { m_allowedOriginsHasBeenSet = true; m_allowedOrigins = value; }
140 
144  inline void SetAllowedOrigins(Aws::Vector<Aws::String>&& value) { m_allowedOriginsHasBeenSet = true; m_allowedOrigins = value; }
145 
149  inline CORSRule& WithAllowedOrigins(const Aws::Vector<Aws::String>& value) { SetAllowedOrigins(value); return *this;}
150 
154  inline CORSRule& WithAllowedOrigins(Aws::Vector<Aws::String>&& value) { SetAllowedOrigins(value); return *this;}
155 
159  inline CORSRule& AddAllowedOrigins(const Aws::String& value) { m_allowedOriginsHasBeenSet = true; m_allowedOrigins.push_back(value); return *this; }
160 
164  inline CORSRule& AddAllowedOrigins(Aws::String&& value) { m_allowedOriginsHasBeenSet = true; m_allowedOrigins.push_back(value); return *this; }
165 
169  inline CORSRule& AddAllowedOrigins(const char* value) { m_allowedOriginsHasBeenSet = true; m_allowedOrigins.push_back(value); return *this; }
170 
175  inline const Aws::Vector<Aws::String>& GetExposeHeaders() const{ return m_exposeHeaders; }
176 
181  inline void SetExposeHeaders(const Aws::Vector<Aws::String>& value) { m_exposeHeadersHasBeenSet = true; m_exposeHeaders = value; }
182 
187  inline void SetExposeHeaders(Aws::Vector<Aws::String>&& value) { m_exposeHeadersHasBeenSet = true; m_exposeHeaders = value; }
188 
193  inline CORSRule& WithExposeHeaders(const Aws::Vector<Aws::String>& value) { SetExposeHeaders(value); return *this;}
194 
199  inline CORSRule& WithExposeHeaders(Aws::Vector<Aws::String>&& value) { SetExposeHeaders(value); return *this;}
200 
205  inline CORSRule& AddExposeHeaders(const Aws::String& value) { m_exposeHeadersHasBeenSet = true; m_exposeHeaders.push_back(value); return *this; }
206 
211  inline CORSRule& AddExposeHeaders(Aws::String&& value) { m_exposeHeadersHasBeenSet = true; m_exposeHeaders.push_back(value); return *this; }
212 
217  inline CORSRule& AddExposeHeaders(const char* value) { m_exposeHeadersHasBeenSet = true; m_exposeHeaders.push_back(value); return *this; }
218 
223  inline int GetMaxAgeSeconds() const{ return m_maxAgeSeconds; }
224 
229  inline void SetMaxAgeSeconds(int value) { m_maxAgeSecondsHasBeenSet = true; m_maxAgeSeconds = value; }
230 
235  inline CORSRule& WithMaxAgeSeconds(int value) { SetMaxAgeSeconds(value); return *this;}
236 
237  private:
238  Aws::Vector<Aws::String> m_allowedHeaders;
239  bool m_allowedHeadersHasBeenSet;
240  Aws::Vector<Aws::String> m_allowedMethods;
241  bool m_allowedMethodsHasBeenSet;
242  Aws::Vector<Aws::String> m_allowedOrigins;
243  bool m_allowedOriginsHasBeenSet;
244  Aws::Vector<Aws::String> m_exposeHeaders;
245  bool m_exposeHeadersHasBeenSet;
246  int m_maxAgeSeconds;
247  bool m_maxAgeSecondsHasBeenSet;
248  };
249 
250 } // namespace Model
251 } // namespace S3
252 } // namespace Aws
CORSRule & WithAllowedMethods(Aws::Vector< Aws::String > &&value)
Definition: CORSRule.h:111
CORSRule & AddAllowedMethods(const char *value)
Definition: CORSRule.h:129
void SetExposeHeaders(const Aws::Vector< Aws::String > &value)
Definition: CORSRule.h:181
const Aws::Vector< Aws::String > & GetAllowedOrigins() const
Definition: CORSRule.h:134
CORSRule & AddExposeHeaders(Aws::String &&value)
Definition: CORSRule.h:211
int GetMaxAgeSeconds() const
Definition: CORSRule.h:223
const Aws::Vector< Aws::String > & GetAllowedMethods() const
Definition: CORSRule.h:87
CORSRule & WithAllowedOrigins(Aws::Vector< Aws::String > &&value)
Definition: CORSRule.h:154
std::vector< T, Aws::Allocator< T > > Vector
Definition: AWSVector.h:27
#define AWS_S3_API
Definition: S3_EXPORTS.h:37
CORSRule & WithAllowedHeaders(Aws::Vector< Aws::String > &&value)
Definition: CORSRule.h:66
const Aws::Vector< Aws::String > & GetAllowedHeaders() const
Definition: CORSRule.h:46
void SetAllowedMethods(const Aws::Vector< Aws::String > &value)
Definition: CORSRule.h:93
CORSRule & AddAllowedHeaders(const Aws::String &value)
Definition: CORSRule.h:71
CORSRule & AddAllowedMethods(Aws::String &&value)
Definition: CORSRule.h:123
const Aws::Vector< Aws::String > & GetExposeHeaders() const
Definition: CORSRule.h:175
void SetAllowedMethods(Aws::Vector< Aws::String > &&value)
Definition: CORSRule.h:99
void SetAllowedOrigins(const Aws::Vector< Aws::String > &value)
Definition: CORSRule.h:139
CORSRule & AddAllowedHeaders(Aws::String &&value)
Definition: CORSRule.h:76
CORSRule & WithAllowedHeaders(const Aws::Vector< Aws::String > &value)
Definition: CORSRule.h:61
CORSRule & WithAllowedMethods(const Aws::Vector< Aws::String > &value)
Definition: CORSRule.h:105
void SetAllowedOrigins(Aws::Vector< Aws::String > &&value)
Definition: CORSRule.h:144
CORSRule & WithExposeHeaders(Aws::Vector< Aws::String > &&value)
Definition: CORSRule.h:199
CORSRule & WithExposeHeaders(const Aws::Vector< Aws::String > &value)
Definition: CORSRule.h:193
void SetMaxAgeSeconds(int value)
Definition: CORSRule.h:229
CORSRule & AddAllowedOrigins(Aws::String &&value)
Definition: CORSRule.h:164
CORSRule & AddExposeHeaders(const char *value)
Definition: CORSRule.h:217
void SetAllowedHeaders(Aws::Vector< Aws::String > &&value)
Definition: CORSRule.h:56
CORSRule & AddAllowedOrigins(const Aws::String &value)
Definition: CORSRule.h:159
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
void SetAllowedHeaders(const Aws::Vector< Aws::String > &value)
Definition: CORSRule.h:51
void SetExposeHeaders(Aws::Vector< Aws::String > &&value)
Definition: CORSRule.h:187
CORSRule & AddAllowedOrigins(const char *value)
Definition: CORSRule.h:169
CORSRule & WithAllowedOrigins(const Aws::Vector< Aws::String > &value)
Definition: CORSRule.h:149
CORSRule & AddExposeHeaders(const Aws::String &value)
Definition: CORSRule.h:205
CORSRule & WithMaxAgeSeconds(int value)
Definition: CORSRule.h:235
CORSRule & AddAllowedMethods(const Aws::String &value)
Definition: CORSRule.h:117
JSON (JavaScript Object Notation).
CORSRule & AddAllowedHeaders(const char *value)
Definition: CORSRule.h:81