appcore_api/query_endpoint.rs
1// =============================================================================
2// #######
3// ### ### F: query_endpoint.rs
4// ## ## ## ## P: AppCore-Runtime
5// ## ##
6// C: 2026/05/31 13:38:42 by dnettoRaw
7// ## ## ## ## U: 2026/06/04 11:51:27 by dnettoRaw
8// ########### S: 0.6.0
9// =============================================================================
10
11//! Query endpoint contracts.
12
13pub use appcore_core::QueryName;
14use appcore_core::RuntimeResult;
15
16use crate::api::{ApiRequest, ApiResponse};
17
18/// Contract for query endpoint handling.
19pub trait QueryEndpoint: Send + Sync {
20 /// Returns the unique query capability handled by this endpoint.
21 fn query_name(&self) -> &QueryName;
22 /// Handles one transport-neutral query request.
23 fn handle_query(&self, request: ApiRequest) -> RuntimeResult<ApiResponse>;
24}