#database-client #type-safe #nosql #driver #client

rincon_session

ArangoDB 驱动器的同步会话管理客户端 API

1 个不稳定版本

使用旧的 Rust 2015

0.1.0 2018 年 4 月 15 日

#3 in #typesafe


rincon 中使用

Apache-2.0

700KB
16K SLoC

Rincon Session

Crates.io Docs.rs Apache-2.0 Join the chat

该 [rincon_session] crate 提供了一个方便的 API,用于与 ArangoDB 服务器进行 同步 通信。

rincon_session API 是在 rincon_client API 的基础上构建的更高层次的 API,并提供了一些额外的功能。

  • 为应用程序与 ArangoDB 服务器通信提供方便的 API。(就绪)
    例如,无需在每个请求中手动指定数据库和集合。
  • 高效地处理到 ArangoDB 服务器的连接(计划中)
  • 高效执行批处理操作(计划中)
  • 方便的事务处理 API(计划中)

以下是一个如何将新文档插入现有集合的示例

#[derive(Debug, Clone, Serialize, Deserialize)]
struct Customer {
    name: String,
    age: u8,
}

// obtain a session reference for the existing collection named `customers`
let collection = database.use_collection_with_name("customers");

let customer = Customer {
    name: "Jane Doe".to_owned(),
    age: 42,
};

// insert the document and get the document header with document id, key and revision
let document_header = collection.insert_document(customer).unwrap();

该 [rincon_session] crate 是 Rincon ArangoDB Rust 驱动项目的一部分 Rincon ArangoDB Rust driver project

注意:由 rincon_session_async crate 提供了一个类似的但异步的 API,它也是 Rincon 项目的一部分。

用法

要使用此 crate 的同步会话 API,请将以下内容添加到您的 Cargo.toml

[dependencies]
rincon_core = "0.1"
rincon_connection = "0.1"
rincon_session = "0.1"

并将其添加到您的 crate 根目录

extern crate rincon_core;
extern crate rincon_connection;
extern crate rincon_session;

重要:由于 [rincon_session] 依赖于 rincon_client,它导出了 rincon_client 的 crate 功能。因此,请确保您为 [rincon_session] 指定的功能与为 rincon_client crate 指定的功能相同,以适应您的 ArangoDB 服务器配置。

例如,要使用配置为在集群中使用 RocksDB 的 ArangoDB 服务器使用 [rincon_session],指定依赖关系如下

[dependencies]
rincon_session = { version = "0.1", default-features = false, features = ["rocksdb", "cluster"] }

许可证

在 Apache License,版本 2.0 下授权
请参阅许可协议https://apache.ac.cn/licenses/LICENSE-2.0以获取详细信息。

贡献

除非您明确声明,否则根据Apache-2.0许可协议定义的,您有意提交以包含在作品中的任何贡献,将按上述方式许可,无需任何附加条款或条件。

依赖项

约12MB
约247K SLoC