diff options
Diffstat (limited to 'rust')
-rw-r--r-- | rust/src/api_server.rs | 10 | ||||
-rw-r--r-- | rust/src/bin/fatcat-iron.rs | 31 | ||||
-rw-r--r-- | rust/src/lib.rs | 28 |
3 files changed, 38 insertions, 31 deletions
diff --git a/rust/src/api_server.rs b/rust/src/api_server.rs index 3da38724..3e2e6c9c 100644 --- a/rust/src/api_server.rs +++ b/rust/src/api_server.rs @@ -7,12 +7,12 @@ use futures::{self, Future}; use std::collections::HashMap; -use ConnectionPool; use self::models::*; +use ConnectionPool; use diesel; -use r2d2; use diesel::prelude::*; use iron_diesel_middleware::DieselPooledConnection; +use r2d2; use r2d2_diesel::ConnectionManager; use swagger; @@ -43,7 +43,7 @@ impl Api for Server { let conn = self.db_pool.get().expect("db_pool error"); let c: i64 = container_rev.count().first(&*conn).expect("DB Error"); println!("container count: {}", c); - let ce = ContainerEntity{ + let ce = ContainerEntity { issn: None, publisher: Some("Hello!".into()), parent: None, @@ -54,7 +54,9 @@ impl Api for Server { redirect: None, editgroup: None, }; - Box::new(futures::done(Ok(ContainerIdGetResponse::FetchASingleContainerById(ce)))) + Box::new(futures::done(Ok( + ContainerIdGetResponse::FetchASingleContainerById(ce), + ))) } fn container_lookup_get( diff --git a/rust/src/bin/fatcat-iron.rs b/rust/src/bin/fatcat-iron.rs index d89a9c53..e0705787 100644 --- a/rust/src/bin/fatcat-iron.rs +++ b/rust/src/bin/fatcat-iron.rs @@ -2,28 +2,30 @@ extern crate chrono; extern crate clap; +extern crate diesel; +extern crate dotenv; extern crate fatcat; extern crate fatcat_api; extern crate futures; -extern crate dotenv; -extern crate diesel; -extern crate iron_diesel_middleware; extern crate iron; +extern crate iron_diesel_middleware; extern crate iron_slog; extern crate swagger; -#[macro_use] extern crate error_chain; -#[macro_use] extern crate slog; -extern crate slog_term; +#[macro_use] +extern crate error_chain; +#[macro_use] +extern crate slog; extern crate slog_async; +extern crate slog_term; -use slog::{Drain, Logger}; -use iron_slog::{LoggerMiddleware, DefaultLogFormatter}; use clap::{App, Arg}; -use iron::{Chain, Iron}; -use swagger::auth::AllowAllMiddleware; use dotenv::dotenv; -use std::env; +use iron::{Chain, Iron}; use iron_diesel_middleware::{DieselMiddleware, DieselPooledConnection, DieselReqExt}; +use iron_slog::{DefaultLogFormatter, LoggerMiddleware}; +use slog::{Drain, Logger}; +use std::env; +use swagger::auth::AllowAllMiddleware; /// Create custom server, wire it to the autogenerated router, /// and pass it to the web server. @@ -36,7 +38,6 @@ fn main() { ) .get_matches(); - let decorator = slog_term::TermDecorator::new().build(); let drain = slog_term::CompactFormat::new(decorator).build().fuse(); let drain = slog_async::Async::new(drain).build().fuse(); @@ -46,13 +47,13 @@ fn main() { dotenv().ok(); let database_url = env::var("DATABASE_URL").expect("DATABASE_URL must be set"); - let diesel_middleware: DieselMiddleware<diesel::pg::PgConnection> = DieselMiddleware::new(&database_url).unwrap(); + let diesel_middleware: DieselMiddleware<diesel::pg::PgConnection> = + DieselMiddleware::new(&database_url).unwrap(); let server = fatcat::server().unwrap(); let router = fatcat_api::router(server); - let mut chain = Chain::new( - LoggerMiddleware::new(router, logger, formatter )); + let mut chain = Chain::new(LoggerMiddleware::new(router, logger, formatter)); chain.link_before(fatcat_api::server::ExtractAuthData); // add authentication middlewares into the chain here diff --git a/rust/src/lib.rs b/rust/src/lib.rs index c1336561..b8f2be88 100644 --- a/rust/src/lib.rs +++ b/rust/src/lib.rs @@ -1,19 +1,22 @@ #[macro_use] extern crate fatcat_api; extern crate chrono; -#[macro_use] extern crate diesel; -extern crate iron_diesel_middleware; +#[macro_use] +extern crate diesel; extern crate dotenv; extern crate futures; -#[macro_use] extern crate hyper; +extern crate iron_diesel_middleware; +#[macro_use] +extern crate hyper; extern crate swagger; -#[macro_use] extern crate error_chain; +#[macro_use] +extern crate error_chain; extern crate iron; extern crate r2d2; extern crate r2d2_diesel; -pub mod database_schema; pub mod api_server; +pub mod database_schema; mod errors { error_chain!{} @@ -23,10 +26,10 @@ pub use self::errors::*; use diesel::pg::PgConnection; use diesel::prelude::*; use dotenv::dotenv; -use std::env; -use iron::{Request, Response}; use iron::middleware::AfterMiddleware; +use iron::{Request, Response}; use r2d2_diesel::ConnectionManager; +use std::env; pub type ConnectionPool = r2d2::Pool<r2d2_diesel::ConnectionManager<diesel::pg::PgConnection>>; @@ -42,10 +45,10 @@ pub fn server() -> Result<api_server::Server> { dotenv().ok(); let database_url = env::var("DATABASE_URL").expect("DATABASE_URL must be set"); let manager = ConnectionManager::<PgConnection>::new(database_url); - let pool = r2d2::Pool::builder().build(manager).expect("Failed to create database pool."); - Ok(api_server::Server { - db_pool: pool, - }) + let pool = r2d2::Pool::builder() + .build(manager) + .expect("Failed to create database pool."); + Ok(api_server::Server { db_pool: pool }) } /// HTTP header middleware @@ -55,7 +58,8 @@ pub struct XClacksOverheadMiddleware; impl AfterMiddleware for XClacksOverheadMiddleware { fn after(&self, _req: &mut Request, mut res: Response) -> iron::IronResult<Response> { - res.headers.set(XClacksOverhead("GNU aaronsw, jpb".to_owned())); + res.headers + .set(XClacksOverhead("GNU aaronsw, jpb".to_owned())); Ok(res) } } |