Interface BlobStoreApi

All Known Implementing Classes:
BlobStoreApiImpl

@ExtensionPoint public interface BlobStoreApi
  • Method Details

    • createContainer

      void createContainer(String accountName, String containerName)
    • deleteContainer

      void deleteContainer(String accountName, String containerName)
    • exists

      boolean exists(String accountName, String containerName)
    • createContainerSasToken

      String createContainerSasToken(String accountName, String containerName, String accessSpec, OffsetDateTime expiry)
    • listContainer

      List<com.azure.storage.blob.models.BlobItem> listContainer(String accountName, String containerName)
    • listContainerFolder

      List<com.azure.storage.blob.models.BlobItem> listContainerFolder(String accountName, String containerName, String directory)
      List all blobs from given folder in the container on a storage account.
      Parameters:
      accountName - The name of the storage account
      containerName - The name of the container within the storage account
      directory - The name of the folder within the container of the storage account
      Returns:
      Lazy loaded list of blobs from folder specified by the input parameters
    • putBlob

      void putBlob(String accountName, String containerName, String blobName, byte[] data)
    • createAccountSas

      String createAccountSas(String accountName, String containerName, String racwxdl, OffsetDateTime expiry)
    • getBlob

      byte[] getBlob(String account, String container, String blobName)
    • getBlobAdapter

      BlobAdapter getBlobAdapter(String accountName, String containerName, String blobName, String sharedKey)
      Get a blob adapter containing convenience methods for working on blob objects on a storage account. This method accepts storage account key credential, and it is used in a context, where unlimited access to a storage account is required.
      Parameters:
      accountName - The name of the storage account
      containerName - The name of the container within the storage account
      blobName - The name of the blob within the container of the storage account
      sharedKey - The storage account key credential
      Returns:
      The blob adapter corresponding to the blob specified by the input parameters
    • getBlobAdapter

      BlobAdapter getBlobAdapter(String accountName, String containerName, String blobName, com.azure.core.credential.AzureSasCredential credential)
      Get a blob adapter containing convenience methods for working on blob objects on a storage account. This method accepts a SAS (Shared Access Signature) token as a credential, and it's typically used for accessing a storage account with limited sets of privileges. Pls. refer to the Azure SAS documentation for further details.
      Parameters:
      accountName - The name of the storage account
      containerName - The name of the container within the storage account
      blobName - The name of the blob within the container of the storage account
      credential - A valid SAS token
      Returns:
      The blob adapter corresponding to the blob specified by the input parameters
    • getBlobAdapter

      BlobAdapter getBlobAdapter(String accountName, String containerName, String blobName)
      Get a blob adapter containing convenience methods for working on blob objects on a storage account. This method doesn't require any credentials; it uses DefaultAzureCredentialBuilder, which contains an authentication flow consisting of several authentication mechanisms to be tried in a specific order. Pls. refer to the official documentation for further details, i.e. the list of mechanisms tried.
      Parameters:
      accountName - The name of the storage account
      containerName - The name of the container within the storage account
      blobName - The name of the blob within the container of the storage account
      Returns:
      The blob adapter corresponding to the blob specified by the input parameters