S
- The concrete type of LockStatus
B
- The concrete type of the subclass extending this builderpublic abstract static class AbstractLocker.Builder<S,B extends AbstractLocker.Builder<S,B>> extends Object
ConsistentKeyLocker
for an example of how to subclass this
abstract builder into a concrete builder.
If you're wondering why the bounds for the type parameter B
looks so hideous, see:
Modifier and Type | Field and Description |
---|---|
protected LocalLockMediator<StoreTransaction> |
llm |
protected Duration |
lockExpire |
protected LockerState<S> |
lockState |
protected org.slf4j.Logger |
log |
protected StaticBuffer |
rid |
protected ConsistentKeyLockerSerializer |
serializer |
protected TimestampProvider |
times |
Constructor and Description |
---|
Builder() |
Modifier and Type | Method and Description |
---|---|
protected abstract LocalLockMediator<StoreTransaction> |
getDefaultMediator()
Get the default
LocalLockMediator for Locker being built. |
B |
internalState(LockerState<S> state)
This method is only intended for testing.
|
B |
lockExpire(Duration d) |
B |
logger(org.slf4j.Logger log) |
B |
mediator(LocalLockMediator<StoreTransaction> mediator) |
B |
mediatorName(String name)
Retrieve the mediator associated with
name via LocalLockMediators.get(String, TimestampProvider) . |
protected void |
preBuild()
Inspect and modify this builder's state after the client has called
build() , but before a return object has been instantiated. |
B |
rid(StaticBuffer rid) |
protected abstract B |
self()
Concrete subclasses should just "
return this; ". |
B |
serializer(ConsistentKeyLockerSerializer serializer) |
B |
times(TimestampProvider times) |
protected StaticBuffer rid
protected TimestampProvider times
protected ConsistentKeyLockerSerializer serializer
protected LocalLockMediator<StoreTransaction> llm
protected LockerState<S> lockState
protected Duration lockExpire
protected org.slf4j.Logger log
protected abstract B self()
return this;
".public B rid(StaticBuffer rid)
public B times(TimestampProvider times)
public B serializer(ConsistentKeyLockerSerializer serializer)
public B mediator(LocalLockMediator<StoreTransaction> mediator)
public B mediatorName(String name)
name
via LocalLockMediators.get(String, TimestampProvider)
.name
- the mediator namepublic B logger(org.slf4j.Logger log)
public B internalState(LockerState<S> state)
state
- the initial lock state for this instanceprotected void preBuild()
build()
, but before a return object has been instantiated.
This is useful for catching illegal values or translating placeholder
configuration values into the objects they represent. This is
intended to be called from subclasses' build() methods.protected abstract LocalLockMediator<StoreTransaction> getDefaultMediator()
LocalLockMediator
for Locker being built.
This is called when the client doesn't specify a locker.Copyright © 2012–2023. All rights reserved.