Skip to content

Latest commit

 

History

History
48 lines (36 loc) · 1.53 KB

README.md

File metadata and controls

48 lines (36 loc) · 1.53 KB

r2d2-couchdb Build Status MIT License Apache 2.0

CouchDB support library for the r2d2 connection pool. Read the documentation.

Example

extern crate r2d2;
extern crate r2d2_couchdb;
extern crate serde_json;

use r2d2_couchdb::{CouchdbConnectionManager};

use std::thread;

fn main() {
    let config = r2d2::Config::default();
    let manager = CouchdbConnectionManager::new("http://localhost:5984/").unwrap();
    let pool = r2d2::Pool::new(config, manager).unwrap();

    let mut handles = vec![];

    for i in 0..20 {
        let pool = pool.clone();
        handles.push(thread::spawn(move || {
            let content = serde_json::builder::ObjectBuilder::new()
                .insert("foo", i)
                .unwrap();
            println!("Sending {}", &content);
            let conn = pool.get().unwrap();
            conn.create_document("/test", &content).run().unwrap();
        }));
    }

    for handle in handles {
        handle.join().unwrap()
    }
}