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/email/SES_EXPORTS.h>
8 #include <aws/email/SESRequest.h>
9 #include <aws/core/utils/memory/stl/AWSString.h>
10 #include <utility>
11 
12 namespace Aws
13 {
14 namespace SES
15 {
16 namespace Model
17 {
18 
19   /**
20    * <p>Represents a request to delete a receipt rule. You use receipt rules to
21    * receive email with Amazon SES. For more information, see the <a
22    * href="https://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiving-email-concepts.html">Amazon
23    * SES Developer Guide</a>.</p><p><h3>See Also:</h3>   <a
24    * href="http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/DeleteReceiptRuleRequest">AWS
25    * API Reference</a></p>
26    */
27   class AWS_SES_API DeleteReceiptRuleRequest : public SESRequest
28   {
29   public:
30     DeleteReceiptRuleRequest();
31 
32     // Service request name is the Operation name which will send this request out,
33     // each operation should has unique request name, so that we can get operation's name from this request.
34     // Note: this is not true for response, multiple operations may have the same response name,
35     // so we can not get operation's name from response.
GetServiceRequestName()36     inline virtual const char* GetServiceRequestName() const override { return "DeleteReceiptRule"; }
37 
38     Aws::String SerializePayload() const override;
39 
40   protected:
41     void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
42 
43   public:
44 
45     /**
46      * <p>The name of the receipt rule set that contains the receipt rule to
47      * delete.</p>
48      */
GetRuleSetName()49     inline const Aws::String& GetRuleSetName() const{ return m_ruleSetName; }
50 
51     /**
52      * <p>The name of the receipt rule set that contains the receipt rule to
53      * delete.</p>
54      */
RuleSetNameHasBeenSet()55     inline bool RuleSetNameHasBeenSet() const { return m_ruleSetNameHasBeenSet; }
56 
57     /**
58      * <p>The name of the receipt rule set that contains the receipt rule to
59      * delete.</p>
60      */
SetRuleSetName(const Aws::String & value)61     inline void SetRuleSetName(const Aws::String& value) { m_ruleSetNameHasBeenSet = true; m_ruleSetName = value; }
62 
63     /**
64      * <p>The name of the receipt rule set that contains the receipt rule to
65      * delete.</p>
66      */
SetRuleSetName(Aws::String && value)67     inline void SetRuleSetName(Aws::String&& value) { m_ruleSetNameHasBeenSet = true; m_ruleSetName = std::move(value); }
68 
69     /**
70      * <p>The name of the receipt rule set that contains the receipt rule to
71      * delete.</p>
72      */
SetRuleSetName(const char * value)73     inline void SetRuleSetName(const char* value) { m_ruleSetNameHasBeenSet = true; m_ruleSetName.assign(value); }
74 
75     /**
76      * <p>The name of the receipt rule set that contains the receipt rule to
77      * delete.</p>
78      */
WithRuleSetName(const Aws::String & value)79     inline DeleteReceiptRuleRequest& WithRuleSetName(const Aws::String& value) { SetRuleSetName(value); return *this;}
80 
81     /**
82      * <p>The name of the receipt rule set that contains the receipt rule to
83      * delete.</p>
84      */
WithRuleSetName(Aws::String && value)85     inline DeleteReceiptRuleRequest& WithRuleSetName(Aws::String&& value) { SetRuleSetName(std::move(value)); return *this;}
86 
87     /**
88      * <p>The name of the receipt rule set that contains the receipt rule to
89      * delete.</p>
90      */
WithRuleSetName(const char * value)91     inline DeleteReceiptRuleRequest& WithRuleSetName(const char* value) { SetRuleSetName(value); return *this;}
92 
93 
94     /**
95      * <p>The name of the receipt rule to delete.</p>
96      */
GetRuleName()97     inline const Aws::String& GetRuleName() const{ return m_ruleName; }
98 
99     /**
100      * <p>The name of the receipt rule to delete.</p>
101      */
RuleNameHasBeenSet()102     inline bool RuleNameHasBeenSet() const { return m_ruleNameHasBeenSet; }
103 
104     /**
105      * <p>The name of the receipt rule to delete.</p>
106      */
SetRuleName(const Aws::String & value)107     inline void SetRuleName(const Aws::String& value) { m_ruleNameHasBeenSet = true; m_ruleName = value; }
108 
109     /**
110      * <p>The name of the receipt rule to delete.</p>
111      */
SetRuleName(Aws::String && value)112     inline void SetRuleName(Aws::String&& value) { m_ruleNameHasBeenSet = true; m_ruleName = std::move(value); }
113 
114     /**
115      * <p>The name of the receipt rule to delete.</p>
116      */
SetRuleName(const char * value)117     inline void SetRuleName(const char* value) { m_ruleNameHasBeenSet = true; m_ruleName.assign(value); }
118 
119     /**
120      * <p>The name of the receipt rule to delete.</p>
121      */
WithRuleName(const Aws::String & value)122     inline DeleteReceiptRuleRequest& WithRuleName(const Aws::String& value) { SetRuleName(value); return *this;}
123 
124     /**
125      * <p>The name of the receipt rule to delete.</p>
126      */
WithRuleName(Aws::String && value)127     inline DeleteReceiptRuleRequest& WithRuleName(Aws::String&& value) { SetRuleName(std::move(value)); return *this;}
128 
129     /**
130      * <p>The name of the receipt rule to delete.</p>
131      */
WithRuleName(const char * value)132     inline DeleteReceiptRuleRequest& WithRuleName(const char* value) { SetRuleName(value); return *this;}
133 
134   private:
135 
136     Aws::String m_ruleSetName;
137     bool m_ruleSetNameHasBeenSet;
138 
139     Aws::String m_ruleName;
140     bool m_ruleNameHasBeenSet;
141   };
142 
143 } // namespace Model
144 } // namespace SES
145 } // namespace Aws
146