cosmrs/slashing/
query_signing_info_request.rs

1use crate::{proto, AccountId, ErrorReport, Result};
2
3/// QuerySigningInfoRequest is the request type for the Query/SigningInfo RPC
4/// method
5#[derive(Clone, Debug, Eq, PartialEq)]
6pub struct QuerySigningInfoRequest {
7    /// cons_address is the address to query signing info of
8    pub cons_address: AccountId,
9}
10
11impl TryFrom<proto::cosmos::slashing::v1beta1::QuerySigningInfoRequest>
12    for QuerySigningInfoRequest
13{
14    type Error = ErrorReport;
15
16    fn try_from(
17        proto: cosmos_sdk_proto::cosmos::slashing::v1beta1::QuerySigningInfoRequest,
18    ) -> Result<Self> {
19        Ok(QuerySigningInfoRequest {
20            cons_address: proto.cons_address.parse()?,
21        })
22    }
23}
24
25impl From<QuerySigningInfoRequest> for proto::cosmos::slashing::v1beta1::QuerySigningInfoRequest {
26    fn from(signing_info_response: QuerySigningInfoRequest) -> Self {
27        proto::cosmos::slashing::v1beta1::QuerySigningInfoRequest {
28            cons_address: signing_info_response.cons_address.to_string(),
29        }
30    }
31}