diff options
Diffstat (limited to 'src/api/mod.rs')
| -rw-r--r-- | src/api/mod.rs | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/src/api/mod.rs b/src/api/mod.rs index 98400c7..a2bd7e0 100644 --- a/src/api/mod.rs +++ b/src/api/mod.rs @@ -1,17 +1,19 @@ //! HTTP API: router, OpenAPI document and shared response helpers. +pub(crate) mod auth; mod debug; +mod log; mod peers; mod store; use axum::{ + Router, http::{ - header::{CONTENT_TYPE, ETAG}, HeaderValue, StatusCode, + header::{CONTENT_TYPE, ETAG}, }, response::{IntoResponse, Response}, routing::{delete, get, put}, - Router, }; use serde_json::Value as JsonValue; use sha2::{Digest, Sha256}; @@ -19,9 +21,9 @@ use tracing::{error, warn}; use utoipa::OpenApi; use utoipa_swagger_ui::SwaggerUi; -use crate::auth::{basic_auth, AuthState}; +use crate::api::auth::{AuthState, basic_auth}; +use crate::document::store::StoreError; use crate::state::AppState; -use crate::store::StoreError; /// Builds the complete HTTP router. Everything except Swagger is authenticated. pub(crate) fn router(state: AppState, auth_state: AuthState, debug_api: bool) -> Router { @@ -36,7 +38,11 @@ pub(crate) fn router(state: AppState, auth_state: AuthState, debug_api: bool) -> .route("/stream/{*key}", get(store::stream_store_entry)) .route("/peers", get(peers::list_peers)) .route("/peers/{peer}", delete(peers::delete_peer)) - .merge(crate::compaction::router::<AppState>()); + .route( + "/admin/log", + get(log::get_log_filter).put(log::put_log_filter), + ) + .merge(crate::remake::router::<AppState>()); if debug_api { warn!("Debug API enabled"); |
