gl_client/signer/model/
greenlight.rs

1// Decoding support for the legacy `greenlight.proto` models and
2// methods. This will be mostly deprecated as we go.
3
4use super::Request;
5pub use crate::pb::*;
6use anyhow::anyhow;
7use prost::Message;
8
9pub fn decode_request(uri: &str, p: &[u8]) -> anyhow::Result<Request> {
10    Ok(match uri {
11        "/greenlight.Node/Configure" => Request::GlConfig(crate::pb::GlConfig::decode(p)?),
12        "/greenlight.Node/TrampolinePay" => {
13            Request::TrampolinePay(crate::pb::TrampolinePayRequest::decode(p)?)
14        }
15        uri => return Err(anyhow!("Unknown URI {}, can't decode payload", uri)),
16    })
17}