34 lines
542 B
Go
34 lines
542 B
Go
|
package lock
|
||
|
|
||
|
import (
|
||
|
"time"
|
||
|
)
|
||
|
|
||
|
// Nodes sets the addresses the underlying lock implementation
|
||
|
func Nodes(a ...string) Option {
|
||
|
return func(o *Options) {
|
||
|
o.Nodes = a
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Prefix sets a prefix to any lock ids used
|
||
|
func Prefix(p string) Option {
|
||
|
return func(o *Options) {
|
||
|
o.Prefix = p
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// TTL sets the lock ttl
|
||
|
func TTL(t time.Duration) AcquireOption {
|
||
|
return func(o *AcquireOptions) {
|
||
|
o.TTL = t
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Wait sets the wait time
|
||
|
func Wait(t time.Duration) AcquireOption {
|
||
|
return func(o *AcquireOptions) {
|
||
|
o.Wait = t
|
||
|
}
|
||
|
}
|