mirror of
https://github.com/aljazceru/lightning.git
synced 2025-12-22 08:34:20 +01:00
msggen: Add staticbackup call to list of managed methods
Changelog-Added: cln-grpc: Added `staticbackup` support to cln-grpc
This commit is contained in:
committed by
Rusty Russell
parent
3e14056ce0
commit
9074341ef6
11
.msggen.json
11
.msggen.json
@@ -1500,6 +1500,9 @@
|
||||
"SignpsbtResponse": {
|
||||
"SignPsbt.signed_psbt": 1
|
||||
},
|
||||
"StaticbackupResponse": {
|
||||
"StaticBackup.scb[]": 1
|
||||
},
|
||||
"TxdiscardRequest": {
|
||||
"TxDiscard.txid": 1
|
||||
},
|
||||
@@ -5285,6 +5288,14 @@
|
||||
"added": "pre-v0.10.1",
|
||||
"deprecated": false
|
||||
},
|
||||
"StaticBackup": {
|
||||
"added": "pre-v0.10.1",
|
||||
"deprecated": null
|
||||
},
|
||||
"StaticBackup.scb[]": {
|
||||
"added": "pre-v0.10.1",
|
||||
"deprecated": false
|
||||
},
|
||||
"Stop": {
|
||||
"added": "pre-v0.10.1",
|
||||
"deprecated": null
|
||||
|
||||
8
cln-grpc/proto/node.proto
generated
8
cln-grpc/proto/node.proto
generated
@@ -64,6 +64,7 @@ service Node {
|
||||
rpc Stop(StopRequest) returns (StopResponse) {}
|
||||
rpc PreApproveKeysend(PreapprovekeysendRequest) returns (PreapprovekeysendResponse) {}
|
||||
rpc PreApproveInvoice(PreapproveinvoiceRequest) returns (PreapproveinvoiceResponse) {}
|
||||
rpc StaticBackup(StaticbackupRequest) returns (StaticbackupResponse) {}
|
||||
}
|
||||
|
||||
message GetinfoRequest {
|
||||
@@ -1745,3 +1746,10 @@ message PreapproveinvoiceRequest {
|
||||
|
||||
message PreapproveinvoiceResponse {
|
||||
}
|
||||
|
||||
message StaticbackupRequest {
|
||||
}
|
||||
|
||||
message StaticbackupResponse {
|
||||
repeated bytes scb = 1;
|
||||
}
|
||||
|
||||
26
cln-grpc/src/convert.rs
generated
26
cln-grpc/src/convert.rs
generated
@@ -1623,6 +1623,16 @@ impl From<responses::PreapproveinvoiceResponse> for pb::PreapproveinvoiceRespons
|
||||
}
|
||||
}
|
||||
|
||||
#[allow(unused_variables)]
|
||||
impl From<responses::StaticbackupResponse> for pb::StaticbackupResponse {
|
||||
fn from(c: responses::StaticbackupResponse) -> Self {
|
||||
Self {
|
||||
// Field: StaticBackup.scb[]
|
||||
scb: c.scb.into_iter().map(|i| hex::decode(i).unwrap()).collect(), // Rule #3 for type hex
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[allow(unused_variables)]
|
||||
impl From<requests::GetinfoRequest> for pb::GetinfoRequest {
|
||||
fn from(c: requests::GetinfoRequest) -> Self {
|
||||
@@ -2317,6 +2327,14 @@ impl From<requests::PreapproveinvoiceRequest> for pb::PreapproveinvoiceRequest {
|
||||
}
|
||||
}
|
||||
|
||||
#[allow(unused_variables)]
|
||||
impl From<requests::StaticbackupRequest> for pb::StaticbackupRequest {
|
||||
fn from(c: requests::StaticbackupRequest) -> Self {
|
||||
Self {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#[allow(unused_variables)]
|
||||
impl From<pb::GetinfoRequest> for requests::GetinfoRequest {
|
||||
@@ -2996,3 +3014,11 @@ impl From<pb::PreapproveinvoiceRequest> for requests::PreapproveinvoiceRequest {
|
||||
}
|
||||
}
|
||||
|
||||
#[allow(unused_variables)]
|
||||
impl From<pb::StaticbackupRequest> for requests::StaticbackupRequest {
|
||||
fn from(c: pb::StaticbackupRequest) -> Self {
|
||||
Self {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1818,4 +1818,36 @@ async fn pre_approve_invoice(
|
||||
|
||||
}
|
||||
|
||||
async fn static_backup(
|
||||
&self,
|
||||
request: tonic::Request<pb::StaticbackupRequest>,
|
||||
) -> Result<tonic::Response<pb::StaticbackupResponse>, tonic::Status> {
|
||||
let req = request.into_inner();
|
||||
let req: requests::StaticbackupRequest = req.into();
|
||||
debug!("Client asked for static_backup");
|
||||
trace!("static_backup request: {:?}", req);
|
||||
let mut rpc = ClnRpc::new(&self.rpc_path)
|
||||
.await
|
||||
.map_err(|e| Status::new(Code::Internal, e.to_string()))?;
|
||||
let result = rpc.call(Request::StaticBackup(req))
|
||||
.await
|
||||
.map_err(|e| Status::new(
|
||||
Code::Unknown,
|
||||
format!("Error calling method StaticBackup: {:?}", e)))?;
|
||||
match result {
|
||||
Response::StaticBackup(r) => {
|
||||
trace!("static_backup response: {:?}", r);
|
||||
Ok(tonic::Response::new(r.into()))
|
||||
},
|
||||
r => Err(Status::new(
|
||||
Code::Internal,
|
||||
format!(
|
||||
"Unexpected result {:?} to method call StaticBackup",
|
||||
r
|
||||
)
|
||||
)),
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
32
cln-rpc/src/model.rs
generated
32
cln-rpc/src/model.rs
generated
@@ -70,6 +70,7 @@ pub enum Request {
|
||||
Stop(requests::StopRequest),
|
||||
PreApproveKeysend(requests::PreapprovekeysendRequest),
|
||||
PreApproveInvoice(requests::PreapproveinvoiceRequest),
|
||||
StaticBackup(requests::StaticbackupRequest),
|
||||
}
|
||||
|
||||
#[derive(Clone, Debug, Serialize, Deserialize)]
|
||||
@@ -132,6 +133,7 @@ pub enum Response {
|
||||
Stop(responses::StopResponse),
|
||||
PreApproveKeysend(responses::PreapprovekeysendResponse),
|
||||
PreApproveInvoice(responses::PreapproveinvoiceResponse),
|
||||
StaticBackup(responses::StaticbackupResponse),
|
||||
}
|
||||
|
||||
|
||||
@@ -1555,6 +1557,20 @@ pub mod requests {
|
||||
type Response = super::responses::PreapproveinvoiceResponse;
|
||||
}
|
||||
|
||||
#[derive(Clone, Debug, Deserialize, Serialize)]
|
||||
pub struct StaticbackupRequest {
|
||||
}
|
||||
|
||||
impl From<StaticbackupRequest> for Request {
|
||||
fn from(r: StaticbackupRequest) -> Self {
|
||||
Request::StaticBackup(r)
|
||||
}
|
||||
}
|
||||
|
||||
impl IntoRequest for StaticbackupRequest {
|
||||
type Response = super::responses::StaticbackupResponse;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -4900,5 +4916,21 @@ pub mod responses {
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Clone, Debug, Deserialize, Serialize)]
|
||||
pub struct StaticbackupResponse {
|
||||
pub scb: Vec<String>,
|
||||
}
|
||||
|
||||
impl TryFrom<Response> for StaticbackupResponse {
|
||||
type Error = super::TryFromResponseError;
|
||||
|
||||
fn try_from(response: Response) -> Result<Self, Self::Error> {
|
||||
match response {
|
||||
Response::StaticBackup(response) => Ok(response),
|
||||
_ => Err(TryFromResponseError)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -111,6 +111,7 @@ def load_jsonrpc_service(schema_dir: str):
|
||||
# "help",
|
||||
"PreApproveKeysend",
|
||||
"PreApproveInvoice",
|
||||
"StaticBackup",
|
||||
]
|
||||
methods = [load_jsonrpc_method(name, schema_dir=schema_dir) for name in method_names]
|
||||
service = Service(name="Node", methods=methods)
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -294,6 +294,11 @@ class NodeStub(object):
|
||||
request_serializer=node__pb2.PreapproveinvoiceRequest.SerializeToString,
|
||||
response_deserializer=node__pb2.PreapproveinvoiceResponse.FromString,
|
||||
)
|
||||
self.StaticBackup = channel.unary_unary(
|
||||
'/cln.Node/StaticBackup',
|
||||
request_serializer=node__pb2.StaticbackupRequest.SerializeToString,
|
||||
response_deserializer=node__pb2.StaticbackupResponse.FromString,
|
||||
)
|
||||
|
||||
|
||||
class NodeServicer(object):
|
||||
@@ -635,6 +640,12 @@ class NodeServicer(object):
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
def StaticBackup(self, request, context):
|
||||
"""Missing associated documentation comment in .proto file."""
|
||||
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
||||
context.set_details('Method not implemented!')
|
||||
raise NotImplementedError('Method not implemented!')
|
||||
|
||||
|
||||
def add_NodeServicer_to_server(servicer, server):
|
||||
rpc_method_handlers = {
|
||||
@@ -918,6 +929,11 @@ def add_NodeServicer_to_server(servicer, server):
|
||||
request_deserializer=node__pb2.PreapproveinvoiceRequest.FromString,
|
||||
response_serializer=node__pb2.PreapproveinvoiceResponse.SerializeToString,
|
||||
),
|
||||
'StaticBackup': grpc.unary_unary_rpc_method_handler(
|
||||
servicer.StaticBackup,
|
||||
request_deserializer=node__pb2.StaticbackupRequest.FromString,
|
||||
response_serializer=node__pb2.StaticbackupResponse.SerializeToString,
|
||||
),
|
||||
}
|
||||
generic_handler = grpc.method_handlers_generic_handler(
|
||||
'cln.Node', rpc_method_handlers)
|
||||
@@ -1879,3 +1895,20 @@ class Node(object):
|
||||
node__pb2.PreapproveinvoiceResponse.FromString,
|
||||
options, channel_credentials,
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@staticmethod
|
||||
def StaticBackup(request,
|
||||
target,
|
||||
options=(),
|
||||
channel_credentials=None,
|
||||
call_credentials=None,
|
||||
insecure=False,
|
||||
compression=None,
|
||||
wait_for_ready=None,
|
||||
timeout=None,
|
||||
metadata=None):
|
||||
return grpc.experimental.unary_unary(request, target, '/cln.Node/StaticBackup',
|
||||
node__pb2.StaticbackupRequest.SerializeToString,
|
||||
node__pb2.StaticbackupResponse.FromString,
|
||||
options, channel_credentials,
|
||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
||||
|
||||
@@ -1371,3 +1371,9 @@ def preapprovekeysend2py(m):
|
||||
def preapproveinvoice2py(m):
|
||||
return remove_default({
|
||||
})
|
||||
|
||||
|
||||
def staticbackup2py(m):
|
||||
return remove_default({
|
||||
"scb": [hexlify(m.scb) for i in hexlify(m.scb)], # ArrayField[primitive] in generate_composite
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user