apisix_admin_client/
client_ctrl_impl.rs1use serde_json::Value;
2use crate::client::ControllerConnector;
3use crate::config::ApisixConfig;
4use crate::models::ctrl_responses::CtrlHealthCheckResponse;
5type Result<T> = std::result::Result<T, crate::error::ApisixClientError>;
6pub async fn api_ctrl_schema(cfg: &ApisixConfig) -> Result<Value> {
7 let cc: ControllerConnector = ControllerConnector::new(cfg).await;
8 cc.schema().await.map_err(|e| crate::error::ApisixClientError::InvalidRequest(e.to_string()))
9}
10
11pub async fn api_ctrl_health_check(cfg: &ApisixConfig) -> Result<CtrlHealthCheckResponse> {
12 let cc: ControllerConnector = ControllerConnector::new(cfg).await;
13 cc.health_check().await.map_err(|e| crate::error::ApisixClientError::InvalidRequest(e.to_string()))
14}
15
16pub async fn api_ctrl_garbage_collect(cfg: &ApisixConfig) -> Result<()> {
17 let cc: ControllerConnector = ControllerConnector::new(cfg).await;
18 cc.gc().await.map_err(|e| crate::error::ApisixClientError::InvalidRequest(e.to_string()))
19}