code: /*
   * Copyright (c) 2022 Airbyte, Inc., all rights reserved.
   */
  
  package io.airbyte.integrations.destination.azure_blob_storage.writer;
  
  import com.azure.storage.blob.specialized.AppendBlobClient;
  import io.airbyte.integrations.destination.azure_blob_storage.AzureBlobStorageDestinationConfig;
  import io.airbyte.protocol.models.ConfiguredAirbyteStream;
  
  /**
   * Create different {@link AzureBlobStorageWriter} based on
   * {@link AzureBlobStorageDestinationConfig}.
   */
  public interface AzureBlobStorageWriterFactory {
  
    AzureBlobStorageWriter create(AzureBlobStorageDestinationConfig config,
                                  AppendBlobClient appendBlobClient,
                                  ConfiguredAirbyteStream configuredStream)
        throws Exception;
  
  }
  