/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include #include #include namespace Aws { namespace DataSync { namespace Model { /** */ class UpdateLocationAzureBlobRequest : public DataSyncRequest { public: AWS_DATASYNC_API UpdateLocationAzureBlobRequest(); // 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 "UpdateLocationAzureBlob"; } AWS_DATASYNC_API Aws::String SerializePayload() const override; AWS_DATASYNC_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

Specifies the ARN of the Azure Blob Storage transfer location that you're * updating.

*/ inline const Aws::String& GetLocationArn() const{ return m_locationArn; } /** *

Specifies the ARN of the Azure Blob Storage transfer location that you're * updating.

*/ inline bool LocationArnHasBeenSet() const { return m_locationArnHasBeenSet; } /** *

Specifies the ARN of the Azure Blob Storage transfer location that you're * updating.

*/ inline void SetLocationArn(const Aws::String& value) { m_locationArnHasBeenSet = true; m_locationArn = value; } /** *

Specifies the ARN of the Azure Blob Storage transfer location that you're * updating.

*/ inline void SetLocationArn(Aws::String&& value) { m_locationArnHasBeenSet = true; m_locationArn = std::move(value); } /** *

Specifies the ARN of the Azure Blob Storage transfer location that you're * updating.

*/ inline void SetLocationArn(const char* value) { m_locationArnHasBeenSet = true; m_locationArn.assign(value); } /** *

Specifies the ARN of the Azure Blob Storage transfer location that you're * updating.

*/ inline UpdateLocationAzureBlobRequest& WithLocationArn(const Aws::String& value) { SetLocationArn(value); return *this;} /** *

Specifies the ARN of the Azure Blob Storage transfer location that you're * updating.

*/ inline UpdateLocationAzureBlobRequest& WithLocationArn(Aws::String&& value) { SetLocationArn(std::move(value)); return *this;} /** *

Specifies the ARN of the Azure Blob Storage transfer location that you're * updating.

*/ inline UpdateLocationAzureBlobRequest& WithLocationArn(const char* value) { SetLocationArn(value); return *this;} /** *

Specifies path segments if you want to limit your transfer to a virtual * directory in your container (for example, /my/images).

*/ inline const Aws::String& GetSubdirectory() const{ return m_subdirectory; } /** *

Specifies path segments if you want to limit your transfer to a virtual * directory in your container (for example, /my/images).

*/ inline bool SubdirectoryHasBeenSet() const { return m_subdirectoryHasBeenSet; } /** *

Specifies path segments if you want to limit your transfer to a virtual * directory in your container (for example, /my/images).

*/ inline void SetSubdirectory(const Aws::String& value) { m_subdirectoryHasBeenSet = true; m_subdirectory = value; } /** *

Specifies path segments if you want to limit your transfer to a virtual * directory in your container (for example, /my/images).

*/ inline void SetSubdirectory(Aws::String&& value) { m_subdirectoryHasBeenSet = true; m_subdirectory = std::move(value); } /** *

Specifies path segments if you want to limit your transfer to a virtual * directory in your container (for example, /my/images).

*/ inline void SetSubdirectory(const char* value) { m_subdirectoryHasBeenSet = true; m_subdirectory.assign(value); } /** *

Specifies path segments if you want to limit your transfer to a virtual * directory in your container (for example, /my/images).

*/ inline UpdateLocationAzureBlobRequest& WithSubdirectory(const Aws::String& value) { SetSubdirectory(value); return *this;} /** *

Specifies path segments if you want to limit your transfer to a virtual * directory in your container (for example, /my/images).

*/ inline UpdateLocationAzureBlobRequest& WithSubdirectory(Aws::String&& value) { SetSubdirectory(std::move(value)); return *this;} /** *

Specifies path segments if you want to limit your transfer to a virtual * directory in your container (for example, /my/images).

*/ inline UpdateLocationAzureBlobRequest& WithSubdirectory(const char* value) { SetSubdirectory(value); return *this;} /** *

Specifies the authentication method DataSync uses to access your Azure Blob * Storage. DataSync can access blob storage using a shared access signature * (SAS).

*/ inline const AzureBlobAuthenticationType& GetAuthenticationType() const{ return m_authenticationType; } /** *

Specifies the authentication method DataSync uses to access your Azure Blob * Storage. DataSync can access blob storage using a shared access signature * (SAS).

*/ inline bool AuthenticationTypeHasBeenSet() const { return m_authenticationTypeHasBeenSet; } /** *

Specifies the authentication method DataSync uses to access your Azure Blob * Storage. DataSync can access blob storage using a shared access signature * (SAS).

*/ inline void SetAuthenticationType(const AzureBlobAuthenticationType& value) { m_authenticationTypeHasBeenSet = true; m_authenticationType = value; } /** *

Specifies the authentication method DataSync uses to access your Azure Blob * Storage. DataSync can access blob storage using a shared access signature * (SAS).

*/ inline void SetAuthenticationType(AzureBlobAuthenticationType&& value) { m_authenticationTypeHasBeenSet = true; m_authenticationType = std::move(value); } /** *

Specifies the authentication method DataSync uses to access your Azure Blob * Storage. DataSync can access blob storage using a shared access signature * (SAS).

*/ inline UpdateLocationAzureBlobRequest& WithAuthenticationType(const AzureBlobAuthenticationType& value) { SetAuthenticationType(value); return *this;} /** *

Specifies the authentication method DataSync uses to access your Azure Blob * Storage. DataSync can access blob storage using a shared access signature * (SAS).

*/ inline UpdateLocationAzureBlobRequest& WithAuthenticationType(AzureBlobAuthenticationType&& value) { SetAuthenticationType(std::move(value)); return *this;} /** *

Specifies the SAS configuration that allows DataSync to access your Azure * Blob Storage.

*/ inline const AzureBlobSasConfiguration& GetSasConfiguration() const{ return m_sasConfiguration; } /** *

Specifies the SAS configuration that allows DataSync to access your Azure * Blob Storage.

*/ inline bool SasConfigurationHasBeenSet() const { return m_sasConfigurationHasBeenSet; } /** *

Specifies the SAS configuration that allows DataSync to access your Azure * Blob Storage.

*/ inline void SetSasConfiguration(const AzureBlobSasConfiguration& value) { m_sasConfigurationHasBeenSet = true; m_sasConfiguration = value; } /** *

Specifies the SAS configuration that allows DataSync to access your Azure * Blob Storage.

*/ inline void SetSasConfiguration(AzureBlobSasConfiguration&& value) { m_sasConfigurationHasBeenSet = true; m_sasConfiguration = std::move(value); } /** *

Specifies the SAS configuration that allows DataSync to access your Azure * Blob Storage.

*/ inline UpdateLocationAzureBlobRequest& WithSasConfiguration(const AzureBlobSasConfiguration& value) { SetSasConfiguration(value); return *this;} /** *

Specifies the SAS configuration that allows DataSync to access your Azure * Blob Storage.

*/ inline UpdateLocationAzureBlobRequest& WithSasConfiguration(AzureBlobSasConfiguration&& value) { SetSasConfiguration(std::move(value)); return *this;} /** *

Specifies the type of blob that you want your objects or files to be when * transferring them into Azure Blob Storage. Currently, DataSync only supports * moving data into Azure Blob Storage as block blobs. For more information on blob * types, see the Azure * Blob Storage documentation.

*/ inline const AzureBlobType& GetBlobType() const{ return m_blobType; } /** *

Specifies the type of blob that you want your objects or files to be when * transferring them into Azure Blob Storage. Currently, DataSync only supports * moving data into Azure Blob Storage as block blobs. For more information on blob * types, see the Azure * Blob Storage documentation.

*/ inline bool BlobTypeHasBeenSet() const { return m_blobTypeHasBeenSet; } /** *

Specifies the type of blob that you want your objects or files to be when * transferring them into Azure Blob Storage. Currently, DataSync only supports * moving data into Azure Blob Storage as block blobs. For more information on blob * types, see the Azure * Blob Storage documentation.

*/ inline void SetBlobType(const AzureBlobType& value) { m_blobTypeHasBeenSet = true; m_blobType = value; } /** *

Specifies the type of blob that you want your objects or files to be when * transferring them into Azure Blob Storage. Currently, DataSync only supports * moving data into Azure Blob Storage as block blobs. For more information on blob * types, see the Azure * Blob Storage documentation.

*/ inline void SetBlobType(AzureBlobType&& value) { m_blobTypeHasBeenSet = true; m_blobType = std::move(value); } /** *

Specifies the type of blob that you want your objects or files to be when * transferring them into Azure Blob Storage. Currently, DataSync only supports * moving data into Azure Blob Storage as block blobs. For more information on blob * types, see the Azure * Blob Storage documentation.

*/ inline UpdateLocationAzureBlobRequest& WithBlobType(const AzureBlobType& value) { SetBlobType(value); return *this;} /** *

Specifies the type of blob that you want your objects or files to be when * transferring them into Azure Blob Storage. Currently, DataSync only supports * moving data into Azure Blob Storage as block blobs. For more information on blob * types, see the Azure * Blob Storage documentation.

*/ inline UpdateLocationAzureBlobRequest& WithBlobType(AzureBlobType&& value) { SetBlobType(std::move(value)); return *this;} /** *

Specifies the access tier that you want your objects or files transferred * into. This only applies when using the location as a transfer destination. For * more information, see Access * tiers.

*/ inline const AzureAccessTier& GetAccessTier() const{ return m_accessTier; } /** *

Specifies the access tier that you want your objects or files transferred * into. This only applies when using the location as a transfer destination. For * more information, see Access * tiers.

*/ inline bool AccessTierHasBeenSet() const { return m_accessTierHasBeenSet; } /** *

Specifies the access tier that you want your objects or files transferred * into. This only applies when using the location as a transfer destination. For * more information, see Access * tiers.

*/ inline void SetAccessTier(const AzureAccessTier& value) { m_accessTierHasBeenSet = true; m_accessTier = value; } /** *

Specifies the access tier that you want your objects or files transferred * into. This only applies when using the location as a transfer destination. For * more information, see Access * tiers.

*/ inline void SetAccessTier(AzureAccessTier&& value) { m_accessTierHasBeenSet = true; m_accessTier = std::move(value); } /** *

Specifies the access tier that you want your objects or files transferred * into. This only applies when using the location as a transfer destination. For * more information, see Access * tiers.

*/ inline UpdateLocationAzureBlobRequest& WithAccessTier(const AzureAccessTier& value) { SetAccessTier(value); return *this;} /** *

Specifies the access tier that you want your objects or files transferred * into. This only applies when using the location as a transfer destination. For * more information, see Access * tiers.

*/ inline UpdateLocationAzureBlobRequest& WithAccessTier(AzureAccessTier&& value) { SetAccessTier(std::move(value)); return *this;} /** *

Specifies the Amazon Resource Name (ARN) of the DataSync agent that can * connect with your Azure Blob Storage container.

You can specify more than * one agent. For more information, see Using * multiple agents for your transfer.

*/ inline const Aws::Vector& GetAgentArns() const{ return m_agentArns; } /** *

Specifies the Amazon Resource Name (ARN) of the DataSync agent that can * connect with your Azure Blob Storage container.

You can specify more than * one agent. For more information, see Using * multiple agents for your transfer.

*/ inline bool AgentArnsHasBeenSet() const { return m_agentArnsHasBeenSet; } /** *

Specifies the Amazon Resource Name (ARN) of the DataSync agent that can * connect with your Azure Blob Storage container.

You can specify more than * one agent. For more information, see Using * multiple agents for your transfer.

*/ inline void SetAgentArns(const Aws::Vector& value) { m_agentArnsHasBeenSet = true; m_agentArns = value; } /** *

Specifies the Amazon Resource Name (ARN) of the DataSync agent that can * connect with your Azure Blob Storage container.

You can specify more than * one agent. For more information, see Using * multiple agents for your transfer.

*/ inline void SetAgentArns(Aws::Vector&& value) { m_agentArnsHasBeenSet = true; m_agentArns = std::move(value); } /** *

Specifies the Amazon Resource Name (ARN) of the DataSync agent that can * connect with your Azure Blob Storage container.

You can specify more than * one agent. For more information, see Using * multiple agents for your transfer.

*/ inline UpdateLocationAzureBlobRequest& WithAgentArns(const Aws::Vector& value) { SetAgentArns(value); return *this;} /** *

Specifies the Amazon Resource Name (ARN) of the DataSync agent that can * connect with your Azure Blob Storage container.

You can specify more than * one agent. For more information, see Using * multiple agents for your transfer.

*/ inline UpdateLocationAzureBlobRequest& WithAgentArns(Aws::Vector&& value) { SetAgentArns(std::move(value)); return *this;} /** *

Specifies the Amazon Resource Name (ARN) of the DataSync agent that can * connect with your Azure Blob Storage container.

You can specify more than * one agent. For more information, see Using * multiple agents for your transfer.

*/ inline UpdateLocationAzureBlobRequest& AddAgentArns(const Aws::String& value) { m_agentArnsHasBeenSet = true; m_agentArns.push_back(value); return *this; } /** *

Specifies the Amazon Resource Name (ARN) of the DataSync agent that can * connect with your Azure Blob Storage container.

You can specify more than * one agent. For more information, see Using * multiple agents for your transfer.

*/ inline UpdateLocationAzureBlobRequest& AddAgentArns(Aws::String&& value) { m_agentArnsHasBeenSet = true; m_agentArns.push_back(std::move(value)); return *this; } /** *

Specifies the Amazon Resource Name (ARN) of the DataSync agent that can * connect with your Azure Blob Storage container.

You can specify more than * one agent. For more information, see Using * multiple agents for your transfer.

*/ inline UpdateLocationAzureBlobRequest& AddAgentArns(const char* value) { m_agentArnsHasBeenSet = true; m_agentArns.push_back(value); return *this; } private: Aws::String m_locationArn; bool m_locationArnHasBeenSet = false; Aws::String m_subdirectory; bool m_subdirectoryHasBeenSet = false; AzureBlobAuthenticationType m_authenticationType; bool m_authenticationTypeHasBeenSet = false; AzureBlobSasConfiguration m_sasConfiguration; bool m_sasConfigurationHasBeenSet = false; AzureBlobType m_blobType; bool m_blobTypeHasBeenSet = false; AzureAccessTier m_accessTier; bool m_accessTierHasBeenSet = false; Aws::Vector m_agentArns; bool m_agentArnsHasBeenSet = false; }; } // namespace Model } // namespace DataSync } // namespace Aws