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/ec2/EC2_EXPORTS.h>
8 #include <aws/ec2/EC2Request.h>
9 
10 namespace Aws
11 {
12 namespace EC2
13 {
14 namespace Model
15 {
16 
17   /**
18    */
19   class AWS_EC2_API EnableEbsEncryptionByDefaultRequest : public EC2Request
20   {
21   public:
22     EnableEbsEncryptionByDefaultRequest();
23 
24     // Service request name is the Operation name which will send this request out,
25     // each operation should has unique request name, so that we can get operation's name from this request.
26     // Note: this is not true for response, multiple operations may have the same response name,
27     // so we can not get operation's name from response.
GetServiceRequestName()28     inline virtual const char* GetServiceRequestName() const override { return "EnableEbsEncryptionByDefault"; }
29 
30     Aws::String SerializePayload() const override;
31 
32   protected:
33     void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
34 
35   public:
36 
37     /**
38      * <p>Checks whether you have the required permissions for the action, without
39      * actually making the request, and provides an error response. If you have the
40      * required permissions, the error response is <code>DryRunOperation</code>.
41      * Otherwise, it is <code>UnauthorizedOperation</code>.</p>
42      */
GetDryRun()43     inline bool GetDryRun() const{ return m_dryRun; }
44 
45     /**
46      * <p>Checks whether you have the required permissions for the action, without
47      * actually making the request, and provides an error response. If you have the
48      * required permissions, the error response is <code>DryRunOperation</code>.
49      * Otherwise, it is <code>UnauthorizedOperation</code>.</p>
50      */
DryRunHasBeenSet()51     inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
52 
53     /**
54      * <p>Checks whether you have the required permissions for the action, without
55      * actually making the request, and provides an error response. If you have the
56      * required permissions, the error response is <code>DryRunOperation</code>.
57      * Otherwise, it is <code>UnauthorizedOperation</code>.</p>
58      */
SetDryRun(bool value)59     inline void SetDryRun(bool value) { m_dryRunHasBeenSet = true; m_dryRun = value; }
60 
61     /**
62      * <p>Checks whether you have the required permissions for the action, without
63      * actually making the request, and provides an error response. If you have the
64      * required permissions, the error response is <code>DryRunOperation</code>.
65      * Otherwise, it is <code>UnauthorizedOperation</code>.</p>
66      */
WithDryRun(bool value)67     inline EnableEbsEncryptionByDefaultRequest& WithDryRun(bool value) { SetDryRun(value); return *this;}
68 
69   private:
70 
71     bool m_dryRun;
72     bool m_dryRunHasBeenSet;
73   };
74 
75 } // namespace Model
76 } // namespace EC2
77 } // namespace Aws
78