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
impl ClientConfig
Sourcepub fn new(
base_url: String,
timeout: Duration,
max_retries: u32,
) -> Result<Self>
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,
)?;Sourcepub fn with_base_url(base_url: String) -> Result<Self>
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);Sourcepub fn with_base_url_and_timeout(
base_url: String,
timeout: Duration,
) -> Result<Self>
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);Sourcepub fn max_retries(&self) -> u32
pub fn max_retries(&self) -> u32
Returns the maximum retry attempts
Trait Implementations§
Source§impl Clone for ClientConfig
impl Clone for ClientConfig
Source§fn clone(&self) -> ClientConfig
fn clone(&self) -> ClientConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ClientConfig
impl Debug for ClientConfig
Auto Trait Implementations§
impl Freeze for ClientConfig
impl RefUnwindSafe for ClientConfig
impl Send for ClientConfig
impl Sync for ClientConfig
impl Unpin for ClientConfig
impl UnsafeUnpin for ClientConfig
impl UnwindSafe for ClientConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more