fix compile with no default features
parent
f489558b65
commit
368eb90d5b
|
@ -20,12 +20,10 @@ use crate::database::UpEndDatabase;
|
||||||
mod addressing;
|
mod addressing;
|
||||||
mod database;
|
mod database;
|
||||||
mod filesystem;
|
mod filesystem;
|
||||||
|
mod previews;
|
||||||
mod routes;
|
mod routes;
|
||||||
mod util;
|
mod util;
|
||||||
|
|
||||||
#[cfg(feature = "previews")]
|
|
||||||
mod previews;
|
|
||||||
|
|
||||||
const VERSION: &str = env!("CARGO_PKG_VERSION");
|
const VERSION: &str = env!("CARGO_PKG_VERSION");
|
||||||
|
|
||||||
fn main() -> Result<()> {
|
fn main() -> Result<()> {
|
||||||
|
|
|
@ -26,6 +26,7 @@ pub struct PreviewStore {
|
||||||
locks: Mutex<HashMap<Hash, Arc<Mutex<PathBuf>>>>,
|
locks: Mutex<HashMap<Hash, Arc<Mutex<PathBuf>>>>,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[cfg(feature = "previews")]
|
||||||
impl PreviewStore {
|
impl PreviewStore {
|
||||||
pub fn new<P: AsRef<Path>>(path: P, db: Arc<UpEndDatabase>) -> Self {
|
pub fn new<P: AsRef<Path>>(path: P, db: Arc<UpEndDatabase>) -> Self {
|
||||||
PreviewStore {
|
PreviewStore {
|
||||||
|
|
|
@ -220,7 +220,9 @@ pub async fn delete_object(
|
||||||
#[get("/api/all/attributes")]
|
#[get("/api/all/attributes")]
|
||||||
pub async fn get_all_attributes(state: web::Data<State>) -> Result<HttpResponse, Error> {
|
pub async fn get_all_attributes(state: web::Data<State>) -> Result<HttpResponse, Error> {
|
||||||
let connection = state.upend.connection().map_err(ErrorInternalServerError)?;
|
let connection = state.upend.connection().map_err(ErrorInternalServerError)?;
|
||||||
let result = connection.get_all_attributes().map_err(ErrorInternalServerError)?;
|
let result = connection
|
||||||
|
.get_all_attributes()
|
||||||
|
.map_err(ErrorInternalServerError)?;
|
||||||
Ok(HttpResponse::Ok().json(result))
|
Ok(HttpResponse::Ok().json(result))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -322,6 +324,7 @@ pub async fn get_thumbnail(
|
||||||
state: web::Data<State>,
|
state: web::Data<State>,
|
||||||
hash: web::Path<String>,
|
hash: web::Path<String>,
|
||||||
) -> Result<NamedFile, Error> {
|
) -> Result<NamedFile, Error> {
|
||||||
|
#[cfg(feature = "previews")]
|
||||||
if let Some(preview_store) = &state.preview_store {
|
if let Some(preview_store) = &state.preview_store {
|
||||||
let address =
|
let address =
|
||||||
Address::decode(&decode(hash.into_inner()).map_err(ErrorInternalServerError)?)
|
Address::decode(&decode(hash.into_inner()).map_err(ErrorInternalServerError)?)
|
||||||
|
@ -337,13 +340,12 @@ pub async fn get_thumbnail(
|
||||||
file = file.set_content_type(mime);
|
file = file.set_content_type(mime);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Ok(file)
|
return Ok(file);
|
||||||
} else {
|
} else {
|
||||||
Err(ErrorBadRequest(
|
return Err(ErrorBadRequest(
|
||||||
"Address does not refer to a previewable object.",
|
"Address does not refer to a previewable object.",
|
||||||
))
|
));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
Err(error::ErrorNotImplemented("Previews not enabled."))
|
Err(error::ErrorNotImplemented("Previews not enabled."))
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
Loading…
Reference in New Issue