Package com.palantir.atlasdb.spi
Interface AtlasDbFactory
-
public interface AtlasDbFactory
-
-
Field Summary
Fields Modifier and Type Field Description static boolean
DEFAULT_INITIALIZE_ASYNC
static com.palantir.logsafe.logger.SafeLogger
log
static long
NO_OP_FAST_FORWARD_TIMESTAMP
static java.util.function.LongSupplier
THROWING_FRESH_TIMESTAMP_SOURCE
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description DerivedSnapshotConfig
createDerivedSnapshotConfig(KeyValueServiceConfig config, Optional<KeyValueServiceRuntimeConfig> runtimeConfigSnapshot)
Creates aDerivedSnapshotConfig
that is derived from aKeyValueServiceConfig
, and where necessary, a snapshot of aKeyValueServiceRuntimeConfig
.com.palantir.timestamp.ManagedTimestampService
createManagedTimestampService(KeyValueService rawKvs, Optional<TableReference> tableReferenceOverride, boolean initializeAsync)
KeyValueService
createRawKeyValueService(MetricsManager metricsManager, KeyValueServiceConfig config, com.palantir.refreshable.Refreshable<Optional<KeyValueServiceRuntimeConfig>> runtimeConfig, Optional<LeaderConfig> leaderConfig, Optional<String> namespace, java.util.function.LongSupplier freshTimestampSource, boolean initializeAsync)
Creates a KeyValueService instance of type according to the config parameter.default com.palantir.timestamp.TimestampStoreInvalidator
createTimestampStoreInvalidator(KeyValueService rawKvs, Optional<TableReference> tableReferenceOverride)
String
getType()
-
-
-
Field Detail
-
log
static final com.palantir.logsafe.logger.SafeLogger log
-
NO_OP_FAST_FORWARD_TIMESTAMP
static final long NO_OP_FAST_FORWARD_TIMESTAMP
- See Also:
- Constant Field Values
-
DEFAULT_INITIALIZE_ASYNC
static final boolean DEFAULT_INITIALIZE_ASYNC
- See Also:
- Constant Field Values
-
THROWING_FRESH_TIMESTAMP_SOURCE
static final java.util.function.LongSupplier THROWING_FRESH_TIMESTAMP_SOURCE
-
-
Method Detail
-
getType
String getType()
-
createRawKeyValueService
KeyValueService createRawKeyValueService(MetricsManager metricsManager, KeyValueServiceConfig config, com.palantir.refreshable.Refreshable<Optional<KeyValueServiceRuntimeConfig>> runtimeConfig, Optional<LeaderConfig> leaderConfig, Optional<String> namespace, java.util.function.LongSupplier freshTimestampSource, boolean initializeAsync)
Creates a KeyValueService instance of type according to the config parameter.- Parameters:
config
- Configuration file.runtimeConfig
- Runtime configuration file.leaderConfig
- If the implementation supports it, the optional leader configuration.namespace
- If the implementation supports it, this is the namespace to use when the namespace in config is absent. If both are present, they must match.freshTimestampSource
- If present, a source of fresh timestamps, which may be relevant for some KVS operations.initializeAsync
- If the implementations supports it, and initializeAsync is true, the KVS will initialize asynchronously when synchronous initialization fails.- Returns:
- The requested KeyValueService instance
-
createDerivedSnapshotConfig
DerivedSnapshotConfig createDerivedSnapshotConfig(KeyValueServiceConfig config, Optional<KeyValueServiceRuntimeConfig> runtimeConfigSnapshot)
Creates aDerivedSnapshotConfig
that is derived from aKeyValueServiceConfig
, and where necessary, a snapshot of aKeyValueServiceRuntimeConfig
. Note: The resultantDerivedSnapshotConfig
will not reflect any updates to theKeyValueServiceRuntimeConfig
- Parameters:
config
- Static configuration.runtimeConfigSnapshot
- Snapshot of a live-reloadable configuration.- Returns:
- A DerivedSnapshotConfig that is derived from config and runtimeConfig.
-
createManagedTimestampService
com.palantir.timestamp.ManagedTimestampService createManagedTimestampService(KeyValueService rawKvs, Optional<TableReference> tableReferenceOverride, boolean initializeAsync)
-
createTimestampStoreInvalidator
default com.palantir.timestamp.TimestampStoreInvalidator createTimestampStoreInvalidator(KeyValueService rawKvs, Optional<TableReference> tableReferenceOverride)
-
-