Skip to main content

Crate solidb_client

Crate solidb_client 

Source
Expand description

SoliDB Rust Client

High-performance native driver client for SoliDB with HTTP and TCP transport support.

§HTTP Example (Default)

use solidb_client::{SoliDBClientBuilder, HttpClient};

#[tokio::main]
async fn main() -> Result<(), solidb_client::DriverError> {
    let client = SoliDBClientBuilder::new("http://localhost:6745")
        .auth("mydb", "admin", "password")
        .build_http()
        .await?;

    let databases = client.list_databases().await?;
    println!("Databases: {:?}", databases);
    Ok(())
}

§TCP Example

use solidb_client::SoliDBClient;

#[tokio::main]
async fn main() -> Result<(), solidb_client::DriverError> {
    let mut client = SoliDBClientBuilder::new("localhost:6745")
        .use_tcp()
        .auth("mydb", "admin", "password")
        .build()
        .await?;

    let version = client.ping().await?;
    println!("Server version: {}", version);
    Ok(())
}

Re-exports§

pub use client::SoliDBClient;
pub use client::SoliDBClientBuilder;
pub use client::HttpClient;
pub use client::Transport;
pub use protocol::Command;
pub use protocol::DriverError;
pub use protocol::Response;

Modules§

client
protocol
Wire protocol definitions for the native driver