Expose RpcClient and RestClient interfaces as pub
authorJeffrey Czyz <jkczyz@gmail.com>
Thu, 4 Mar 2021 01:32:39 +0000 (17:32 -0800)
committerJeffrey Czyz <jkczyz@gmail.com>
Thu, 4 Mar 2021 01:32:39 +0000 (17:32 -0800)
Useful for use outside of the BlockSource context, e.g., when
implementing fee estimation or transaction broadcasting.

lightning-block-sync/src/http.rs
lightning-block-sync/src/rest.rs
lightning-block-sync/src/rpc.rs

index 0788bc989f5e3bfbdaeee747f50c7e0200e22560..a33d919d05179c7adccc8bf40fc7ed86b467bb21 100644 (file)
@@ -399,10 +399,10 @@ enum HttpMessageLength {
 }
 
 /// An HTTP response body in binary format.
-pub(crate) struct BinaryResponse(pub(crate) Vec<u8>);
+pub struct BinaryResponse(pub Vec<u8>);
 
 /// An HTTP response body in JSON format.
-pub(crate) struct JsonResponse(pub(crate) serde_json::Value);
+pub struct JsonResponse(pub serde_json::Value);
 
 /// Interprets bytes from an HTTP response body as binary data.
 impl TryFrom<Vec<u8>> for BinaryResponse {
index 3c2e76e23d7d5ee2eebd4a957185a34fef629583..3aff104d5546fe520407795d40e10307192a91ec 100644 (file)
@@ -24,7 +24,7 @@ impl RestClient {
        }
 
        /// Requests a resource encoded in `F` format and interpreted as type `T`.
-       async fn request_resource<F, T>(&mut self, resource_path: &str) -> std::io::Result<T>
+       pub async fn request_resource<F, T>(&mut self, resource_path: &str) -> std::io::Result<T>
        where F: TryFrom<Vec<u8>, Error = std::io::Error> + TryInto<T, Error = std::io::Error> {
                let host = format!("{}:{}", self.endpoint.host(), self.endpoint.port());
                let uri = format!("{}/{}", self.endpoint.path().trim_end_matches("/"), resource_path);
index 34cbd2e02c028eb51a364f431f509cabdee4c4c0..d59401e0f1c090d084f811cc6b9d8be731887ff9 100644 (file)
@@ -34,7 +34,7 @@ impl RpcClient {
        }
 
        /// Calls a method with the response encoded in JSON format and interpreted as type `T`.
-       async fn call_method<T>(&mut self, method: &str, params: &[serde_json::Value]) -> std::io::Result<T>
+       pub async fn call_method<T>(&mut self, method: &str, params: &[serde_json::Value]) -> std::io::Result<T>
        where JsonResponse: TryFrom<Vec<u8>, Error = std::io::Error> + TryInto<T, Error = std::io::Error> {
                let host = format!("{}:{}", self.endpoint.host(), self.endpoint.port());
                let uri = self.endpoint.path();