streex 0.1.12

Kafka store runner
Documentation
#[tokio::main]
async fn main() {
    use mise_server::prelude::*;
    use protolib::Input as I;
    use protolib::Key as K;
    use protolib::Value as V;
    use serde_json::json;
    use streex::prelude::*;

    let config = StoreConfig::new()
        .id("test")
        .input_topic("test-input")
        .changelog_topic("test-changelog")
        .kafka_servers("localhost:9001,localhost:9002,localhost:9003")
        .build();

    let store = Store::<K, I, V>::new(config).await;
    let h = store.read_handle();

    Mise::new()
        .post("/store/test/*", move |r| {
            let i: K = serde_json::from_value(r.body().clone()).unwrap();
            json!(h.get(&i)).into()
        })
        .serve("127.0.0.1:8080".parse().unwrap());
}