Browse Source

darkfid/rpc_xmr: Notify proposals subscriber with successful new block

x 8 months ago
parent
commit
521cb3901b
1 changed files with 6 additions and 0 deletions
  1. 6 0
      bin/darkfid/src/rpc_xmr.rs

+ 6 - 0
bin/darkfid/src/rpc_xmr.rs

@@ -29,9 +29,11 @@ use darkfi::{
         },
         },
         HeaderHash,
         HeaderHash,
     },
     },
+    util::encoding::base64,
     rpc::jsonrpc::{ErrorCode, ErrorCode::InvalidParams, JsonError, JsonResponse, JsonResult},
     rpc::jsonrpc::{ErrorCode, ErrorCode::InvalidParams, JsonError, JsonResponse, JsonResult},
     validator::consensus::Proposal,
     validator::consensus::Proposal,
 };
 };
+use darkfi_serial::serialize_async;
 use darkfi_sdk::crypto::PublicKey;
 use darkfi_sdk::crypto::PublicKey;
 use hex::FromHex;
 use hex::FromHex;
 use tinyjson::JsonValue;
 use tinyjson::JsonValue;
@@ -504,6 +506,10 @@ impl DarkfiNode {
             return JsonError::new(ErrorCode::InternalError, None, id).into()
             return JsonError::new(ErrorCode::InternalError, None, id).into()
         }
         }
 
 
+        let proposals_sub = self.subscribers.get("proposals").unwrap();
+        let enc_prop = JsonValue::String(base64::encode(&serialize_async(&proposal).await));
+        proposals_sub.notify(vec![enc_prop].into()).await;
+
         info!(
         info!(
             target: "darkfid::rpc_xmr::xmr_merge_mining_submit_solution",
             target: "darkfid::rpc_xmr::xmr_merge_mining_submit_solution",
             "[RPC-XMR] Broadcasting new block to network",
             "[RPC-XMR] Broadcasting new block to network",