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": {
|
"SignpsbtResponse": {
|
||||||
"SignPsbt.signed_psbt": 1
|
"SignPsbt.signed_psbt": 1
|
||||||
},
|
},
|
||||||
|
"StaticbackupResponse": {
|
||||||
|
"StaticBackup.scb[]": 1
|
||||||
|
},
|
||||||
"TxdiscardRequest": {
|
"TxdiscardRequest": {
|
||||||
"TxDiscard.txid": 1
|
"TxDiscard.txid": 1
|
||||||
},
|
},
|
||||||
@@ -5285,6 +5288,14 @@
|
|||||||
"added": "pre-v0.10.1",
|
"added": "pre-v0.10.1",
|
||||||
"deprecated": false
|
"deprecated": false
|
||||||
},
|
},
|
||||||
|
"StaticBackup": {
|
||||||
|
"added": "pre-v0.10.1",
|
||||||
|
"deprecated": null
|
||||||
|
},
|
||||||
|
"StaticBackup.scb[]": {
|
||||||
|
"added": "pre-v0.10.1",
|
||||||
|
"deprecated": false
|
||||||
|
},
|
||||||
"Stop": {
|
"Stop": {
|
||||||
"added": "pre-v0.10.1",
|
"added": "pre-v0.10.1",
|
||||||
"deprecated": null
|
"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 Stop(StopRequest) returns (StopResponse) {}
|
||||||
rpc PreApproveKeysend(PreapprovekeysendRequest) returns (PreapprovekeysendResponse) {}
|
rpc PreApproveKeysend(PreapprovekeysendRequest) returns (PreapprovekeysendResponse) {}
|
||||||
rpc PreApproveInvoice(PreapproveinvoiceRequest) returns (PreapproveinvoiceResponse) {}
|
rpc PreApproveInvoice(PreapproveinvoiceRequest) returns (PreapproveinvoiceResponse) {}
|
||||||
|
rpc StaticBackup(StaticbackupRequest) returns (StaticbackupResponse) {}
|
||||||
}
|
}
|
||||||
|
|
||||||
message GetinfoRequest {
|
message GetinfoRequest {
|
||||||
@@ -1745,3 +1746,10 @@ message PreapproveinvoiceRequest {
|
|||||||
|
|
||||||
message PreapproveinvoiceResponse {
|
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)]
|
#[allow(unused_variables)]
|
||||||
impl From<requests::GetinfoRequest> for pb::GetinfoRequest {
|
impl From<requests::GetinfoRequest> for pb::GetinfoRequest {
|
||||||
fn from(c: requests::GetinfoRequest) -> Self {
|
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)]
|
#[allow(unused_variables)]
|
||||||
impl From<pb::GetinfoRequest> for requests::GetinfoRequest {
|
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),
|
Stop(requests::StopRequest),
|
||||||
PreApproveKeysend(requests::PreapprovekeysendRequest),
|
PreApproveKeysend(requests::PreapprovekeysendRequest),
|
||||||
PreApproveInvoice(requests::PreapproveinvoiceRequest),
|
PreApproveInvoice(requests::PreapproveinvoiceRequest),
|
||||||
|
StaticBackup(requests::StaticbackupRequest),
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Clone, Debug, Serialize, Deserialize)]
|
#[derive(Clone, Debug, Serialize, Deserialize)]
|
||||||
@@ -132,6 +133,7 @@ pub enum Response {
|
|||||||
Stop(responses::StopResponse),
|
Stop(responses::StopResponse),
|
||||||
PreApproveKeysend(responses::PreapprovekeysendResponse),
|
PreApproveKeysend(responses::PreapprovekeysendResponse),
|
||||||
PreApproveInvoice(responses::PreapproveinvoiceResponse),
|
PreApproveInvoice(responses::PreapproveinvoiceResponse),
|
||||||
|
StaticBackup(responses::StaticbackupResponse),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -1555,6 +1557,20 @@ pub mod requests {
|
|||||||
type Response = super::responses::PreapproveinvoiceResponse;
|
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",
|
# "help",
|
||||||
"PreApproveKeysend",
|
"PreApproveKeysend",
|
||||||
"PreApproveInvoice",
|
"PreApproveInvoice",
|
||||||
|
"StaticBackup",
|
||||||
]
|
]
|
||||||
methods = [load_jsonrpc_method(name, schema_dir=schema_dir) for name in method_names]
|
methods = [load_jsonrpc_method(name, schema_dir=schema_dir) for name in method_names]
|
||||||
service = Service(name="Node", methods=methods)
|
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,
|
request_serializer=node__pb2.PreapproveinvoiceRequest.SerializeToString,
|
||||||
response_deserializer=node__pb2.PreapproveinvoiceResponse.FromString,
|
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):
|
class NodeServicer(object):
|
||||||
@@ -635,6 +640,12 @@ class NodeServicer(object):
|
|||||||
context.set_details('Method not implemented!')
|
context.set_details('Method not implemented!')
|
||||||
raise NotImplementedError('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):
|
def add_NodeServicer_to_server(servicer, server):
|
||||||
rpc_method_handlers = {
|
rpc_method_handlers = {
|
||||||
@@ -918,6 +929,11 @@ def add_NodeServicer_to_server(servicer, server):
|
|||||||
request_deserializer=node__pb2.PreapproveinvoiceRequest.FromString,
|
request_deserializer=node__pb2.PreapproveinvoiceRequest.FromString,
|
||||||
response_serializer=node__pb2.PreapproveinvoiceResponse.SerializeToString,
|
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(
|
generic_handler = grpc.method_handlers_generic_handler(
|
||||||
'cln.Node', rpc_method_handlers)
|
'cln.Node', rpc_method_handlers)
|
||||||
@@ -1879,3 +1895,20 @@ class Node(object):
|
|||||||
node__pb2.PreapproveinvoiceResponse.FromString,
|
node__pb2.PreapproveinvoiceResponse.FromString,
|
||||||
options, channel_credentials,
|
options, channel_credentials,
|
||||||
insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
|
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):
|
def preapproveinvoice2py(m):
|
||||||
return remove_default({
|
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