Skip to content

Commit 52f494d

Browse files
f move Router to router module
1 parent 9e040ea commit 52f494d

File tree

4 files changed

+21
-21
lines changed

4 files changed

+21
-21
lines changed

lightning-invoice/src/payment.rs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,10 @@
3535
//! #
3636
//! # use lightning::io;
3737
//! # use lightning::ln::{PaymentHash, PaymentPreimage, PaymentSecret};
38-
//! # use lightning::ln::channelmanager::{ChannelDetails, InFlightHtlcs, PaymentId, PaymentSendFailure, Router};
38+
//! # use lightning::ln::channelmanager::{ChannelDetails, InFlightHtlcs, PaymentId, PaymentSendFailure};
3939
//! # use lightning::ln::msgs::LightningError;
4040
//! # use lightning::routing::gossip::NodeId;
41-
//! # use lightning::routing::router::{Route, RouteHop, RouteParameters};
41+
//! # use lightning::routing::router::{Route, RouteHop, RouteParameters, Router};
4242
//! # use lightning::routing::scoring::{ChannelUsage, Score};
4343
//! # use lightning::util::events::{Event, EventHandler, EventsProvider};
4444
//! # use lightning::util::logger::{Logger, Record};
@@ -142,10 +142,10 @@ use bitcoin_hashes::sha256::Hash as Sha256;
142142

143143
use crate::prelude::*;
144144
use lightning::ln::{PaymentHash, PaymentPreimage, PaymentSecret};
145-
use lightning::ln::channelmanager::{ChannelDetails, InFlightHtlcs, PaymentId, PaymentSendFailure, Router};
145+
use lightning::ln::channelmanager::{ChannelDetails, InFlightHtlcs, PaymentId, PaymentSendFailure};
146146
use lightning::ln::msgs::LightningError;
147147
use lightning::routing::gossip::NodeId;
148-
use lightning::routing::router::{PaymentParameters, Route, RouteHop, RouteParameters};
148+
use lightning::routing::router::{PaymentParameters, Route, RouteHop, RouteParameters, Router};
149149
use lightning::util::errors::APIError;
150150
use lightning::util::events::{Event, EventHandler};
151151
use lightning::util::logger::Logger;
@@ -268,7 +268,7 @@ pub trait Payer {
268268
/// A trait defining behavior for a [`Router`] implementation that also supports scoring channels
269269
/// based on payment and probe success/failure.
270270
///
271-
/// [`Router`]: lightning::ln::channelmanager::Router
271+
/// [`Router`]: lightning::routing::router::Router
272272
pub trait ScoringRouter: Router {
273273
/// Lets the router know that payment through a specific path has failed.
274274
fn notify_payment_path_failed(&self, path: &[&RouteHop], short_channel_id: u64);
@@ -739,7 +739,7 @@ mod tests {
739739
use lightning::ln::functional_test_utils::*;
740740
use lightning::ln::msgs::{ChannelMessageHandler, ErrorAction, LightningError};
741741
use lightning::routing::gossip::{EffectiveCapacity, NodeId};
742-
use lightning::routing::router::{PaymentParameters, Route, RouteHop};
742+
use lightning::routing::router::{PaymentParameters, Route, RouteHop, Router};
743743
use lightning::routing::scoring::{ChannelUsage, LockableScore, Score};
744744
use lightning::util::test_utils::TestLogger;
745745
use lightning::util::errors::APIError;
@@ -1780,7 +1780,7 @@ mod tests {
17801780
}
17811781
}
17821782

1783-
impl channelmanager::Router for TestRouter {
1783+
impl Router for TestRouter {
17841784
fn find_route(
17851785
&self, payer: &PublicKey, route_params: &RouteParameters,
17861786
_first_hops: Option<&[&ChannelDetails]>, inflight_htlcs: InFlightHtlcs
@@ -1835,7 +1835,7 @@ mod tests {
18351835

18361836
struct FailingRouter;
18371837

1838-
impl channelmanager::Router for FailingRouter {
1838+
impl Router for FailingRouter {
18391839
fn find_route(
18401840
&self, _payer: &PublicKey, _params: &RouteParameters, _first_hops: Option<&[&ChannelDetails]>,
18411841
_inflight_htlcs: InFlightHtlcs,
@@ -2099,7 +2099,7 @@ mod tests {
20992099
// *** Full Featured Functional Tests with a Real ChannelManager ***
21002100
struct ManualRouter(RefCell<VecDeque<Result<Route, LightningError>>>);
21012101

2102-
impl channelmanager::Router for ManualRouter {
2102+
impl Router for ManualRouter {
21032103
fn find_route(
21042104
&self, _payer: &PublicKey, _params: &RouteParameters, _first_hops: Option<&[&ChannelDetails]>,
21052105
_inflight_htlcs: InFlightHtlcs

lightning-invoice/src/utils.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,13 @@ use lightning::chain;
1010
use lightning::chain::chaininterface::{BroadcasterInterface, FeeEstimator};
1111
use lightning::chain::keysinterface::{Recipient, KeysInterface, Sign};
1212
use lightning::ln::{PaymentHash, PaymentPreimage, PaymentSecret};
13-
use lightning::ln::channelmanager::{ChannelDetails, ChannelManager, InFlightHtlcs, PaymentId, PaymentSendFailure, MIN_FINAL_CLTV_EXPIRY, Router};
13+
use lightning::ln::channelmanager::{ChannelDetails, ChannelManager, InFlightHtlcs, PaymentId, PaymentSendFailure, MIN_FINAL_CLTV_EXPIRY};
1414
#[cfg(feature = "std")]
1515
use lightning::ln::channelmanager::{PhantomRouteHints, MIN_CLTV_EXPIRY_DELTA};
1616
use lightning::ln::inbound_payment::{create, create_from_hash, ExpandedKey};
1717
use lightning::ln::msgs::LightningError;
1818
use lightning::routing::gossip::{NetworkGraph, NodeId, RoutingFees};
19-
use lightning::routing::router::{Route, RouteHint, RouteHintHop, RouteParameters, find_route, RouteHop};
19+
use lightning::routing::router::{Route, RouteHint, RouteHintHop, RouteParameters, find_route, RouteHop, Router};
2020
use lightning::routing::scoring::{ChannelUsage, LockableScore, Score};
2121
use lightning::util::logger::Logger;
2222
use secp256k1::PublicKey;

lightning/src/ln/channelmanager.rs

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -106,15 +106,6 @@ impl Readable for InFlightHtlcs {
106106
}
107107
}
108108

109-
/// A trait defining behavior for routing an payment.
110-
pub trait Router {
111-
/// Finds a [`Route`] between `payer` and `payee` for a payment with the given values.
112-
fn find_route(
113-
&self, payer: &PublicKey, route_params: &RouteParameters,
114-
first_hops: Option<&[&ChannelDetails]>, inflight_htlcs: InFlightHtlcs
115-
) -> Result<Route, LightningError>;
116-
}
117-
118109
// We hold various information about HTLC relay in the HTLC objects in Channel itself:
119110
//
120111
// Upon receipt of an HTLC from a peer, we'll give it a PendingHTLCStatus indicating if it should

lightning/src/routing/router.rs

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
1515
use bitcoin::secp256k1::PublicKey;
1616

17-
use crate::ln::channelmanager::ChannelDetails;
17+
use crate::ln::channelmanager::{ChannelDetails, InFlightHtlcs};
1818
use crate::ln::features::{ChannelFeatures, InvoiceFeatures, NodeFeatures};
1919
use crate::ln::msgs::{DecodeError, ErrorAction, LightningError, MAX_VALUE_MSAT};
2020
use crate::routing::gossip::{DirectedChannelInfoWithUpdate, EffectiveCapacity, ReadOnlyNetworkGraph, NetworkGraph, NodeId, RoutingFees};
@@ -29,6 +29,15 @@ use alloc::collections::BinaryHeap;
2929
use core::cmp;
3030
use core::ops::Deref;
3131

32+
/// A trait defining behavior for routing an payment.
33+
pub trait Router {
34+
/// Finds a [`Route`] between `payer` and `payee` for a payment with the given values.
35+
fn find_route(
36+
&self, payer: &PublicKey, route_params: &RouteParameters,
37+
first_hops: Option<&[&ChannelDetails]>, inflight_htlcs: InFlightHtlcs
38+
) -> Result<Route, LightningError>;
39+
}
40+
3241
/// A hop in a route
3342
#[derive(Clone, Debug, Hash, PartialEq, Eq)]
3443
pub struct RouteHop {

0 commit comments

Comments
 (0)