[][src]Crate sonic_channel

Sonic Channel

Rust client for sonic search backend.

Example usage

Search channel

Note: This example requires enabling the search feature, enabled by default.

use sonic_channel::*;
 
fn main() -> result::Result<()> {
    let channel = SonicChannel::connect_with_start(
        ChannelMode::Search,
        "localhost:1491",
        "SecretPassword",
    )?;
 
    let objects = channel.query("collection", "bucket", "recipe")?;
    dbg!(objects);
 
    Ok(())
}

Ingest channel

Note: This example requires enabling the ingest feature.

use sonic_channel::*;
 
fn main() -> result::Result<()> {
    let mut channel = SonicChannel::connect_with_start(
        ChannelMode::Ingest,
        "localhost:1491",
        "SecretPassword",
    )?;
 
    let pushed = channel.push("collection", "bucket", "object:1", "my best recipe")?;
    // or
    // let pushed = channel.push_with_locale("collection", "bucket", "object:1", "Мой лучший рецепт", "rus")?;
    dbg!(pushed);
 
    Ok(())
}

Control channel

Note: This example requires enabling the control feature.

use sonic_channel::*;
 
fn main() -> result::Result<()> {
    let mut channel = SonicChannel::connect_with_start(
        ChannelMode::Control,
        "localhost:1491",
        "SecretPassword",
    )?;
 
    let result = channel.consolidate()?;
    assert_eq!(result, true);
 
    Ok(())
}

Modules

result

Contains sonic channel error type and custom Result type for easy configure your functions.

Structs

SonicChannel

Root and Heart of this library.

Enums

ChannelMode

Channel modes supported by sonic search backend.