@@ -154,18 +154,24 @@ pub trait KVStore {
154
154
fn list ( & self , primary_namespace : & str , secondary_namespace : & str ) -> Result < Vec < String > , io:: Error > ;
155
155
}
156
156
157
+
157
158
/// Trait that handles persisting a [`ChannelManager`], [`NetworkGraph`], and [`WriteableScore`] to disk.
158
159
///
159
160
/// [`ChannelManager`]: crate::ln::channelmanager::ChannelManager
160
- pub trait Persister < ' a , CM : Deref , L : Deref , S : WriteableScore < ' a > >
161
- where
162
- CM :: Target : ' static + AChannelManager ,
163
- L :: Target : ' static + Logger ,
161
+ pub trait Persister < ' a , M : Deref , T : Deref , ES : Deref , NS : Deref , SP : Deref , F : Deref , R : Deref , L : Deref , S : WriteableScore < ' a > >
162
+ where M :: Target : ' static + chain:: Watch < <SP :: Target as SignerProvider >:: EcdsaSigner > ,
163
+ T :: Target : ' static + BroadcasterInterface ,
164
+ ES :: Target : ' static + EntropySource ,
165
+ NS :: Target : ' static + crate :: sign:: NodeSigner ,
166
+ SP :: Target : ' static + SignerProvider ,
167
+ F :: Target : ' static + FeeEstimator ,
168
+ R :: Target : ' static + crate :: routing:: router:: Router ,
169
+ L :: Target : ' static + Logger ,
164
170
{
165
171
/// Persist the given ['ChannelManager'] to disk, returning an error if persistence failed.
166
172
///
167
173
/// [`ChannelManager`]: crate::ln::channelmanager::ChannelManager
168
- fn persist_manager ( & self , channel_manager : & CM ) -> Result < ( ) , io:: Error > ;
174
+ fn persist_manager ( & self , channel_manager : & crate :: ln :: channelmanager :: ChannelManager < M , T , ES , NS , SP , F , R , L > ) -> Result < ( ) , io:: Error > ;
169
175
170
176
/// Persist the given [`NetworkGraph`] to disk, returning an error if persistence failed.
171
177
fn persist_graph ( & self , network_graph : & NetworkGraph < L > ) -> Result < ( ) , io:: Error > ;
@@ -174,13 +180,17 @@ where
174
180
fn persist_scorer ( & self , scorer : & S ) -> Result < ( ) , io:: Error > ;
175
181
}
176
182
177
-
178
- impl < ' a , A : KVStore + ?Sized , CM : Deref , L : Deref , S : WriteableScore < ' a > > Persister < ' a , CM , L , S > for A
179
- where
180
- CM :: Target : ' static + AChannelManager ,
181
- L :: Target : ' static + Logger ,
183
+ impl < ' a , A : KVStore + ?Sized , M : Deref , T : Deref , ES : Deref , NS : Deref , SP : Deref , F : Deref , R : Deref , L : Deref , S : WriteableScore < ' a > > Persister < ' a , M , T , ES , NS , SP , F , R , L , S > for A
184
+ where M :: Target : ' static + chain:: Watch < <SP :: Target as SignerProvider >:: EcdsaSigner > ,
185
+ T :: Target : ' static + BroadcasterInterface ,
186
+ ES :: Target : ' static + EntropySource ,
187
+ NS :: Target : ' static + crate :: sign:: NodeSigner ,
188
+ SP :: Target : ' static + SignerProvider ,
189
+ F :: Target : ' static + FeeEstimator ,
190
+ R :: Target : ' static + crate :: routing:: router:: Router ,
191
+ L :: Target : ' static + Logger ,
182
192
{
183
- fn persist_manager ( & self , channel_manager : & CM ) -> Result < ( ) , io:: Error > {
193
+ fn persist_manager ( & self , channel_manager : & crate :: ln :: channelmanager :: ChannelManager < M , T , ES , NS , SP , F , R , L > ) -> Result < ( ) , io:: Error > {
184
194
self . write ( CHANNEL_MANAGER_PERSISTENCE_PRIMARY_NAMESPACE ,
185
195
CHANNEL_MANAGER_PERSISTENCE_SECONDARY_NAMESPACE ,
186
196
CHANNEL_MANAGER_PERSISTENCE_KEY ,
0 commit comments