gl_client/signer/model/
cln.rs1use super::Request;
7pub use crate::pb::cln::*;
8use anyhow::anyhow;
9use prost::Message;
10
11pub fn decode_request(uri: &str, p: &[u8]) -> anyhow::Result<Request> {
12 Ok(match uri {
13 "/cln.Node/Getinfo" => Request::Getinfo(GetinfoRequest::decode(p)?),
14 "/cln.Node/ListPeers" => Request::ListPeers(ListpeersRequest::decode(p)?),
15 "/cln.Node/ListFunds" => Request::ListFunds(ListfundsRequest::decode(p)?),
16 "/cln.Node/SendPay" => Request::SendPay(SendpayRequest::decode(p)?),
17 "/cln.Node/ListChannels" => Request::ListChannels(ListchannelsRequest::decode(p)?),
18 "/cln.Node/AddGossip" => Request::AddGossip(AddgossipRequest::decode(p)?),
19 "/cln.Nonde/AutoCleanOnce" => Request::AutoCleanOnce(AutocleanonceRequest::decode(p)?),
20 "/cln.Node/CheckMessage" => Request::CheckMessage(CheckmessageRequest::decode(p)?),
21 "/cln.Node/Close" => Request::Close(CloseRequest::decode(p)?),
22 "/cln.Node/ConnectPeer" => Request::Connect(ConnectRequest::decode(p)?),
23 "/cln.Node/CreateInvoice" => Request::CreateInvoice(CreateinvoiceRequest::decode(p)?),
24 "/cln.Node/Datastore" => Request::Datastore(DatastoreRequest::decode(p)?),
25 "/cln.Node/CreateOnion" => Request::CreateOnion(CreateonionRequest::decode(p)?),
26 "/cln.Node/DelDatastore" => Request::DelDatastore(DeldatastoreRequest::decode(p)?),
27 "/cln.Node/DelExpiredInvoice" => Request::DelExpiredInvoice(DelinvoiceRequest::decode(p)?),
28 "/cln.Node/DelInvoice" => Request::DelInvoice(DelinvoiceRequest::decode(p)?),
29 "/cln.Node/Invoice" => Request::Invoice(InvoiceRequest::decode(p)?),
30 "/cln.Node/ListDatastore" => Request::ListDatastore(ListdatastoreRequest::decode(p)?),
31 "/cln.Node/ListInvoices" => Request::ListInvoices(ListinvoicesRequest::decode(p)?),
32 "/cln.Node/SendOnion" => Request::SendOnion(SendonionRequest::decode(p)?),
33 "/cln.Node/ListSendPays" => Request::ListSendPays(ListsendpaysRequest::decode(p)?),
34 "/cln.Node/ListTransactions" => {
35 Request::ListTransactions(ListtransactionsRequest::decode(p)?)
36 }
37 "/cln.Node/Pay" => Request::Pay(PayRequest::decode(p)?),
38 "/cln.Node/ListNodes" => Request::ListNodes(ListnodesRequest::decode(p)?),
39 "/cln.Node/WaitAnyInvoice" => Request::WaitAnyInvoice(WaitanyinvoiceRequest::decode(p)?),
40 "/cln.Node/WaitInvoice" => Request::WaitInvoice(WaitinvoiceRequest::decode(p)?),
41 "/cln.Node/WaitSendPay" => Request::WaitSendPay(WaitsendpayRequest::decode(p)?),
42 "/cln.Node/NewAddr" => Request::NewAddr(NewaddrRequest::decode(p)?),
43 "/cln.Node/Withdraw" => Request::Withdraw(WithdrawRequest::decode(p)?),
44 "/cln.Node/KeySend" => Request::KeySend(KeysendRequest::decode(p)?),
45 "/cln.Node/FundPsbt" => Request::FundPsbt(FundpsbtRequest::decode(p)?),
46 "/cln.Node/SendPsbt" => Request::SendPsbt(SendpsbtRequest::decode(p)?),
47 "/cln.Node/SignPsbt" => Request::SignPsbt(SignpsbtRequest::decode(p)?),
48 "/cln.Node/UtxoPsbt" => Request::UtxoPsbt(UtxopsbtRequest::decode(p)?),
49 "/cln.Node/TxDiscard" => Request::TxDiscard(TxdiscardRequest::decode(p)?),
50 "/cln.Node/TxPrepare" => Request::TxPrepare(TxprepareRequest::decode(p)?),
51 "/cln.Node/TxSend" => Request::TxSend(TxsendRequest::decode(p)?),
52 "/cln.Node/Disconnect" => Request::Disconnect(DisconnectRequest::decode(p)?),
53 "/cln.Node/Feerates" => Request::Feerates(FeeratesRequest::decode(p)?),
54 "/cln.Node/FundChannel" => Request::FundChannel(FundchannelRequest::decode(p)?),
55 "/cln.Node/GetRoute" => Request::GetRoute(GetrouteRequest::decode(p)?),
56 "/cln.Node/ListForwards" => Request::ListForwards(ListforwardsRequest::decode(p)?),
57 "/cln.Node/ListPays" => Request::ListPays(ListpaysRequest::decode(p)?),
58 "/cln.Node/Ping" => Request::Ping(PingRequest::decode(p)?),
59 "/cln.Node/SetChannel" => Request::SetChannel(SetchannelRequest::decode(p)?),
60 "/cln.Node/SignMessage" => Request::SignMessage(SignmessageRequest::decode(p)?),
61 "/cln.Node/FetchInvoice" => Request::FetchInvoice(FetchinvoiceRequest::decode(p)?),
62 "/cln.Node/Stop" => Request::Stop(StopRequest::decode(p)?),
63 "/cln.Node/ListClosedChannels" => {
64 Request::ListClosedChannels(ListclosedchannelsRequest::decode(p)?)
65 }
66 "/cln.Node/StaticBackup" => Request::StaticBackup(StaticbackupRequest::decode(p)?),
67 "/cln.Node/PreApproveInvoice" => {
68 Request::PreApproveInvoice(PreapproveinvoiceRequest::decode(p)?)
69 }
70 uri => return Err(anyhow!("Unknown URI {}, can't decode payload", uri)),
71 })
72}