pub const API_SERVICE: &str = "zera_api.APIService";
pub const TXN_SERVICE: &str = "zera_txn.TXNService";
pub const VALIDATOR_SERVICE: &str = "zera_validator.ValidatorService";
pub const GUARDIAN_SERVICE: &str = "zera_guardian.GuardianService";
pub const API_PREFIX: &str = "/api";
pub const TXN_PREFIX: &str = "/txn";
pub const VALIDATOR_PREFIX: &str = "/validator";
pub const GUARDIAN_PREFIX: &str = "/guardian";
pub fn rewrite_service_path(service_name: &str, method_name: &str) -> Option<String> {
let prefix = match service_name {
API_SERVICE => API_PREFIX,
TXN_SERVICE => TXN_PREFIX,
VALIDATOR_SERVICE => VALIDATOR_PREFIX,
GUARDIAN_SERVICE => GUARDIAN_PREFIX,
_ => return None,
};
Some(format!("{prefix}/{method_name}"))
}
pub fn api_path(method_name: &str) -> String {
format!("{API_PREFIX}/{method_name}")
}
pub fn txn_path(method_name: &str) -> String {
format!("{TXN_PREFIX}/{method_name}")
}
pub fn guardian_path(method_name: &str) -> String {
format!("{GUARDIAN_PREFIX}/{method_name}")
}