1 /**
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  * SPDX-License-Identifier: Apache-2.0.
4  */
5 
6 #pragma once
7 #include <aws/accessanalyzer/AccessAnalyzer_EXPORTS.h>
8 #include <aws/core/utils/memory/stl/AWSString.h>
9 #include <utility>
10 
11 namespace Aws
12 {
13 namespace Utils
14 {
15 namespace Json
16 {
17   class JsonValue;
18   class JsonView;
19 } // namespace Json
20 } // namespace Utils
21 namespace AccessAnalyzer
22 {
23 namespace Model
24 {
25 
26   /**
27    * <p>Internal server error.</p><p><h3>See Also:</h3>   <a
28    * href="http://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/InternalServerException">AWS
29    * API Reference</a></p>
30    */
31   class AWS_ACCESSANALYZER_API InternalServerException
32   {
33   public:
34     InternalServerException();
35     InternalServerException(Aws::Utils::Json::JsonView jsonValue);
36     InternalServerException& operator=(Aws::Utils::Json::JsonView jsonValue);
37     Aws::Utils::Json::JsonValue Jsonize() const;
38 
39 
40 
GetMessage()41     inline const Aws::String& GetMessage() const{ return m_message; }
42 
43 
MessageHasBeenSet()44     inline bool MessageHasBeenSet() const { return m_messageHasBeenSet; }
45 
46 
SetMessage(const Aws::String & value)47     inline void SetMessage(const Aws::String& value) { m_messageHasBeenSet = true; m_message = value; }
48 
49 
SetMessage(Aws::String && value)50     inline void SetMessage(Aws::String&& value) { m_messageHasBeenSet = true; m_message = std::move(value); }
51 
52 
SetMessage(const char * value)53     inline void SetMessage(const char* value) { m_messageHasBeenSet = true; m_message.assign(value); }
54 
55 
WithMessage(const Aws::String & value)56     inline InternalServerException& WithMessage(const Aws::String& value) { SetMessage(value); return *this;}
57 
58 
WithMessage(Aws::String && value)59     inline InternalServerException& WithMessage(Aws::String&& value) { SetMessage(std::move(value)); return *this;}
60 
61 
WithMessage(const char * value)62     inline InternalServerException& WithMessage(const char* value) { SetMessage(value); return *this;}
63 
64 
65     /**
66      * <p>The seconds to wait to retry.</p>
67      */
GetRetryAfterSeconds()68     inline int GetRetryAfterSeconds() const{ return m_retryAfterSeconds; }
69 
70     /**
71      * <p>The seconds to wait to retry.</p>
72      */
RetryAfterSecondsHasBeenSet()73     inline bool RetryAfterSecondsHasBeenSet() const { return m_retryAfterSecondsHasBeenSet; }
74 
75     /**
76      * <p>The seconds to wait to retry.</p>
77      */
SetRetryAfterSeconds(int value)78     inline void SetRetryAfterSeconds(int value) { m_retryAfterSecondsHasBeenSet = true; m_retryAfterSeconds = value; }
79 
80     /**
81      * <p>The seconds to wait to retry.</p>
82      */
WithRetryAfterSeconds(int value)83     inline InternalServerException& WithRetryAfterSeconds(int value) { SetRetryAfterSeconds(value); return *this;}
84 
85   private:
86 
87     Aws::String m_message;
88     bool m_messageHasBeenSet;
89 
90     int m_retryAfterSeconds;
91     bool m_retryAfterSecondsHasBeenSet;
92   };
93 
94 } // namespace Model
95 } // namespace AccessAnalyzer
96 } // namespace Aws
97