use crate::payload;
use crate::proto::common::*;
use crate::{client::Client, error::Error};
impl Client {
pub async fn account_logout(
&self,
ctid_trader_account_id: i64,
) -> Result<ProtoOaAccountLogoutRes, Error> {
let req = ProtoOaAccountLogoutReq {
payload_type: Some(payload::OA_ACCOUNT_LOGOUT_REQ as i32),
ctid_trader_account_id,
};
self.command(
payload::OA_ACCOUNT_LOGOUT_REQ,
req,
payload::OA_ACCOUNT_LOGOUT_RES,
)
.await
}
pub async fn get_accounts_by_access_token(
&self,
access_token: &str,
) -> Result<ProtoOaGetAccountListByAccessTokenRes, Error> {
let req = ProtoOaGetAccountListByAccessTokenReq {
payload_type: Some(payload::OA_GET_ACCOUNTS_BY_ACCESS_TOKEN_REQ as i32),
access_token: access_token.to_string(),
};
self.command(
payload::OA_GET_ACCOUNTS_BY_ACCESS_TOKEN_REQ,
req,
payload::OA_GET_ACCOUNTS_BY_ACCESS_TOKEN_RES,
)
.await
}
pub async fn get_trader(&self, ctid_trader_account_id: i64) -> Result<ProtoOaTraderRes, Error> {
let req = ProtoOaTraderReq {
payload_type: Some(payload::OA_TRADER_REQ as i32),
ctid_trader_account_id,
};
self.command(payload::OA_TRADER_REQ, req, payload::OA_TRADER_RES)
.await
}
}
#[cfg(test)]
mod tests {
#[async_std::test]
async fn test() {}
}