@@ -112,6 +112,34 @@ impl_writeable_tlv_based_enum_upgradable!(NetworkUpdate,
112
112
113
113
/// An [`EventHandler`] decorator for applying updates from [`Event::PaymentFailed`] to the
114
114
/// [`NetworkGraph`].
115
+ ///
116
+ /// # Example
117
+ ///
118
+ /// ```
119
+ /// # extern crate bitcoin;
120
+ /// #
121
+ /// # use bitcoin::blockdata::constants::genesis_block;
122
+ /// # use bitcoin::network::constants::Network;
123
+ /// # use lightning::routing::network_graph::{NetworkGraph, NetworkUpdateHandler};
124
+ /// # use lightning::util::events::Event;
125
+ /// # use lightning::util::logger::{Logger, Record};
126
+ /// #
127
+ /// # struct NullLogger;
128
+ /// # impl Logger for NullLogger {
129
+ /// # fn log(&self, _record: &Record) {}
130
+ /// # }
131
+ /// let network_graph = NetworkGraph::new(genesis_block(Network::Testnet).header.block_hash());
132
+ /// let logger = NullLogger {};
133
+ /// let event_handler = |event: &Event| {
134
+ /// // Handle event
135
+ /// };
136
+ /// let event_handler = NetworkUpdateHandler::new(&network_graph, &logger, event_handler);
137
+ /// ```
138
+ ///
139
+ /// Once `event_handler` has been decorated, use it with any implementation of [`EventsProvider`] as
140
+ /// usual.
141
+ ///
142
+ /// [`EventsProvider`]: crate::util::events::EventsProvider
115
143
pub struct NetworkUpdateHandler < G : Deref < Target =NetworkGraph > , L : Deref , E : EventHandler >
116
144
where L :: Target : Logger {
117
145
secp_ctx : Secp256k1 < secp256k1:: VerifyOnly > ,
0 commit comments