Skip to main content

LockBuilder

Struct LockBuilder 

Source
pub struct LockBuilder { /* private fields */ }
Expand description

Used to create a Lock with advanced configuration.

Implementations§

Source§

impl LockBuilder

Source

pub fn new<L: IntoLockID>(lock_id: L) -> Self

Construct a new LockBuilder with the given Lock ID.

Source

pub fn client_id(self, client_id: Vec<u8>) -> Self

Specify the data used to uniquely identify this client as distinct from other clients.

It is recommended that you set this value, in order to use the same Client ID across restarts of the same client. If you do not, then a restart will prevent the client from grabbing the lock until the lock expires. If this value is not set, a random Client ID will be used when the Lock is built (using LockBuilder::build).

Client IDs should be relatively small, and must be fewer than 64 bytes long.

Source

pub fn lifetime_seconds(self, seconds: u16) -> Self

Specify how long the lock will stay locked before expiring.

Refreshing the lock (re-locking with the same client who already holds the lock) will extend the lifetime by this amount. If this value is not set, an arbitrary lifetime will be chosen.

Source

pub fn url(self, url: &str) -> Result<Self, ParseError>

Specify a custom URL to use when managing a lock.

The lock builder uses the real justalock service by default, but this can be overridden if desired. Do not set this value unless you know what you are doing.

This method returns an error if the URL cannot be parsed as a Url.

Source

pub fn build(self) -> Result<Lock, Error>

Return a Lock that uses this LockBuilder configuration.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more