C# Class azurecopy.AzureFileHandler

Inheritance: IBlobHandler
Afficher le fichier Open project: kpfaulkner/azurecopy Class Usage Examples

Méthodes publiques

Méthode Description
AzureFileHandler ( string url ) : System

base url HAS to be passed in.

GetBaseUrl ( ) : string
GetBlobNameFromUrl ( string url ) : string

Gets blob name from the full url. This is cloud specific.

GetContainer ( string url ) : Microsoft.WindowsAzure.Storage.File.CloudFileDirectory
GetContainerNameFromUrl ( string url ) : string

Gets container name from the full url. This is cloud specific.

ListBlobsInContainer ( string containerName = null, string blobPrefix = null, bool debug = false ) : IEnumerable

Lists all blobs in a container. Can be supplied a blobPrefix which basically acts as virtual directory options. eg, if we have blobs called: "virt1/virt2/myblob" and "virt1/virt2/myblob2" Although the blob names are the complete strings mentioned above, we might like to think that the blobs are just called myblob and myblob2. We can supply a blobPrefix of "virt1/virt2/" which we can *think* of as a directory, but again, its just really a prefix behind the scenes. For other sytems (not Azure) the blobPrefix might be real directories.... will need to investigate

ListContainers ( string root ) : List

List containers/directories off the root. For storage schemes that allow real directories maybe the root will be

MakeContainer ( string containerName ) : void

Make container/directory (depending on platform).

MoveBlob ( string originContainer, string destinationContainer, string startBlobname ) : void

Move blob

OverrideConfiguration ( string>.Dictionary configuration ) : void
ReadBlob ( string containerName, string blobName, string cacheFilePath = "" ) : Blob

Read blob.

ReadBlobSimple ( string container, string blobName, string filePath = "" ) : Blob
WriteBlob ( string containerName, string blobName, Blob blob, int parallelUploadFactor = 1, int chunkSizeInMB = 4 ) : void

Write blob

Private Methods

Méthode Description
ParallelWriteBlockBlob ( Stream stream, Microsoft.WindowsAzure.Storage.Blob.CloudBlockBlob blob, int parallelFactor, int chunkSizeInMB ) : void

Upload in parallel. If total size of file is smaller than chunkSize, then simply split length by parallel factor.

ReadBlockBlob ( ICloudBlob blobRef, string fileName = "" ) : Blob
ReadPageBlob ( ICloudBlob blobRef, string fileName = "" ) : Blob
WriteBlockBlob ( Stream stream, Blob blob, Microsoft.WindowsAzure.Storage.Blob.CloudBlobContainer container, int parallelFactor = 1, int chunkSizeInMB = 2 ) : void
WritePageBlob ( Stream stream, Blob blob, Microsoft.WindowsAzure.Storage.Blob.CloudBlobContainer container, int parallelFactor = 1, int chunkSizeInMB = 2 ) : void

Method Details

AzureFileHandler() public méthode

base url HAS to be passed in.
public AzureFileHandler ( string url ) : System
url string
Résultat System

GetBaseUrl() public méthode

public GetBaseUrl ( ) : string
Résultat string

GetBlobNameFromUrl() public méthode

Gets blob name from the full url. This is cloud specific.
public GetBlobNameFromUrl ( string url ) : string
url string
Résultat string

GetContainer() public méthode

public GetContainer ( string url ) : Microsoft.WindowsAzure.Storage.File.CloudFileDirectory
url string
Résultat Microsoft.WindowsAzure.Storage.File.CloudFileDirectory

GetContainerNameFromUrl() public méthode

Gets container name from the full url. This is cloud specific.
public GetContainerNameFromUrl ( string url ) : string
url string
Résultat string

ListBlobsInContainer() public méthode

Lists all blobs in a container. Can be supplied a blobPrefix which basically acts as virtual directory options. eg, if we have blobs called: "virt1/virt2/myblob" and "virt1/virt2/myblob2" Although the blob names are the complete strings mentioned above, we might like to think that the blobs are just called myblob and myblob2. We can supply a blobPrefix of "virt1/virt2/" which we can *think* of as a directory, but again, its just really a prefix behind the scenes. For other sytems (not Azure) the blobPrefix might be real directories.... will need to investigate
public ListBlobsInContainer ( string containerName = null, string blobPrefix = null, bool debug = false ) : IEnumerable
containerName string
blobPrefix string
debug bool
Résultat IEnumerable

ListContainers() public méthode

List containers/directories off the root. For storage schemes that allow real directories maybe the root will be
public ListContainers ( string root ) : List
root string
Résultat List

MakeContainer() public méthode

Make container/directory (depending on platform).
public MakeContainer ( string containerName ) : void
containerName string
Résultat void

MoveBlob() public méthode

Move blob
public MoveBlob ( string originContainer, string destinationContainer, string startBlobname ) : void
originContainer string
destinationContainer string
startBlobname string
Résultat void

OverrideConfiguration() public méthode

public OverrideConfiguration ( string>.Dictionary configuration ) : void
configuration string>.Dictionary
Résultat void

ReadBlob() public méthode

Read blob.
public ReadBlob ( string containerName, string blobName, string cacheFilePath = "" ) : Blob
containerName string
blobName string
cacheFilePath string
Résultat Blob

ReadBlobSimple() public méthode

public ReadBlobSimple ( string container, string blobName, string filePath = "" ) : Blob
container string
blobName string
filePath string
Résultat Blob

WriteBlob() public méthode

Write blob
public WriteBlob ( string containerName, string blobName, Blob blob, int parallelUploadFactor = 1, int chunkSizeInMB = 4 ) : void
containerName string
blobName string
blob Blob
parallelUploadFactor int
chunkSizeInMB int
Résultat void