pub struct ClientBuilder<T> { /* private fields */ }
Expand description

A client builder that can be used to fluently provide configuration settings used to construct the control interface client

Implementations§

source§

impl ClientBuilder<DirectKvStore>

source

pub fn new(nc: Client) -> ClientBuilder<DirectKvStore>

Creates a new client builder using the given client

source§

impl<T> ClientBuilder<T>

source

pub fn topic_prefix(self, prefix: impl Into<String>) -> ClientBuilder<T>

Sets the topic prefix for the NATS topic used for all control requests. Not to be confused with lattice ID/prefix

source

pub fn lattice_prefix(self, prefix: impl Into<String>) -> ClientBuilder<T>

The lattice ID/prefix used for this client. If this function is not invoked, the prefix will be set to default

source

pub fn rpc_timeout(self, timeout: Duration) -> ClientBuilder<T>

Sets the timeout for standard calls and RPC invocations used by the client. If not set, the default will be 2 seconds

source

pub fn auction_timeout(self, timeout: Duration) -> ClientBuilder<T>

Sets the timeout for auction (scatter/gather) operations. If not set, the default will be 5 seconds

source

pub fn js_domain(self, domain: impl Into<String>) -> ClientBuilder<T>

Sets the JetStream domain for this client, which can be critical for locating the right key-value bucket for lattice metadata storage. If this is skipped, then the JS domain will be None

source

pub fn use_caching(self) -> ClientBuilder<CachedKvStore>

Tells the client to use caching for lattice metadata. This is useful for long running applications that want to consistently fetch lattice metadata. If this is not set, then every call to get_links or get_claims will result in a query to the lattice metadata bucket

source§

impl ClientBuilder<CachedKvStore>

source

pub async fn build( self ) -> Result<Client<CachedKvStore>, Box<dyn Error + Send + Sync>>

Completes the generation of a control interface client. This function is async because it will attempt to locate and attach to a metadata key-value bucket (LATTICEDATA_{prefix}) when starting. If this bucket is not discovered during build time, all subsequent client calls will operate in “legacy” mode against the deprecated control interface topics

source§

impl ClientBuilder<DirectKvStore>

source

pub async fn build( self ) -> Result<Client<DirectKvStore>, Box<dyn Error + Send + Sync>>

Completes the generation of a control interface client. This function is async because it will attempt to locate and attach to a metadata key-value bucket (LATTICEDATA_{prefix}) when starting. If this bucket is not discovered during build time, all subsequent client calls will operate in “legacy” mode against the deprecated control interface topics

Trait Implementations§

source§

impl Default for ClientBuilder<DirectKvStore>

source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

§

impl<T> !RefUnwindSafe for ClientBuilder<T>

§

impl<T> Send for ClientBuilder<T>where T: Send,

§

impl<T> Sync for ClientBuilder<T>where T: Sync,

§

impl<T> Unpin for ClientBuilder<T>where T: Unpin,

§

impl<T> !UnwindSafe for ClientBuilder<T>

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere 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.

§

impl<T> FutureExt for T

§

fn with_context(self, otel_cx: Context) -> WithContext<Self>

Attaches the provided Context to this type, returning a WithContext wrapper. Read more
§

fn with_current_context(self) -> WithContext<Self>

Attaches the current Context to this type, returning a WithContext wrapper. Read more
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> 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 Twhere 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> Same<T> for T

§

type Output = T

Should always be Self
source§

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

§

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 Twhere U: TryFrom<T>,

§

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.
§

impl<V, T> VZip<V> for Twhere V: MultiLane<T>,

§

fn vzip(self) -> V

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
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