feat: wire remaining handlers — tag, quota, register asset, sidecar, processing
14 new endpoints: POST tags, GET quota, POST register, 6 sidecar, 7 processing. DTOs, AppState groups, LogSidecarWriter, full bootstrap wiring.
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
use crate::{
|
||||
handlers::{albums, assets, auth, health, sharing, storage},
|
||||
handlers::{albums, assets, auth, health, processing, sharing, sidecar, storage},
|
||||
openapi::openapi_router,
|
||||
state::AppState,
|
||||
};
|
||||
@@ -24,10 +24,12 @@ pub fn api_v1_router() -> Router<AppState> {
|
||||
)
|
||||
// assets
|
||||
.route("/assets/ingest", post(assets::ingest))
|
||||
.route("/assets/register", post(assets::register_asset))
|
||||
.route("/assets/timeline", get(assets::timeline))
|
||||
.route("/assets/{id}", get(assets::get_asset))
|
||||
.route("/assets/{id}/metadata", put(assets::update_metadata))
|
||||
.route("/assets/{id}/file", get(assets::serve_file))
|
||||
.route("/assets/{id}/tags", post(assets::tag_asset))
|
||||
// sharing
|
||||
.route("/sharing", post(sharing::share_resource))
|
||||
.route("/sharing/links", post(sharing::generate_link))
|
||||
@@ -39,6 +41,25 @@ pub fn api_v1_router() -> Router<AppState> {
|
||||
"/storage/library-paths",
|
||||
post(storage::register_library_path),
|
||||
)
|
||||
.route("/storage/quota", get(storage::check_quota))
|
||||
// sidecar
|
||||
.route("/sidecar/export/{asset_id}", post(sidecar::export_sidecar))
|
||||
.route("/sidecar/detect-changes", post(sidecar::detect_changes))
|
||||
.route("/sidecar/import/{asset_id}", post(sidecar::import_sidecar))
|
||||
.route(
|
||||
"/sidecar/resolve/{asset_id}",
|
||||
post(sidecar::resolve_conflict),
|
||||
)
|
||||
.route("/sidecar/full-export", post(sidecar::full_export))
|
||||
.route("/sidecar/full-import", post(sidecar::full_import))
|
||||
// processing
|
||||
.route("/jobs", post(processing::enqueue_job))
|
||||
.route("/jobs/{id}/start", post(processing::start_job))
|
||||
.route("/jobs/{id}/complete", post(processing::complete_job))
|
||||
.route("/jobs/{id}/fail", post(processing::fail_job))
|
||||
.route("/jobs/batches/{id}", get(processing::batch_progress))
|
||||
.route("/plugins", post(processing::manage_plugin))
|
||||
.route("/pipelines", post(processing::configure_pipeline))
|
||||
}
|
||||
|
||||
pub fn app_router() -> Router<AppState> {
|
||||
|
||||
Reference in New Issue
Block a user