Package org.apache.bookkeeper.mledger
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 TypeMethodDescriptiondefault voidclose()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 Tcreate(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 Tcreate(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.booleanisDriverSupported(String driverName) Check whether the provided driver driverName is supported.
-
Method Details
-
isDriverSupported
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 IOExceptionCreate a ledger offloader with the provided configuration, user-metadata, scheduler and offloaderStats.- Parameters:
offloadPolicies- offload policiesuserMetadata- user metadatascheduler- 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 IOExceptionCreate a ledger offloader with the provided configuration, user-metadata, scheduler and offloaderStats.- Parameters:
offloadPolicies- offload policiesuserMetadata- user metadatascheduler- scheduleroffloaderStats- 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 IOExceptionCreate a ledger offloader with the provided configuration, user-metadata, schema storage and scheduler.- Parameters:
offloadPolicies- offload policiesuserMetadata- user metadataschemaStorage- used for schema lookup in offloaderscheduler- 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 IOExceptionCreate a ledger offloader with the provided configuration, user-metadata, schema storage, scheduler and offloaderStats.- Parameters:
offloadPolicies- offload policiesuserMetadata- user metadataschemaStorage- used for schema lookup in offloaderscheduler- scheduleroffloaderStats- offloaderStats- Returns:
- the offloader instance
- Throws:
IOException- when fail to create an offloader
-
close
- Specified by:
closein interfaceAutoCloseable- Throws:
Exception
-