datahub 0.1.1

Simple Alibaba Cloud DataHub Client in Rust
Documentation
#[macro_export]
macro_rules! parse_json_response {
    ($res:expr,$ty:ty) => {
        if $res.status().is_success() {
            let request_id_header = $res.headers().get("x-datahub-request-id");
            let request_id = request_id_header
                .as_ref()
                .map_or("", |h| h.to_str().unwrap_or(""))
                .to_string();
            let mut list_project_response: $ty = $res.json().await?;
            list_project_response.set_request_id(Some(request_id));
            Ok(list_project_response)
        } else {
            let err_info: $crate::models::err_msg::ErrorInfo = $res.json().await?;
            Err(err_info.into())
        }
    };
}

#[macro_export]
macro_rules! parse_empty_response {
    ($res:expr) => {
        if $res.status().is_success() {
            let request_id_header = $res.headers().get("x-datahub-request-id");
            let request_id = request_id_header
                .as_ref()
                .map_or("", |h| h.to_str().unwrap_or(""))
                .to_string();
            let mut list_project_response: $crate::models::EmptyResponse = Default::default();
            list_project_response.set_request_id(Some(request_id));
            Ok(list_project_response)
        } else {
            let err_info: $crate::models::err_msg::ErrorInfo = $res.json().await?;
            Err(err_info.into())
        }
    };
}