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/storagegateway/StorageGateway_EXPORTS.h> 8 #include <aws/storagegateway/StorageGatewayRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <utility> 11 12 namespace Aws 13 { 14 namespace StorageGateway 15 { 16 namespace Model 17 { 18 19 /** 20 * <p>DeleteTapeArchiveInput</p><p><h3>See Also:</h3> <a 21 * href="http://docs.aws.amazon.com/goto/WebAPI/storagegateway-2013-06-30/DeleteTapeArchiveInput">AWS 22 * API Reference</a></p> 23 */ 24 class AWS_STORAGEGATEWAY_API DeleteTapeArchiveRequest : public StorageGatewayRequest 25 { 26 public: 27 DeleteTapeArchiveRequest(); 28 29 // Service request name is the Operation name which will send this request out, 30 // each operation should has unique request name, so that we can get operation's name from this request. 31 // Note: this is not true for response, multiple operations may have the same response name, 32 // so we can not get operation's name from response. GetServiceRequestName()33 inline virtual const char* GetServiceRequestName() const override { return "DeleteTapeArchive"; } 34 35 Aws::String SerializePayload() const override; 36 37 Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; 38 39 40 /** 41 * <p>The Amazon Resource Name (ARN) of the virtual tape to delete from the virtual 42 * tape shelf (VTS).</p> 43 */ GetTapeARN()44 inline const Aws::String& GetTapeARN() const{ return m_tapeARN; } 45 46 /** 47 * <p>The Amazon Resource Name (ARN) of the virtual tape to delete from the virtual 48 * tape shelf (VTS).</p> 49 */ TapeARNHasBeenSet()50 inline bool TapeARNHasBeenSet() const { return m_tapeARNHasBeenSet; } 51 52 /** 53 * <p>The Amazon Resource Name (ARN) of the virtual tape to delete from the virtual 54 * tape shelf (VTS).</p> 55 */ SetTapeARN(const Aws::String & value)56 inline void SetTapeARN(const Aws::String& value) { m_tapeARNHasBeenSet = true; m_tapeARN = value; } 57 58 /** 59 * <p>The Amazon Resource Name (ARN) of the virtual tape to delete from the virtual 60 * tape shelf (VTS).</p> 61 */ SetTapeARN(Aws::String && value)62 inline void SetTapeARN(Aws::String&& value) { m_tapeARNHasBeenSet = true; m_tapeARN = std::move(value); } 63 64 /** 65 * <p>The Amazon Resource Name (ARN) of the virtual tape to delete from the virtual 66 * tape shelf (VTS).</p> 67 */ SetTapeARN(const char * value)68 inline void SetTapeARN(const char* value) { m_tapeARNHasBeenSet = true; m_tapeARN.assign(value); } 69 70 /** 71 * <p>The Amazon Resource Name (ARN) of the virtual tape to delete from the virtual 72 * tape shelf (VTS).</p> 73 */ WithTapeARN(const Aws::String & value)74 inline DeleteTapeArchiveRequest& WithTapeARN(const Aws::String& value) { SetTapeARN(value); return *this;} 75 76 /** 77 * <p>The Amazon Resource Name (ARN) of the virtual tape to delete from the virtual 78 * tape shelf (VTS).</p> 79 */ WithTapeARN(Aws::String && value)80 inline DeleteTapeArchiveRequest& WithTapeARN(Aws::String&& value) { SetTapeARN(std::move(value)); return *this;} 81 82 /** 83 * <p>The Amazon Resource Name (ARN) of the virtual tape to delete from the virtual 84 * tape shelf (VTS).</p> 85 */ WithTapeARN(const char * value)86 inline DeleteTapeArchiveRequest& WithTapeARN(const char* value) { SetTapeARN(value); return *this;} 87 88 89 /** 90 * <p>Set to <code>TRUE</code> to delete an archived tape that belongs to a custom 91 * pool with tape retention lock. Only archived tapes with tape retention lock set 92 * to <code>governance</code> can be deleted. Archived tapes with tape retention 93 * lock set to <code>compliance</code> can't be deleted.</p> 94 */ GetBypassGovernanceRetention()95 inline bool GetBypassGovernanceRetention() const{ return m_bypassGovernanceRetention; } 96 97 /** 98 * <p>Set to <code>TRUE</code> to delete an archived tape that belongs to a custom 99 * pool with tape retention lock. Only archived tapes with tape retention lock set 100 * to <code>governance</code> can be deleted. Archived tapes with tape retention 101 * lock set to <code>compliance</code> can't be deleted.</p> 102 */ BypassGovernanceRetentionHasBeenSet()103 inline bool BypassGovernanceRetentionHasBeenSet() const { return m_bypassGovernanceRetentionHasBeenSet; } 104 105 /** 106 * <p>Set to <code>TRUE</code> to delete an archived tape that belongs to a custom 107 * pool with tape retention lock. Only archived tapes with tape retention lock set 108 * to <code>governance</code> can be deleted. Archived tapes with tape retention 109 * lock set to <code>compliance</code> can't be deleted.</p> 110 */ SetBypassGovernanceRetention(bool value)111 inline void SetBypassGovernanceRetention(bool value) { m_bypassGovernanceRetentionHasBeenSet = true; m_bypassGovernanceRetention = value; } 112 113 /** 114 * <p>Set to <code>TRUE</code> to delete an archived tape that belongs to a custom 115 * pool with tape retention lock. Only archived tapes with tape retention lock set 116 * to <code>governance</code> can be deleted. Archived tapes with tape retention 117 * lock set to <code>compliance</code> can't be deleted.</p> 118 */ WithBypassGovernanceRetention(bool value)119 inline DeleteTapeArchiveRequest& WithBypassGovernanceRetention(bool value) { SetBypassGovernanceRetention(value); return *this;} 120 121 private: 122 123 Aws::String m_tapeARN; 124 bool m_tapeARNHasBeenSet; 125 126 bool m_bypassGovernanceRetention; 127 bool m_bypassGovernanceRetentionHasBeenSet; 128 }; 129 130 } // namespace Model 131 } // namespace StorageGateway 132 } // namespace Aws 133