ouroboros-network-framework-0.6.0.1: Ouroboros network framework
Safe HaskellSafe-Inferred
LanguageHaskell2010

Ouroboros.Network.InboundGovernor.ControlChannel

Description

Intended to be imported qualified.

Synopsis

Documentation

data NewConnection peerAddr handle Source #

Announcement message for a new connection.

Constructors

NewConnection !Provenance !(ConnectionId peerAddr) !DataFlow !handle

Announce a new connection. Inbound protocol governor will start responder protocols using StartOnDemand strategy and monitor remote transitions: PromotedToWarm^{Duplex}_{Remote} and DemotedToCold^{dataFlow}_{Remote}.

Instances

Instances details
Show peerAddr ⇒ Show (NewConnection peerAddr handle) Source # 
Instance details

Defined in Ouroboros.Network.InboundGovernor.ControlChannel

Methods

showsPrecIntNewConnection peerAddr handle → ShowS Source #

showNewConnection peerAddr handle → String Source #

showList ∷ [NewConnection peerAddr handle] → ShowS Source #

data ControlChannel peerAddr handle m Source #

Control channel. It allows to pass STM transactions which will resolve to NewConnection. Server's monitoring thread is the consumer of these messages; there are two producers: accept loop and connection handler for outbound connections.

Constructors

ControlChannel 

Fields

type ServerControlChannel (muxMode ∷ MuxMode) peerAddr versionData bytes m a b = ControlChannel peerAddr (Handle muxMode peerAddr versionData bytes m a b) m Source #

A Server control channel which instantiates handle.

newControlChannel ∷ ∀ peerAddr handle m. MonadLabelledSTM m ⇒ m (ControlChannel peerAddr handle m) Source #