pub(super) fn run_packet_pipeline_inner<WIn, WOut, C, D, T, TEvt, AppOut, AppIn>(
node_type: NodeType,
packet_key: OffchainKeypair,
wire_msg: (WOut, WIn),
codec: (C, D),
ticket_proc: T,
ticket_events: TEvt,
cfg: PacketPipelineConfig,
api: (AppOut, AppIn),
counters: PeerProtocolCounterRegistry,
) -> AbortableList<PacketPipelineProcesses>where
WOut: Sink<(PeerId, Bytes)> + Clone + Unpin + Send + 'static,
WOut::Error: Error,
WIn: Stream<Item = (PeerId, Bytes)> + Send + 'static,
C: PacketEncoder + Sync + Send + 'static,
D: PacketDecoder + Sync + Send + 'static,
T: UnacknowledgedTicketProcessor + Sync + Send + 'static,
TEvt: Sink<TicketEvent> + Clone + Unpin + Send + 'static,
TEvt::Error: Error,
AppOut: Sink<(HoprPseudonym, ApplicationDataIn)> + Send + 'static,
AppOut::Error: Error,
AppIn: Stream<Item = (ResolvedTransportRouting<HoprSurb>, ApplicationDataOut)> + Send + 'static,Expand description
Shared implementation of the packet pipeline used by PacketPipelineBuilder’s
terminal build_for_* methods.