Class AzureBlobStorageFactory


  • @Factory
    public class AzureBlobStorageFactory
    extends java.lang.Object

    Creates beans of the following types:

    • For each AzureBlobStorageConfiguration, creates a BlobServiceClientBuilder.
    • For each BlobServiceClientBuilder, creates a BlobServiceClient
    • For each BlobServiceClient, creates a BlobContainerClient
    Since:
    1.0
    • Constructor Detail

      • AzureBlobStorageFactory

        public AzureBlobStorageFactory​(io.micronaut.context.BeanContext beanContext)
    • Method Detail

      • blobServiceClientBuilderWithTokenCredential

        @EachBean(AzureBlobStorageConfiguration.class)
        @Requires(bean=com.azure.core.credential.TokenCredential.class) @Requires(missingBeans=com.azure.storage.common.StorageSharedKeyCredential.class)
        public com.azure.storage.blob.BlobServiceClientBuilder blobServiceClientBuilderWithTokenCredential​(AzureBlobStorageConfiguration configuration,
                                                                                                           @NonNull
                                                                                                           com.azure.core.credential.TokenCredential tokenCredential)
        Parameters:
        configuration - the configuration
        tokenCredential - the token credential
        Returns:
        the BlobServiceClientBuilder
      • blobServiceClientBuilderWithSharedKeyCredential

        @EachBean(AzureBlobStorageConfiguration.class)
        @Requires(bean=com.azure.storage.common.StorageSharedKeyCredential.class)
        public com.azure.storage.blob.BlobServiceClientBuilder blobServiceClientBuilderWithSharedKeyCredential​(AzureBlobStorageConfiguration configuration,
                                                                                                               @NonNull
                                                                                                               com.azure.storage.common.StorageSharedKeyCredential sharedKeyCredential)
        Parameters:
        configuration - the configuration
        sharedKeyCredential - the shared key credential
        Returns:
        the BlobServiceClientBuilder
      • blobServiceClient

        @EachBean(com.azure.storage.blob.BlobServiceClientBuilder.class)
        public com.azure.storage.blob.BlobServiceClient blobServiceClient​(@NonNull
                                                                          com.azure.storage.blob.BlobServiceClientBuilder builder)
        Parameters:
        builder - the builder
        Returns:
        the BlobServiceClient
      • blobContainerClient

        @EachBean(com.azure.storage.blob.BlobServiceClient.class)
        public com.azure.storage.blob.BlobContainerClient blobContainerClient​(@Parameter
                                                                              java.lang.String name,
                                                                              @NonNull
                                                                              com.azure.storage.blob.BlobServiceClient serviceClient)
        Parameters:
        name - The configuration
        serviceClient - The service client
        Returns:
        The BlobContainerClient