Class AbstractStorageClientFactory<CREDENTIAL,CLIENT>

java.lang.Object
org.apache.nifi.processors.azure.storage.utils.AbstractStorageClientFactory<CREDENTIAL,CLIENT>
Direct Known Subclasses:
BlobServiceClientFactory, DataLakeServiceClientFactory

abstract class AbstractStorageClientFactory<CREDENTIAL,CLIENT> extends Object
  • Field Details

    • STORAGE_CLIENT_CACHE_SIZE

      private static final long STORAGE_CLIENT_CACHE_SIZE
      See Also:
    • logger

      private final org.apache.nifi.logging.ComponentLog logger
    • proxyOptions

      private final com.azure.core.http.ProxyOptions proxyOptions
    • clientCache

      private final com.github.benmanes.caffeine.cache.Cache<CREDENTIAL,CLIENT> clientCache
  • Constructor Details

    • AbstractStorageClientFactory

      protected AbstractStorageClientFactory(org.apache.nifi.logging.ComponentLog logger, com.azure.core.http.ProxyOptions proxyOptions)
  • Method Details

    • createCache

      private com.github.benmanes.caffeine.cache.Cache<CREDENTIAL,CLIENT> createCache()
    • getStorageClient

      public CLIENT getStorageClient(CREDENTIAL credentialsDetails)
      Retrieves storage client object
      Parameters:
      credentialsDetails - used for caching because it can contain properties that are results of an expression
      Returns:
      CLIENT
    • createStorageClient

      protected abstract CLIENT createStorageClient(CREDENTIAL credentialsDetails, com.azure.core.http.ProxyOptions proxyOptions)