AWS SDK for C++  0.14.3
AWS SDK for C++
MethodSetting.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
19 
20 namespace Aws
21 {
22 namespace Utils
23 {
24 namespace Json
25 {
26  class JsonValue;
27 } // namespace Json
28 } // namespace Utils
29 namespace APIGateway
30 {
31 namespace Model
32 {
33 
38  {
39  public:
40  MethodSetting();
42  MethodSetting& operator=(const Aws::Utils::Json::JsonValue& jsonValue);
43  Aws::Utils::Json::JsonValue Jsonize() const;
44 
51  inline bool GetMetricsEnabled() const{ return m_metricsEnabled; }
52 
59  inline void SetMetricsEnabled(bool value) { m_metricsEnabledHasBeenSet = true; m_metricsEnabled = value; }
60 
67  inline MethodSetting& WithMetricsEnabled(bool value) { SetMetricsEnabled(value); return *this;}
68 
75  inline const Aws::String& GetLoggingLevel() const{ return m_loggingLevel; }
76 
83  inline void SetLoggingLevel(const Aws::String& value) { m_loggingLevelHasBeenSet = true; m_loggingLevel = value; }
84 
91  inline void SetLoggingLevel(Aws::String&& value) { m_loggingLevelHasBeenSet = true; m_loggingLevel = value; }
92 
99  inline void SetLoggingLevel(const char* value) { m_loggingLevelHasBeenSet = true; m_loggingLevel.assign(value); }
100 
107  inline MethodSetting& WithLoggingLevel(const Aws::String& value) { SetLoggingLevel(value); return *this;}
108 
115  inline MethodSetting& WithLoggingLevel(Aws::String&& value) { SetLoggingLevel(value); return *this;}
116 
123  inline MethodSetting& WithLoggingLevel(const char* value) { SetLoggingLevel(value); return *this;}
124 
131  inline bool GetDataTraceEnabled() const{ return m_dataTraceEnabled; }
132 
139  inline void SetDataTraceEnabled(bool value) { m_dataTraceEnabledHasBeenSet = true; m_dataTraceEnabled = value; }
140 
147  inline MethodSetting& WithDataTraceEnabled(bool value) { SetDataTraceEnabled(value); return *this;}
148 
154  inline int GetThrottlingBurstLimit() const{ return m_throttlingBurstLimit; }
155 
161  inline void SetThrottlingBurstLimit(int value) { m_throttlingBurstLimitHasBeenSet = true; m_throttlingBurstLimit = value; }
162 
168  inline MethodSetting& WithThrottlingBurstLimit(int value) { SetThrottlingBurstLimit(value); return *this;}
169 
175  inline double GetThrottlingRateLimit() const{ return m_throttlingRateLimit; }
176 
182  inline void SetThrottlingRateLimit(double value) { m_throttlingRateLimitHasBeenSet = true; m_throttlingRateLimit = value; }
183 
189  inline MethodSetting& WithThrottlingRateLimit(double value) { SetThrottlingRateLimit(value); return *this;}
190 
197  inline bool GetCachingEnabled() const{ return m_cachingEnabled; }
198 
205  inline void SetCachingEnabled(bool value) { m_cachingEnabledHasBeenSet = true; m_cachingEnabled = value; }
206 
213  inline MethodSetting& WithCachingEnabled(bool value) { SetCachingEnabled(value); return *this;}
214 
221  inline int GetCacheTtlInSeconds() const{ return m_cacheTtlInSeconds; }
222 
229  inline void SetCacheTtlInSeconds(int value) { m_cacheTtlInSecondsHasBeenSet = true; m_cacheTtlInSeconds = value; }
230 
237  inline MethodSetting& WithCacheTtlInSeconds(int value) { SetCacheTtlInSeconds(value); return *this;}
238 
244  inline bool GetCacheDataEncrypted() const{ return m_cacheDataEncrypted; }
245 
251  inline void SetCacheDataEncrypted(bool value) { m_cacheDataEncryptedHasBeenSet = true; m_cacheDataEncrypted = value; }
252 
258  inline MethodSetting& WithCacheDataEncrypted(bool value) { SetCacheDataEncrypted(value); return *this;}
259 
266  inline bool GetRequireAuthorizationForCacheControl() const{ return m_requireAuthorizationForCacheControl; }
267 
274  inline void SetRequireAuthorizationForCacheControl(bool value) { m_requireAuthorizationForCacheControlHasBeenSet = true; m_requireAuthorizationForCacheControl = value; }
275 
282  inline MethodSetting& WithRequireAuthorizationForCacheControl(bool value) { SetRequireAuthorizationForCacheControl(value); return *this;}
283 
292  inline const UnauthorizedCacheControlHeaderStrategy& GetUnauthorizedCacheControlHeaderStrategy() const{ return m_unauthorizedCacheControlHeaderStrategy; }
293 
302  inline void SetUnauthorizedCacheControlHeaderStrategy(const UnauthorizedCacheControlHeaderStrategy& value) { m_unauthorizedCacheControlHeaderStrategyHasBeenSet = true; m_unauthorizedCacheControlHeaderStrategy = value; }
303 
312  inline void SetUnauthorizedCacheControlHeaderStrategy(UnauthorizedCacheControlHeaderStrategy&& value) { m_unauthorizedCacheControlHeaderStrategyHasBeenSet = true; m_unauthorizedCacheControlHeaderStrategy = value; }
313 
322  inline MethodSetting& WithUnauthorizedCacheControlHeaderStrategy(const UnauthorizedCacheControlHeaderStrategy& value) { SetUnauthorizedCacheControlHeaderStrategy(value); return *this;}
323 
332  inline MethodSetting& WithUnauthorizedCacheControlHeaderStrategy(UnauthorizedCacheControlHeaderStrategy&& value) { SetUnauthorizedCacheControlHeaderStrategy(value); return *this;}
333 
334  private:
335  bool m_metricsEnabled;
336  bool m_metricsEnabledHasBeenSet;
337  Aws::String m_loggingLevel;
338  bool m_loggingLevelHasBeenSet;
339  bool m_dataTraceEnabled;
340  bool m_dataTraceEnabledHasBeenSet;
341  int m_throttlingBurstLimit;
342  bool m_throttlingBurstLimitHasBeenSet;
343  double m_throttlingRateLimit;
344  bool m_throttlingRateLimitHasBeenSet;
345  bool m_cachingEnabled;
346  bool m_cachingEnabledHasBeenSet;
347  int m_cacheTtlInSeconds;
348  bool m_cacheTtlInSecondsHasBeenSet;
349  bool m_cacheDataEncrypted;
350  bool m_cacheDataEncryptedHasBeenSet;
351  bool m_requireAuthorizationForCacheControl;
352  bool m_requireAuthorizationForCacheControlHasBeenSet;
353  UnauthorizedCacheControlHeaderStrategy m_unauthorizedCacheControlHeaderStrategy;
354  bool m_unauthorizedCacheControlHeaderStrategyHasBeenSet;
355  };
356 
357 } // namespace Model
358 } // namespace APIGateway
359 } // namespace Aws
const UnauthorizedCacheControlHeaderStrategy & GetUnauthorizedCacheControlHeaderStrategy() const
MethodSetting & WithCachingEnabled(bool value)
MethodSetting & WithRequireAuthorizationForCacheControl(bool value)
MethodSetting & WithMetricsEnabled(bool value)
Definition: MethodSetting.h:67
void SetUnauthorizedCacheControlHeaderStrategy(const UnauthorizedCacheControlHeaderStrategy &value)
const Aws::String & GetLoggingLevel() const
Definition: MethodSetting.h:75
MethodSetting & WithThrottlingRateLimit(double value)
MethodSetting & WithUnauthorizedCacheControlHeaderStrategy(UnauthorizedCacheControlHeaderStrategy &&value)
MethodSetting & WithLoggingLevel(Aws::String &&value)
MethodSetting & WithLoggingLevel(const char *value)
MethodSetting & WithLoggingLevel(const Aws::String &value)
MethodSetting & WithUnauthorizedCacheControlHeaderStrategy(const UnauthorizedCacheControlHeaderStrategy &value)
void SetRequireAuthorizationForCacheControl(bool value)
MethodSetting & WithCacheTtlInSeconds(int value)
MethodSetting & WithDataTraceEnabled(bool value)
MethodSetting & WithThrottlingBurstLimit(int value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
#define AWS_APIGATEWAY_API
MethodSetting & WithCacheDataEncrypted(bool value)
void SetUnauthorizedCacheControlHeaderStrategy(UnauthorizedCacheControlHeaderStrategy &&value)
void SetLoggingLevel(const Aws::String &value)
Definition: MethodSetting.h:83
void SetLoggingLevel(Aws::String &&value)
Definition: MethodSetting.h:91
bool GetRequireAuthorizationForCacheControl() const
JSON (JavaScript Object Notation).
void SetLoggingLevel(const char *value)
Definition: MethodSetting.h:99