Interface LedgerOffloaderFactory<T extends LedgerOffloader>

All Superinterfaces:
AutoCloseable

@LimitedPrivate @Evolving public interface LedgerOffloaderFactory<T extends LedgerOffloader> extends AutoCloseable
Factory to create LedgerOffloader to offload ledgers into long-term storage.
  • Method Summary

    Modifier and Type
    Method
    Description
    default void
     
    create(OffloadPoliciesImpl offloadPolicies, Map<String,String> userMetadata, org.apache.bookkeeper.common.util.OrderedScheduler scheduler)
    Create a ledger offloader with the provided configuration, user-metadata, scheduler and offloaderStats.
    create(OffloadPoliciesImpl offloadPolicies, Map<String,String> userMetadata, org.apache.bookkeeper.common.util.OrderedScheduler scheduler, LedgerOffloaderStats offloaderStats)
    Create a ledger offloader with the provided configuration, user-metadata, scheduler and offloaderStats.
    default T
    create(OffloadPoliciesImpl offloadPolicies, Map<String,String> userMetadata, SchemaStorage schemaStorage, org.apache.bookkeeper.common.util.OrderedScheduler scheduler)
    Create a ledger offloader with the provided configuration, user-metadata, schema storage and scheduler.
    default T
    create(OffloadPoliciesImpl offloadPolicies, Map<String,String> userMetadata, SchemaStorage schemaStorage, org.apache.bookkeeper.common.util.OrderedScheduler scheduler, LedgerOffloaderStats offloaderStats)
    Create a ledger offloader with the provided configuration, user-metadata, schema storage, scheduler and offloaderStats.
    boolean
    Check whether the provided driver driverName is supported.
  • Method Details

    • isDriverSupported

      boolean isDriverSupported(String driverName)
      Check whether the provided driver driverName is supported.
      Parameters:
      driverName - offloader driver name
      Returns:
      true if the driver is supported, otherwise false.
    • create

      T create(OffloadPoliciesImpl offloadPolicies, Map<String,String> userMetadata, org.apache.bookkeeper.common.util.OrderedScheduler scheduler) throws IOException
      Create a ledger offloader with the provided configuration, user-metadata, scheduler and offloaderStats.
      Parameters:
      offloadPolicies - offload policies
      userMetadata - user metadata
      scheduler - scheduler
      Returns:
      the offloader instance
      Throws:
      IOException - when fail to create an offloader
    • create

      T create(OffloadPoliciesImpl offloadPolicies, Map<String,String> userMetadata, org.apache.bookkeeper.common.util.OrderedScheduler scheduler, LedgerOffloaderStats offloaderStats) throws IOException
      Create a ledger offloader with the provided configuration, user-metadata, scheduler and offloaderStats.
      Parameters:
      offloadPolicies - offload policies
      userMetadata - user metadata
      scheduler - scheduler
      offloaderStats - offloaderStats
      Returns:
      the offloader instance
      Throws:
      IOException - when fail to create an offloader
    • create

      default T create(OffloadPoliciesImpl offloadPolicies, Map<String,String> userMetadata, SchemaStorage schemaStorage, org.apache.bookkeeper.common.util.OrderedScheduler scheduler) throws IOException
      Create a ledger offloader with the provided configuration, user-metadata, schema storage and scheduler.
      Parameters:
      offloadPolicies - offload policies
      userMetadata - user metadata
      schemaStorage - used for schema lookup in offloader
      scheduler - scheduler
      Returns:
      the offloader instance
      Throws:
      IOException - when fail to create an offloader
    • create

      default T create(OffloadPoliciesImpl offloadPolicies, Map<String,String> userMetadata, SchemaStorage schemaStorage, org.apache.bookkeeper.common.util.OrderedScheduler scheduler, LedgerOffloaderStats offloaderStats) throws IOException
      Create a ledger offloader with the provided configuration, user-metadata, schema storage, scheduler and offloaderStats.
      Parameters:
      offloadPolicies - offload policies
      userMetadata - user metadata
      schemaStorage - used for schema lookup in offloader
      scheduler - scheduler
      offloaderStats - offloaderStats
      Returns:
      the offloader instance
      Throws:
      IOException - when fail to create an offloader
    • close

      default void close() throws Exception
      Specified by:
      close in interface AutoCloseable
      Throws:
      Exception