Struct ClientBuilder

Source
pub struct ClientBuilder<Version = DefaultVersion, ACB = ()> { /* private fields */ }
Expand description

Builder for the Client

Implementations§

Source§

impl<V, ACB> ClientBuilder<V, ACB>
where V: FhirVersion,

Source

pub fn base_url(self, base_url: Url) -> Self

The FHIR server’s base URL.

Source

pub fn client(self, client: Client) -> Self

Reqwest client

Source

pub fn user_agent(self, user_agent: String) -> Self

User agent to use for requests. This is ignored if a Reqwest client is passed to the builder using the client() method.

Source

pub fn request_settings(self, settings: RequestSettings) -> Self

Request settings.

Source

pub fn auth_callback<LM>(self, login_manager: LM) -> ClientBuilder<V, LM>
where LM: LoginManager + 'static,

Set an authorization callback to be called every time the server returns unauthorized. Should return the header value for the Authorization header.

Valid login managers are:

  • Async functions async fn my_auth_callback(client: reqwest::Client) -> Result<HeaderValue, MyError>
  • Async closures |client: reqwest::Client| async move { ... }
  • Types that implement LoginManager

Calling this with unit type () will panic on auth_callback called. () is allowed at compile time for convenience reasons (generics stuff).

Source

pub const fn allow_version_mismatch(self) -> Self

Disable errors if the server responds with a different major FHIR version.

Source

pub const fn allow_origin_mismatch(self) -> Self

Disable errors blocking to send a request to a different server than is configured in the base URL. Also not applies to custom requests! Reasoning is to avoid search results and references to resources on other servers when this is not wanted.

Source

pub fn build(self) -> Result<Client<V>, Error>
where ACB: LoginManager + 'static,

Finalize building the client.

Trait Implementations§

Source§

impl<V, ACB> Clone for ClientBuilder<V, ACB>
where ACB: Clone,

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<V, ACB> Debug for ClientBuilder<V, ACB>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<V, ACB> Default for ClientBuilder<V, ACB>
where V: FhirVersion,

Source§

fn default() -> Self

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

Auto Trait Implementations§

§

impl<Version, ACB> Freeze for ClientBuilder<Version, ACB>
where ACB: Freeze,

§

impl<Version = FhirR5, ACB = ()> !RefUnwindSafe for ClientBuilder<Version, ACB>

§

impl<Version, ACB> Send for ClientBuilder<Version, ACB>
where ACB: Send, Version: Send,

§

impl<Version, ACB> Sync for ClientBuilder<Version, ACB>
where ACB: Sync, Version: Sync,

§

impl<Version, ACB> Unpin for ClientBuilder<Version, ACB>
where ACB: Unpin, Version: Unpin,

§

impl<Version = FhirR5, ACB = ()> !UnwindSafe for ClientBuilder<Version, ACB>

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. 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<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

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> ErasedDestructor for T
where T: 'static,