Ruroonga Client

Build Status Build status

Documentation

A tiny Groonga client mainly via HTTP written by Rust language.

GQTP protocol support is experimental for now.

Usage

Add following lines to your Cargo.toml:

toml [dependencies] ruroonga_client = "~0.5.0"

and following lines to your crate root:

```rust extern crate ruroonga_client;

use ruroonga_client as groonga; ```

Using GQTP protocol

If you want to use GQTP module, please specify the dependency as follows for now:

toml [dependencies.ruroonga_client] version = "~0.5.0" features = ["gqtp"]

Example

```rust extern crate ruroonga_client as groonga;

use groonga::builtin::command_query::CommandQuery;

fn main() { let mut request = groonga::HTTPRequest::new(); let mut command = CommandQuery::new("select"); command.setargument(vec![("table", "Sites")]); let uribase = groonga::URIBase::new().build(); let url = groonga::RequestURI::new(uri_base, command.encode()).url(); println!("url: {}", url); let res = request.get(url); let result = request.receive(&mut res.unwrap()).unwrap(); println!("result: {}", result); } ```

Testing

Execute cargo test.

Advanced

If you encountered building failure which is dependent openssl library, you should define several environment variables.

For OS X

You can use homebrewed openssl like this:

bash $ export OPENSSL_INCLUDE_DIR=`brew --prefix openssl`/include $ export OPENSSL_LIB_DIR=`brew --prefix openssl`/lib And then, cargo build.

For Windows

In more detail, see: https://github.com/sfackler/rust-openssl#windows

LICENSE

MIT.