Skip to main content

ClientConfig

Struct ClientConfig 

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

Configuration for Ollama HTTP client

This struct allows customization of the HTTP client behavior including base URL, timeout, and retry settings. All constructors validate that the base URL is well-formed and uses http or https scheme.

§Examples

use ollama_oxide::ClientConfig;
use std::time::Duration;

// Use default configuration (http://localhost:11434)
let config = ClientConfig::default();

// Custom configuration
let config = ClientConfig::new(
    "http://example.com:8080".to_string(),
    Duration::from_secs(60),
    5,
)?;

// Just a custom URL
let config = ClientConfig::with_base_url("http://example.com:8080".to_string())?;

Implementations§

Source§

impl ClientConfig

Source

pub fn new( base_url: String, timeout: Duration, max_retries: u32, ) -> Result<Self>

Creates a new ClientConfig with all attributes specified.

§Errors

Returns an error if the base URL is invalid or uses an unsupported scheme.

§Examples
use ollama_oxide::ClientConfig;
use std::time::Duration;

let config = ClientConfig::new(
    "http://example.com:8080".to_string(),
    Duration::from_secs(60),
    5,
)?;
Source

pub fn with_base_url(base_url: String) -> Result<Self>

Creates a new ClientConfig with only base_url, using defaults for timeout (30s) and max_retries (3).

§Errors

Returns an error if the base URL is invalid or uses an unsupported scheme.

§Examples
use ollama_oxide::ClientConfig;

let config = ClientConfig::with_base_url("http://example.com:8080".to_string())?;
assert_eq!(config.timeout(), std::time::Duration::from_secs(30));
assert_eq!(config.max_retries(), 3);
Source

pub fn with_base_url_and_timeout( base_url: String, timeout: Duration, ) -> Result<Self>

Creates a new ClientConfig with base_url and timeout, using the default max_retries (3).

§Errors

Returns an error if the base URL is invalid or uses an unsupported scheme.

§Examples
use ollama_oxide::ClientConfig;
use std::time::Duration;

let config = ClientConfig::with_base_url_and_timeout(
    "http://example.com:8080".to_string(),
    Duration::from_secs(60),
)?;
assert_eq!(config.max_retries(), 3);
Source

pub fn base_url(&self) -> &str

Returns the base URL

Source

pub fn timeout(&self) -> Duration

Returns the request timeout duration

Source

pub fn max_retries(&self) -> u32

Returns the maximum retry attempts

Source

pub fn url(&self, endpoint: &str) -> String

Build full URL from base URL and endpoint path

§Examples
use ollama_oxide::ClientConfig;

let config = ClientConfig::default();
let url = config.url("/api/version");
assert_eq!(url, "http://localhost:11434/api/version");

Trait Implementations§

Source§

impl Clone for ClientConfig

Source§

fn clone(&self) -> ClientConfig

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 Debug for ClientConfig

Source§

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

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

impl Default for ClientConfig

Source§

fn default() -> Self

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

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