ouroboros-network:framework
Safe HaskellNone
LanguageHaskell2010

Ouroboros.Network.Server.Simple

Description

A simple server. The server doesn't control resource usage (e.g. limiting of inbound connections) and thus should only be used in a safe environment.

The module should be imported qualified.

Documentation

with Source #

Arguments

:: forall fd addr vNumber vData m a b. (Alternative (STM m), MonadAsync m, MonadDelay m, MonadFork m, MonadLabelledSTM m, MonadMask m, MonadTimer m, MonadThrow (STM m), Ord vNumber, Typeable vNumber, Show vNumber) 
=> Snocket m fd addr

low level snocket API

-> Tracer m (ServerTracer addr)

server tracer: must not be nullTracer in production

-> TracersWithBearer (ConnectionId addr) m

mux tracers

-> MakeBearer m fd 
-> (fd -> addr -> m ())

socket configuration for both listening and connection sockets

-> addr

server address to bind to

-> HandshakeArguments (ConnectionId addr) vNumber vData m

handshake arguments

-> Versions vNumber vData (SomeResponderApplication addr ByteString m b)

applications to run on each connection

-> (addr -> Async m Void -> m a)

continuation for an internally used withAsync function that runs server accept loop

-> m a 

data ServerTracer addr Source #

Instances

Instances details
Show addr => Show (ServerTracer addr) Source # 
Instance details

Defined in Ouroboros.Network.Server.Simple

Methods

showsPrec :: Int -> ServerTracer addr -> ShowS #

show :: ServerTracer addr -> String #

showList :: [ServerTracer addr] -> ShowS #