Crates.io | infinispan-fork |
lib.rs | infinispan-fork |
version | 0.1.0 |
source | src |
created_at | 2024-01-03 18:00:52.061382 |
updated_at | 2024-01-03 18:00:52.061382 |
description | Rust client for the Infinispan REST API with DIGEST auth for version > 12.0.x |
homepage | |
repository | https://github.com/oxPraGa/infinispan-rs |
max_upload_size | |
id | 1087619 |
size | 58,490 |
A fork of infinispan-rs
with DIGEST auth for version > 12.0.x .
infinispan-rs is a Rust client for the Infinispan REST API. For now, it implements a small part of the API.
Add the infinispan
dependency to your Cargo.toml
:
[dependencies]
infinispan-fork = "0.1"
use infinispan_fork::Infinispan;
use infinispan_fork::request;
// Create a client
let client = Infinispan::new("http://localhost:11222", "username", "password");
// Create a cache
let req = request::caches::create_local("some_cache");
let _ = client.run(&req).await.unwrap();
// Create an entry
let req = request::entries::create("some_cache", "some_entry").with_value("a_value".into());
let _ = client.run(&req).await.unwrap();
// Read the entry
let req = request::entries::get("some_cache", "some_entry");
let resp = client.run(&req).await.unwrap();
// resp is an instance of `reqwest::Response`
assert!(resp.status().is_success());
assert_eq!("a_value", resp.text_with_charset("utf-8").await.unwrap());
Check the docs to learn more.
cargo build
Some tests need Infinispan running in localhost:11222
. You can run it in
Docker with:
docker run -it -p 11222:11222 -e USER="username" -e PASS="password" infinispan/server:12.0.0.Final
Then, run the tests:
cargo test