otx_pool/rpc/impl.rs
1use super::{OtxPoolRpc, OtxPoolRpcImpl};
2
3use otx_format::{jsonrpc_types::OpenTransaction, types::OpenTxStatus};
4
5use ckb_types::H256;
6use jsonrpc_core::Result as RpcResult;
7
8impl OtxPoolRpc for OtxPoolRpcImpl {
9 fn submit_otx(&self, otx: OpenTransaction) -> RpcResult<H256> {
10 self.otx_pool.insert(otx).map_err(Into::into)
11 }
12
13 fn query_otx_status_by_id(&self, id: H256) -> RpcResult<Option<OpenTxStatus>> {
14 Ok(self.otx_pool.get_otx_by_id(id).map(|otx| otx.status))
15 }
16}