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/docdb/DocDB_EXPORTS.h>
8 #include <aws/docdb/DocDBRequest.h>
9 #include <aws/core/utils/memory/stl/AWSString.h>
10 #include <utility>
11 
12 namespace Aws
13 {
14 namespace DocDB
15 {
16 namespace Model
17 {
18 
19   /**
20    * <p>Represents the input to <a>RebootDBInstance</a>.</p><p><h3>See Also:</h3>
21    * <a
22    * href="http://docs.aws.amazon.com/goto/WebAPI/docdb-2014-10-31/RebootDBInstanceMessage">AWS
23    * API Reference</a></p>
24    */
25   class AWS_DOCDB_API RebootDBInstanceRequest : public DocDBRequest
26   {
27   public:
28     RebootDBInstanceRequest();
29 
30     // Service request name is the Operation name which will send this request out,
31     // each operation should has unique request name, so that we can get operation's name from this request.
32     // Note: this is not true for response, multiple operations may have the same response name,
33     // so we can not get operation's name from response.
GetServiceRequestName()34     inline virtual const char* GetServiceRequestName() const override { return "RebootDBInstance"; }
35 
36     Aws::String SerializePayload() const override;
37 
38   protected:
39     void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
40 
41   public:
42 
43     /**
44      * <p>The instance identifier. This parameter is stored as a lowercase string.</p>
45      * <p>Constraints:</p> <ul> <li> <p>Must match the identifier of an existing
46      * <code>DBInstance</code>.</p> </li> </ul>
47      */
GetDBInstanceIdentifier()48     inline const Aws::String& GetDBInstanceIdentifier() const{ return m_dBInstanceIdentifier; }
49 
50     /**
51      * <p>The instance identifier. This parameter is stored as a lowercase string.</p>
52      * <p>Constraints:</p> <ul> <li> <p>Must match the identifier of an existing
53      * <code>DBInstance</code>.</p> </li> </ul>
54      */
DBInstanceIdentifierHasBeenSet()55     inline bool DBInstanceIdentifierHasBeenSet() const { return m_dBInstanceIdentifierHasBeenSet; }
56 
57     /**
58      * <p>The instance identifier. This parameter is stored as a lowercase string.</p>
59      * <p>Constraints:</p> <ul> <li> <p>Must match the identifier of an existing
60      * <code>DBInstance</code>.</p> </li> </ul>
61      */
SetDBInstanceIdentifier(const Aws::String & value)62     inline void SetDBInstanceIdentifier(const Aws::String& value) { m_dBInstanceIdentifierHasBeenSet = true; m_dBInstanceIdentifier = value; }
63 
64     /**
65      * <p>The instance identifier. This parameter is stored as a lowercase string.</p>
66      * <p>Constraints:</p> <ul> <li> <p>Must match the identifier of an existing
67      * <code>DBInstance</code>.</p> </li> </ul>
68      */
SetDBInstanceIdentifier(Aws::String && value)69     inline void SetDBInstanceIdentifier(Aws::String&& value) { m_dBInstanceIdentifierHasBeenSet = true; m_dBInstanceIdentifier = std::move(value); }
70 
71     /**
72      * <p>The instance identifier. This parameter is stored as a lowercase string.</p>
73      * <p>Constraints:</p> <ul> <li> <p>Must match the identifier of an existing
74      * <code>DBInstance</code>.</p> </li> </ul>
75      */
SetDBInstanceIdentifier(const char * value)76     inline void SetDBInstanceIdentifier(const char* value) { m_dBInstanceIdentifierHasBeenSet = true; m_dBInstanceIdentifier.assign(value); }
77 
78     /**
79      * <p>The instance identifier. This parameter is stored as a lowercase string.</p>
80      * <p>Constraints:</p> <ul> <li> <p>Must match the identifier of an existing
81      * <code>DBInstance</code>.</p> </li> </ul>
82      */
WithDBInstanceIdentifier(const Aws::String & value)83     inline RebootDBInstanceRequest& WithDBInstanceIdentifier(const Aws::String& value) { SetDBInstanceIdentifier(value); return *this;}
84 
85     /**
86      * <p>The instance identifier. This parameter is stored as a lowercase string.</p>
87      * <p>Constraints:</p> <ul> <li> <p>Must match the identifier of an existing
88      * <code>DBInstance</code>.</p> </li> </ul>
89      */
WithDBInstanceIdentifier(Aws::String && value)90     inline RebootDBInstanceRequest& WithDBInstanceIdentifier(Aws::String&& value) { SetDBInstanceIdentifier(std::move(value)); return *this;}
91 
92     /**
93      * <p>The instance identifier. This parameter is stored as a lowercase string.</p>
94      * <p>Constraints:</p> <ul> <li> <p>Must match the identifier of an existing
95      * <code>DBInstance</code>.</p> </li> </ul>
96      */
WithDBInstanceIdentifier(const char * value)97     inline RebootDBInstanceRequest& WithDBInstanceIdentifier(const char* value) { SetDBInstanceIdentifier(value); return *this;}
98 
99 
100     /**
101      * <p> When <code>true</code>, the reboot is conducted through a Multi-AZ failover.
102      * </p> <p>Constraint: You can't specify <code>true</code> if the instance is not
103      * configured for Multi-AZ.</p>
104      */
GetForceFailover()105     inline bool GetForceFailover() const{ return m_forceFailover; }
106 
107     /**
108      * <p> When <code>true</code>, the reboot is conducted through a Multi-AZ failover.
109      * </p> <p>Constraint: You can't specify <code>true</code> if the instance is not
110      * configured for Multi-AZ.</p>
111      */
ForceFailoverHasBeenSet()112     inline bool ForceFailoverHasBeenSet() const { return m_forceFailoverHasBeenSet; }
113 
114     /**
115      * <p> When <code>true</code>, the reboot is conducted through a Multi-AZ failover.
116      * </p> <p>Constraint: You can't specify <code>true</code> if the instance is not
117      * configured for Multi-AZ.</p>
118      */
SetForceFailover(bool value)119     inline void SetForceFailover(bool value) { m_forceFailoverHasBeenSet = true; m_forceFailover = value; }
120 
121     /**
122      * <p> When <code>true</code>, the reboot is conducted through a Multi-AZ failover.
123      * </p> <p>Constraint: You can't specify <code>true</code> if the instance is not
124      * configured for Multi-AZ.</p>
125      */
WithForceFailover(bool value)126     inline RebootDBInstanceRequest& WithForceFailover(bool value) { SetForceFailover(value); return *this;}
127 
128   private:
129 
130     Aws::String m_dBInstanceIdentifier;
131     bool m_dBInstanceIdentifierHasBeenSet;
132 
133     bool m_forceFailover;
134     bool m_forceFailoverHasBeenSet;
135   };
136 
137 } // namespace Model
138 } // namespace DocDB
139 } // namespace Aws
140