diff --git a/Cargo.toml b/Cargo.toml index f1d61cc..dcc54bb 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -34,8 +34,7 @@ memmap = "^0.7" mercator_db = "^0.1" mercator_parser = "^0.1" -serde = "^1.0" -serde_derive = "^1.0" +serde = { version = "^1.0", features = ["derive"] } serde_json = "^1.0" bincode = "^1.1" diff --git a/src/main.rs b/src/main.rs index 77fc096..1f3cdfd 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,20 +1,16 @@ #[macro_use] extern crate measure_time; -#[macro_use] -extern crate serde_derive; - mod rest_api; mod shared_state; use std::process::exit; use std::sync::RwLock; -use actix_web::web::Data; use glob::glob; -use mercator_db::json::model; -use mercator_db::DataBase; +use rest_api::Data; +use rest_api::DataBase; use shared_state::SharedState; /* diff --git a/src/rest_api/actions.rs b/src/rest_api/actions.rs index c58b22b..ff51cc5 100644 --- a/src/rest_api/actions.rs +++ b/src/rest_api/actions.rs @@ -1,16 +1,16 @@ use std::sync::RwLock; -use actix_web::web; -use actix_web::web::Data; -use actix_web::web::Json; -use actix_web::HttpResponse; - -use crate::model::to_spatial_objects; -use crate::shared_state::SharedState; +use serde::Deserialize; use super::error_422; use super::ok_200; +use super::to_spatial_objects; +use super::web; +use super::web::Data; +use super::web::Json; use super::HandlerResult; +use super::HttpResponse; +use super::SharedState; #[derive(Debug, Deserialize)] pub struct Query { diff --git a/src/rest_api/core.rs b/src/rest_api/core.rs index 04f2daa..62bdc16 100644 --- a/src/rest_api/core.rs +++ b/src/rest_api/core.rs @@ -1,16 +1,14 @@ use std::sync::RwLock; -use actix_web::web; -use actix_web::web::Data; -use actix_web::web::Path; - -use crate::shared_state::SharedState; - use super::error_400; use super::error_404; use super::ok_200; +use super::web; +use super::web::Data; +use super::web::Path; use super::Core; use super::HandlerResult; +use super::SharedState; fn put(path: Path) -> HandlerResult { trace!("PUT Triggered on {}", path); diff --git a/src/rest_api/cores.rs b/src/rest_api/cores.rs index 5657378..e9b9476 100644 --- a/src/rest_api/cores.rs +++ b/src/rest_api/cores.rs @@ -1,18 +1,16 @@ use std::collections::HashSet; use std::sync::RwLock; -use actix_web::web; -use actix_web::web::Data; -use actix_web::web::Json; - -use crate::shared_state::SharedState; - use super::error_400; use super::error_422; use super::ok_200; +use super::web; +use super::web::Data; +use super::web::Json; use super::Core; use super::Filters; use super::HandlerResult; +use super::SharedState; fn post((parameters, state): (Json, Data>)) -> HandlerResult { trace!("POST '{:?}'", parameters); diff --git a/src/rest_api/helpers.rs b/src/rest_api/helpers.rs index d6e5132..c5af1f6 100644 --- a/src/rest_api/helpers.rs +++ b/src/rest_api/helpers.rs @@ -2,13 +2,15 @@ use std::fmt::Debug; use std::io::Error; use std::io::ErrorKind; -use actix_files::NamedFile; -use actix_web::Either; -use actix_web::HttpResponse; use serde::Serialize; +use super::error_404; +use super::web::Path; +use super::Either; use super::HandlerResult; -use super::*; +use super::HttpResponse; +use super::NamedFile; +use super::StatusCode; pub fn ok_200(data: &T) -> HandlerResult where diff --git a/src/rest_api/mod.rs b/src/rest_api/mod.rs index b015726..c1740a7 100644 --- a/src/rest_api/mod.rs +++ b/src/rest_api/mod.rs @@ -23,23 +23,29 @@ use actix_web::http; use actix_web::http::StatusCode; use actix_web::middleware; use actix_web::web; -use actix_web::web::Data; -use actix_web::web::Path; +pub use actix_web::web::Data; use actix_web::App; use actix_web::Either; use actix_web::HttpResponse; use actix_web::HttpServer; use mercator_db::space::Shape; +use mercator_db::storage::model; +use mercator_db::storage::model::v2::to_spatial_objects; +use mercator_db::CoreQueryParameters; +pub use mercator_db::DataBase; +use mercator_db::Properties; +use serde::Deserialize; +use serde::Serialize; -#[cfg(feature = "static-error-pages")] -pub use helpers_static_pages::*; +use crate::SharedState; + +pub use helpers::*; #[cfg(not(feature = "static-error-pages"))] pub use helpers_dynamic_pages::*; -pub use helpers::*; - -use crate::SharedState; +#[cfg(feature = "static-error-pages")] +pub use helpers_static_pages::*; pub type HandlerResult = Result, Error>; diff --git a/src/rest_api/space.rs b/src/rest_api/space.rs index 70382e3..eb78868 100644 --- a/src/rest_api/space.rs +++ b/src/rest_api/space.rs @@ -1,16 +1,14 @@ use std::sync::RwLock; -use actix_web::web; -use actix_web::web::Data; -use actix_web::web::Path; - -use crate::model; -use crate::shared_state::SharedState; - use super::error_400; use super::error_404; +use super::model; use super::ok_200; +use super::web; +use super::web::Data; +use super::web::Path; use super::HandlerResult; +use super::SharedState; fn put(path: Path) -> HandlerResult { trace!("POST '{:?}'", path); diff --git a/src/rest_api/spaces.rs b/src/rest_api/spaces.rs index e568cc4..e097c1f 100644 --- a/src/rest_api/spaces.rs +++ b/src/rest_api/spaces.rs @@ -1,18 +1,16 @@ use std::collections::HashSet; use std::sync::RwLock; -use actix_web::web; -use actix_web::web::Data; -use actix_web::web::Json; - -use crate::model; -use crate::shared_state::SharedState; - use super::error_400; use super::error_422; +use super::model; use super::ok_200; +use super::web; +use super::web::Data; +use super::web::Json; use super::Filters; use super::HandlerResult; +use super::SharedState; fn post((parameters, state): (Json, Data>)) -> HandlerResult { trace!("POST '{:?}'", parameters); diff --git a/src/rest_api/spatial_object.rs b/src/rest_api/spatial_object.rs index e92f532..c616c34 100644 --- a/src/rest_api/spatial_object.rs +++ b/src/rest_api/spatial_object.rs @@ -1,18 +1,16 @@ use std::sync::RwLock; -use actix_web::web; -use actix_web::web::Data; -use actix_web::web::Path; -use mercator_db::CoreQueryParameters; -use mercator_db::Properties; - -use crate::model::to_spatial_objects; -use crate::shared_state::SharedState; - use super::error_400; use super::error_404; use super::ok_200; +use super::to_spatial_objects; +use super::web; +use super::web::Data; +use super::web::Path; +use super::CoreQueryParameters; use super::HandlerResult; +use super::Properties; +use super::SharedState; fn put(path: Path) -> HandlerResult { trace!("PUT '{:?}'", path); diff --git a/src/rest_api/spatial_objects.rs b/src/rest_api/spatial_objects.rs index c1fe4c2..2433629 100644 --- a/src/rest_api/spatial_objects.rs +++ b/src/rest_api/spatial_objects.rs @@ -2,21 +2,19 @@ use std::collections::HashMap; use std::collections::HashSet; use std::sync::RwLock; -use actix_web::web; -use actix_web::web::Data; -use actix_web::web::Json; -use actix_web::web::Path; -use mercator_db::CoreQueryParameters; - -use crate::model::to_spatial_objects; -use crate::shared_state::SharedState; - use super::error_400; use super::error_404; use super::error_422; use super::ok_200; +use super::to_spatial_objects; +use super::web; +use super::web::Data; +use super::web::Json; +use super::web::Path; +use super::CoreQueryParameters; use super::Filters; use super::HandlerResult; +use super::SharedState; fn post( (core_id, parameters, state): (Path, Json, Data>),