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/iotsecuretunneling/IoTSecureTunneling_EXPORTS.h> 8 #include <aws/iotsecuretunneling/IoTSecureTunnelingRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <utility> 11 12 namespace Aws 13 { 14 namespace IoTSecureTunneling 15 { 16 namespace Model 17 { 18 19 /** 20 */ 21 class AWS_IOTSECURETUNNELING_API CloseTunnelRequest : public IoTSecureTunnelingRequest 22 { 23 public: 24 CloseTunnelRequest(); 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 "CloseTunnel"; } 31 32 Aws::String SerializePayload() const override; 33 34 Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; 35 36 37 /** 38 * <p>The ID of the tunnel to close.</p> 39 */ GetTunnelId()40 inline const Aws::String& GetTunnelId() const{ return m_tunnelId; } 41 42 /** 43 * <p>The ID of the tunnel to close.</p> 44 */ TunnelIdHasBeenSet()45 inline bool TunnelIdHasBeenSet() const { return m_tunnelIdHasBeenSet; } 46 47 /** 48 * <p>The ID of the tunnel to close.</p> 49 */ SetTunnelId(const Aws::String & value)50 inline void SetTunnelId(const Aws::String& value) { m_tunnelIdHasBeenSet = true; m_tunnelId = value; } 51 52 /** 53 * <p>The ID of the tunnel to close.</p> 54 */ SetTunnelId(Aws::String && value)55 inline void SetTunnelId(Aws::String&& value) { m_tunnelIdHasBeenSet = true; m_tunnelId = std::move(value); } 56 57 /** 58 * <p>The ID of the tunnel to close.</p> 59 */ SetTunnelId(const char * value)60 inline void SetTunnelId(const char* value) { m_tunnelIdHasBeenSet = true; m_tunnelId.assign(value); } 61 62 /** 63 * <p>The ID of the tunnel to close.</p> 64 */ WithTunnelId(const Aws::String & value)65 inline CloseTunnelRequest& WithTunnelId(const Aws::String& value) { SetTunnelId(value); return *this;} 66 67 /** 68 * <p>The ID of the tunnel to close.</p> 69 */ WithTunnelId(Aws::String && value)70 inline CloseTunnelRequest& WithTunnelId(Aws::String&& value) { SetTunnelId(std::move(value)); return *this;} 71 72 /** 73 * <p>The ID of the tunnel to close.</p> 74 */ WithTunnelId(const char * value)75 inline CloseTunnelRequest& WithTunnelId(const char* value) { SetTunnelId(value); return *this;} 76 77 78 /** 79 * <p>When set to true, AWS IoT Secure Tunneling deletes the tunnel data 80 * immediately.</p> 81 */ GetDelete()82 inline bool GetDelete() const{ return m_delete; } 83 84 /** 85 * <p>When set to true, AWS IoT Secure Tunneling deletes the tunnel data 86 * immediately.</p> 87 */ DeleteHasBeenSet()88 inline bool DeleteHasBeenSet() const { return m_deleteHasBeenSet; } 89 90 /** 91 * <p>When set to true, AWS IoT Secure Tunneling deletes the tunnel data 92 * immediately.</p> 93 */ SetDelete(bool value)94 inline void SetDelete(bool value) { m_deleteHasBeenSet = true; m_delete = value; } 95 96 /** 97 * <p>When set to true, AWS IoT Secure Tunneling deletes the tunnel data 98 * immediately.</p> 99 */ WithDelete(bool value)100 inline CloseTunnelRequest& WithDelete(bool value) { SetDelete(value); return *this;} 101 102 private: 103 104 Aws::String m_tunnelId; 105 bool m_tunnelIdHasBeenSet; 106 107 bool m_delete; 108 bool m_deleteHasBeenSet; 109 }; 110 111 } // namespace Model 112 } // namespace IoTSecureTunneling 113 } // namespace Aws 114