[][src]Struct rpki_rtr::server::Server

pub struct Server<Listener, Source> { /* fields omitted */ }

An RTR server.

The server takes a stream socket listener – a stream of new sockets – and a VRP source and serves RTR data. In order to also serve notifications whenever new data is available, the server uses a notification dispatch system via the Dispatch system.

Implementations

impl<Listener, Source> Server<Listener, Source>[src]

pub fn new(listener: Listener, notify: NotifySender, source: Source) -> Self[src]

Creates a new RTR server from its components.

pub async fn run<Sock>(__arg0: Self) -> Result<(), Error> where
    Listener: Stream<Item = Result<Sock, Error>> + Unpin,
    Sock: AsyncRead + AsyncWrite + Unpin + Sync + Send + 'static,
    Source: VrpSource
[src]

Runs the server.

The asynchronous function will return successfully when the listener socket (which is a stream over new connectons) finishes. It will return with an error if the listener socket errors out.

Auto Trait Implementations

impl<Listener, Source> !RefUnwindSafe for Server<Listener, Source>

impl<Listener, Source> Send for Server<Listener, Source> where
    Listener: Send,
    Source: Send

impl<Listener, Source> Sync for Server<Listener, Source> where
    Listener: Sync,
    Source: Sync

impl<Listener, Source> Unpin for Server<Listener, Source> where
    Listener: Unpin,
    Source: Unpin

impl<Listener, Source> !UnwindSafe for Server<Listener, Source>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.