[−][src]Struct interledger_ccp::CcpRouteManager
The Routing Manager Service.
This implements the Connector-to-Connector Protocol (CCP) for exchanging route updates with peers. This service handles incoming CCP messages and sends updates to peers. It manages the routing table in the Store and updates it with the best routes determined by per-account configuration and the broadcasts we have received from peers.
Methods
impl<I, O, S, A> CcpRouteManager<I, O, S, A> where
I: IncomingService<A> + Clone + Send + Sync + 'static,
O: OutgoingService<A> + Clone + Send + Sync + 'static,
S: AddressStore + RouteManagerStore<Account = A> + Clone + Send + Sync + 'static,
A: CcpRoutingAccount + Send + Sync + 'static,
[src]
I: IncomingService<A> + Clone + Send + Sync + 'static,
O: OutgoingService<A> + Clone + Send + Sync + 'static,
S: AddressStore + RouteManagerStore<Account = A> + Clone + Send + Sync + 'static,
A: CcpRoutingAccount + Send + Sync + 'static,
pub fn start_broadcast_interval(
&self,
interval: u64
) -> impl Future<Item = (), Error = ()>
[src]
&self,
interval: u64
) -> impl Future<Item = (), Error = ()>
Returns a future that will trigger this service to update its routes and broadcast updates to peers on the given interval.
pub fn broadcast_routes(&self) -> impl Future<Item = (), Error = ()>
[src]
Trait Implementations
impl<I: Clone, O: Clone, S: Clone, A: Clone + Account> Clone for CcpRouteManager<I, O, S, A> where
A::AccountId: Clone,
A::AccountId: Clone,
[src]
A::AccountId: Clone,
A::AccountId: Clone,
fn clone(&self) -> CcpRouteManager<I, O, S, A>
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl<I, O, S, A> IncomingService<A> for CcpRouteManager<I, O, S, A> where
I: IncomingService<A> + Clone + Send + Sync + 'static,
O: OutgoingService<A> + Clone + Send + Sync + 'static,
S: AddressStore + RouteManagerStore<Account = A> + Clone + Send + Sync + 'static,
A: CcpRoutingAccount + Send + Sync + 'static,
[src]
I: IncomingService<A> + Clone + Send + Sync + 'static,
O: OutgoingService<A> + Clone + Send + Sync + 'static,
S: AddressStore + RouteManagerStore<Account = A> + Clone + Send + Sync + 'static,
A: CcpRoutingAccount + Send + Sync + 'static,
type Future = BoxedIlpFuture
fn handle_request(&mut self, request: IncomingRequest<A>) -> Self::Future
[src]
Handle the IncomingRequest if it is a CCP protocol message or pass it on to the next handler if not
fn wrap<F, R>(self, f: F) -> WrappedService<F, Self, A> where
F: Fn(IncomingRequest<A>, Self) -> R,
R: Future<Item = Fulfill, Error = Reject> + Send + 'static,
Self: Clone,
[src]
F: Fn(IncomingRequest<A>, Self) -> R,
R: Future<Item = Fulfill, Error = Reject> + Send + 'static,
Self: Clone,
Auto Trait Implementations
impl<I, O, S, A> Send for CcpRouteManager<I, O, S, A> where
A: Sync,
I: Send,
O: Send,
S: Send,
<A as Account>::AccountId: Send + Sync,
A: Sync,
I: Send,
O: Send,
S: Send,
<A as Account>::AccountId: Send + Sync,
impl<I, O, S, A> Sync for CcpRouteManager<I, O, S, A> where
A: Sync,
I: Sync,
O: Sync,
S: Sync,
<A as Account>::AccountId: Send + Sync,
A: Sync,
I: Sync,
O: Sync,
S: Sync,
<A as Account>::AccountId: Send + Sync,
impl<I, O, S, A> Unpin for CcpRouteManager<I, O, S, A> where
I: Unpin,
O: Unpin,
S: Unpin,
I: Unpin,
O: Unpin,
S: Unpin,
impl<I, O, S, A> !UnwindSafe for CcpRouteManager<I, O, S, A>
impl<I, O, S, A> !RefUnwindSafe for CcpRouteManager<I, O, S, A>
Blanket Implementations
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From<T> for T
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,