/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace StorageGateway { namespace Model { /** *

DeleteTapeInput

See Also:

AWS * API Reference

*/ class DeleteTapeRequest : public StorageGatewayRequest { public: AWS_STORAGEGATEWAY_API DeleteTapeRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "DeleteTape"; } AWS_STORAGEGATEWAY_API Aws::String SerializePayload() const override; AWS_STORAGEGATEWAY_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The unique Amazon Resource Name (ARN) of the gateway that the virtual tape to * delete is associated with. Use the ListGateways operation to return a * list of gateways for your account and Amazon Web Services Region.

*/ inline const Aws::String& GetGatewayARN() const{ return m_gatewayARN; } /** *

The unique Amazon Resource Name (ARN) of the gateway that the virtual tape to * delete is associated with. Use the ListGateways operation to return a * list of gateways for your account and Amazon Web Services Region.

*/ inline bool GatewayARNHasBeenSet() const { return m_gatewayARNHasBeenSet; } /** *

The unique Amazon Resource Name (ARN) of the gateway that the virtual tape to * delete is associated with. Use the ListGateways operation to return a * list of gateways for your account and Amazon Web Services Region.

*/ inline void SetGatewayARN(const Aws::String& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = value; } /** *

The unique Amazon Resource Name (ARN) of the gateway that the virtual tape to * delete is associated with. Use the ListGateways operation to return a * list of gateways for your account and Amazon Web Services Region.

*/ inline void SetGatewayARN(Aws::String&& value) { m_gatewayARNHasBeenSet = true; m_gatewayARN = std::move(value); } /** *

The unique Amazon Resource Name (ARN) of the gateway that the virtual tape to * delete is associated with. Use the ListGateways operation to return a * list of gateways for your account and Amazon Web Services Region.

*/ inline void SetGatewayARN(const char* value) { m_gatewayARNHasBeenSet = true; m_gatewayARN.assign(value); } /** *

The unique Amazon Resource Name (ARN) of the gateway that the virtual tape to * delete is associated with. Use the ListGateways operation to return a * list of gateways for your account and Amazon Web Services Region.

*/ inline DeleteTapeRequest& WithGatewayARN(const Aws::String& value) { SetGatewayARN(value); return *this;} /** *

The unique Amazon Resource Name (ARN) of the gateway that the virtual tape to * delete is associated with. Use the ListGateways operation to return a * list of gateways for your account and Amazon Web Services Region.

*/ inline DeleteTapeRequest& WithGatewayARN(Aws::String&& value) { SetGatewayARN(std::move(value)); return *this;} /** *

The unique Amazon Resource Name (ARN) of the gateway that the virtual tape to * delete is associated with. Use the ListGateways operation to return a * list of gateways for your account and Amazon Web Services Region.

*/ inline DeleteTapeRequest& WithGatewayARN(const char* value) { SetGatewayARN(value); return *this;} /** *

The Amazon Resource Name (ARN) of the virtual tape to delete.

*/ inline const Aws::String& GetTapeARN() const{ return m_tapeARN; } /** *

The Amazon Resource Name (ARN) of the virtual tape to delete.

*/ inline bool TapeARNHasBeenSet() const { return m_tapeARNHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the virtual tape to delete.

*/ inline void SetTapeARN(const Aws::String& value) { m_tapeARNHasBeenSet = true; m_tapeARN = value; } /** *

The Amazon Resource Name (ARN) of the virtual tape to delete.

*/ inline void SetTapeARN(Aws::String&& value) { m_tapeARNHasBeenSet = true; m_tapeARN = std::move(value); } /** *

The Amazon Resource Name (ARN) of the virtual tape to delete.

*/ inline void SetTapeARN(const char* value) { m_tapeARNHasBeenSet = true; m_tapeARN.assign(value); } /** *

The Amazon Resource Name (ARN) of the virtual tape to delete.

*/ inline DeleteTapeRequest& WithTapeARN(const Aws::String& value) { SetTapeARN(value); return *this;} /** *

The Amazon Resource Name (ARN) of the virtual tape to delete.

*/ inline DeleteTapeRequest& WithTapeARN(Aws::String&& value) { SetTapeARN(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the virtual tape to delete.

*/ inline DeleteTapeRequest& WithTapeARN(const char* value) { SetTapeARN(value); return *this;} /** *

Set to TRUE to delete an archived tape that belongs to a custom * pool with tape retention lock. Only archived tapes with tape retention lock set * to governance can be deleted. Archived tapes with tape retention * lock set to compliance can't be deleted.

*/ inline bool GetBypassGovernanceRetention() const{ return m_bypassGovernanceRetention; } /** *

Set to TRUE to delete an archived tape that belongs to a custom * pool with tape retention lock. Only archived tapes with tape retention lock set * to governance can be deleted. Archived tapes with tape retention * lock set to compliance can't be deleted.

*/ inline bool BypassGovernanceRetentionHasBeenSet() const { return m_bypassGovernanceRetentionHasBeenSet; } /** *

Set to TRUE to delete an archived tape that belongs to a custom * pool with tape retention lock. Only archived tapes with tape retention lock set * to governance can be deleted. Archived tapes with tape retention * lock set to compliance can't be deleted.

*/ inline void SetBypassGovernanceRetention(bool value) { m_bypassGovernanceRetentionHasBeenSet = true; m_bypassGovernanceRetention = value; } /** *

Set to TRUE to delete an archived tape that belongs to a custom * pool with tape retention lock. Only archived tapes with tape retention lock set * to governance can be deleted. Archived tapes with tape retention * lock set to compliance can't be deleted.

*/ inline DeleteTapeRequest& WithBypassGovernanceRetention(bool value) { SetBypassGovernanceRetention(value); return *this;} private: Aws::String m_gatewayARN; bool m_gatewayARNHasBeenSet = false; Aws::String m_tapeARN; bool m_tapeARNHasBeenSet = false; bool m_bypassGovernanceRetention; bool m_bypassGovernanceRetentionHasBeenSet = false; }; } // namespace Model } // namespace StorageGateway } // namespace Aws