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 #include <aws/ec2/model/DeregisterInstanceTagAttributeRequest.h> 10 #include <utility> 11 12 namespace Aws 13 { 14 namespace EC2 15 { 16 namespace Model 17 { 18 19 /** 20 */ 21 class AWS_EC2_API DeregisterInstanceEventNotificationAttributesRequest : public EC2Request 22 { 23 public: 24 DeregisterInstanceEventNotificationAttributesRequest(); 25 26 // Service request name is the Operation name which will send this request out, 27 // each operation should has unique request name, so that we can get operation's name from this request. 28 // Note: this is not true for response, multiple operations may have the same response name, 29 // so we can not get operation's name from response. GetServiceRequestName()30 inline virtual const char* GetServiceRequestName() const override { return "DeregisterInstanceEventNotificationAttributes"; } 31 32 Aws::String SerializePayload() const override; 33 34 protected: 35 void DumpBodyToUrl(Aws::Http::URI& uri ) const override; 36 37 public: 38 39 /** 40 * <p>Checks whether you have the required permissions for the action, without 41 * actually making the request, and provides an error response. If you have the 42 * required permissions, the error response is <code>DryRunOperation</code>. 43 * Otherwise, it is <code>UnauthorizedOperation</code>.</p> 44 */ GetDryRun()45 inline bool GetDryRun() const{ return m_dryRun; } 46 47 /** 48 * <p>Checks whether you have the required permissions for the action, without 49 * actually making the request, and provides an error response. If you have the 50 * required permissions, the error response is <code>DryRunOperation</code>. 51 * Otherwise, it is <code>UnauthorizedOperation</code>.</p> 52 */ DryRunHasBeenSet()53 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; } 54 55 /** 56 * <p>Checks whether you have the required permissions for the action, without 57 * actually making the request, and provides an error response. If you have the 58 * required permissions, the error response is <code>DryRunOperation</code>. 59 * Otherwise, it is <code>UnauthorizedOperation</code>.</p> 60 */ SetDryRun(bool value)61 inline void SetDryRun(bool value) { m_dryRunHasBeenSet = true; m_dryRun = value; } 62 63 /** 64 * <p>Checks whether you have the required permissions for the action, without 65 * actually making the request, and provides an error response. If you have the 66 * required permissions, the error response is <code>DryRunOperation</code>. 67 * Otherwise, it is <code>UnauthorizedOperation</code>.</p> 68 */ WithDryRun(bool value)69 inline DeregisterInstanceEventNotificationAttributesRequest& WithDryRun(bool value) { SetDryRun(value); return *this;} 70 71 72 /** 73 * <p>Information about the tag keys to deregister.</p> 74 */ GetInstanceTagAttribute()75 inline const DeregisterInstanceTagAttributeRequest& GetInstanceTagAttribute() const{ return m_instanceTagAttribute; } 76 77 /** 78 * <p>Information about the tag keys to deregister.</p> 79 */ InstanceTagAttributeHasBeenSet()80 inline bool InstanceTagAttributeHasBeenSet() const { return m_instanceTagAttributeHasBeenSet; } 81 82 /** 83 * <p>Information about the tag keys to deregister.</p> 84 */ SetInstanceTagAttribute(const DeregisterInstanceTagAttributeRequest & value)85 inline void SetInstanceTagAttribute(const DeregisterInstanceTagAttributeRequest& value) { m_instanceTagAttributeHasBeenSet = true; m_instanceTagAttribute = value; } 86 87 /** 88 * <p>Information about the tag keys to deregister.</p> 89 */ SetInstanceTagAttribute(DeregisterInstanceTagAttributeRequest && value)90 inline void SetInstanceTagAttribute(DeregisterInstanceTagAttributeRequest&& value) { m_instanceTagAttributeHasBeenSet = true; m_instanceTagAttribute = std::move(value); } 91 92 /** 93 * <p>Information about the tag keys to deregister.</p> 94 */ WithInstanceTagAttribute(const DeregisterInstanceTagAttributeRequest & value)95 inline DeregisterInstanceEventNotificationAttributesRequest& WithInstanceTagAttribute(const DeregisterInstanceTagAttributeRequest& value) { SetInstanceTagAttribute(value); return *this;} 96 97 /** 98 * <p>Information about the tag keys to deregister.</p> 99 */ WithInstanceTagAttribute(DeregisterInstanceTagAttributeRequest && value)100 inline DeregisterInstanceEventNotificationAttributesRequest& WithInstanceTagAttribute(DeregisterInstanceTagAttributeRequest&& value) { SetInstanceTagAttribute(std::move(value)); return *this;} 101 102 private: 103 104 bool m_dryRun; 105 bool m_dryRunHasBeenSet; 106 107 DeregisterInstanceTagAttributeRequest m_instanceTagAttribute; 108 bool m_instanceTagAttributeHasBeenSet; 109 }; 110 111 } // namespace Model 112 } // namespace EC2 113 } // namespace Aws 114