Allow custom logger types.
[rapid-gossip-sync-server] / src / types.rs
index 9badc1e4c2abe5b87ba878b3d63a446461e8aed0..b18cbe739180a8389f60add6b9d79b027775fa31 100644 (file)
@@ -1,6 +1,6 @@
 use std::sync::Arc;
-use std::ops::Deref;
 
+use lightning::sign::KeysManager;
 use lightning::ln::msgs::{ChannelAnnouncement, ChannelUpdate};
 use lightning::ln::peer_handler::{ErroringMessageHandler, IgnoringMessageHandler, PeerManager};
 use lightning::util::logger::{Logger, Record};
@@ -8,30 +8,25 @@ use lightning::util::logger::{Logger, Record};
 use crate::downloader::GossipRouter;
 use crate::verifier::ChainVerifier;
 
-pub(crate) type GossipChainAccess = Arc<ChainVerifier>;
-pub(crate) type GossipPeerManager = Arc<PeerManager<lightning_net_tokio::SocketDescriptor, ErroringMessageHandler, Arc<GossipRouter>, TestLogger, IgnoringMessageHandler>>;
+pub(crate) type GossipChainAccess<L> = Arc<ChainVerifier<L>>;
+pub(crate) type GossipPeerManager<L> = Arc<PeerManager<lightning_net_tokio::SocketDescriptor, ErroringMessageHandler, Arc<GossipRouter<L>>, IgnoringMessageHandler, Arc<L>, IgnoringMessageHandler, Arc<KeysManager>>>;
 
 #[derive(Debug)]
 pub(crate) enum GossipMessage {
        ChannelAnnouncement(ChannelAnnouncement),
        ChannelUpdate(ChannelUpdate),
-       InitialSyncComplete,
 }
 
 #[derive(Clone, Copy)]
-pub(crate) struct TestLogger {}
-impl Deref for TestLogger {
-       type Target = Self;
-       fn deref(&self) -> &Self { self }
-}
+pub struct RGSSLogger {}
 
-impl TestLogger {
-       pub(crate) fn new() -> TestLogger {
+impl RGSSLogger {
+       pub fn new() -> RGSSLogger {
                Self {}
        }
 }
 
-impl Logger for TestLogger {
+impl Logger for RGSSLogger {
        fn log(&self, record: &Record) {
                // TODO: allow log level threshold to be set
                println!("{:<5} [{} : {}, {}] {}", record.level.to_string(), record.module_path, record.file, record.line, record.args);