refget_server/lib.rs
1//! Axum router library for GA4GH refget Sequences v2.0.0 and Sequence Collections v1.0.0.
2
3mod handlers;
4mod state;
5
6pub use state::{RefgetConfig, RefgetState, ServiceInfoConfig};
7
8use axum::Router;
9
10/// Create the combined refget router with both sequences and sequence collections endpoints.
11pub fn refget_router(state: RefgetState) -> Router {
12 Router::new().merge(sequences_router(state.clone())).merge(seqcol_router(state))
13}
14
15/// Create the sequences-only router (Sequences v2.0.0 endpoints).
16pub fn sequences_router(state: RefgetState) -> Router {
17 handlers::sequences::router(state)
18}
19
20/// Create the sequence collections-only router (Sequence Collections v1.0.0 endpoints).
21pub fn seqcol_router(state: RefgetState) -> Router {
22 handlers::seqcol::router(state)
23}