Safe Haskell | None |
---|---|
Language | Haskell2010 |
Ouroboros.Network.Diffusion
Description
This module is expected to be imported qualified.
Synopsis
- run :: (Monoid extraPeers, Eq extraFlags, Eq extraCounters, Exception exception, Typeable ntnVersion, Ord ntnVersion, Show ntnVersion, Show ntnVersionData, Ord ntcVersion) => Arguments extraState extraDebugState extraFlags extraPeers extraAPI extraChurnArgs extraCounters exception Resolver IOException IO Socket RemoteAddress ntnVersion ntnVersionData LocalAddress ntcVersion ntcVersionData -> Tracers RemoteAddress ntnVersion ntnVersionData LocalAddress ntcVersion ntcVersionData IOException extraState extraDebugState extraFlags extraPeers extraCounters IO -> Configuration extraFlags IO Socket RemoteAddress LocalSocket LocalAddress -> Applications RemoteAddress ntnVersion ntnVersionData LocalAddress ntcVersion ntcVersionData IO a -> IO Void
- runM :: forall m ntnFd ntnAddr ntnVersion ntnVersionData ntcFd ntcAddr ntcVersion ntcVersionData resolver resolverError exception a extraState extraDebugState extraPeers extraAPI extraFlags extraChurnArgs extraCounters. (Alternative (STM m), MonadAsync m, MonadDelay m, MonadEvaluate m, MonadFix m, MonadFork m, MonadLabelledSTM m, MonadTraceSTM m, MonadMask m, MonadThrow (STM m), MonadTime m, MonadTimer m, MonadMVar m, Typeable ntnAddr, Ord ntnAddr, Show ntnAddr, Hashable ntnAddr, Typeable ntnVersion, Ord ntnVersion, Show ntnVersion, Show ntnVersionData, Typeable ntcAddr, Ord ntcAddr, Show ntcAddr, Ord ntcVersion, Exception resolverError, Monoid extraPeers, Eq extraFlags, Eq extraCounters, Exception exception) => Interfaces ntnFd ntnAddr ntcFd ntcAddr resolver resolverError m -> Tracers ntnAddr ntnVersion ntnVersionData ntcAddr ntcVersion ntcVersionData resolverError extraState extraDebugState extraFlags extraPeers extraCounters m -> Arguments extraState extraDebugState extraFlags extraPeers extraAPI extraChurnArgs extraCounters exception resolver resolverError m ntnFd ntnAddr ntnVersion ntnVersionData ntcAddr ntcVersion ntcVersionData -> Configuration extraFlags m ntnFd ntnAddr ntcFd ntcAddr -> Applications ntnAddr ntnVersion ntnVersionData ntcAddr ntcVersion ntcVersionData m a -> m Void
- mkInterfaces :: IOManager -> Tracer IO (DiffusionTracer ntnAddr ntcAddr) -> IO (Interfaces Socket RemoteAddress LocalSocket LocalAddress Resolver IOException IO)
- socketAddressType :: SockAddr -> Maybe AddressType
- module Ouroboros.Network.Diffusion.Types
Documentation
run :: (Monoid extraPeers, Eq extraFlags, Eq extraCounters, Exception exception, Typeable ntnVersion, Ord ntnVersion, Show ntnVersion, Show ntnVersionData, Ord ntcVersion) => Arguments extraState extraDebugState extraFlags extraPeers extraAPI extraChurnArgs extraCounters exception Resolver IOException IO Socket RemoteAddress ntnVersion ntnVersionData LocalAddress ntcVersion ntcVersionData -> Tracers RemoteAddress ntnVersion ntnVersionData LocalAddress ntcVersion ntcVersionData IOException extraState extraDebugState extraFlags extraPeers extraCounters IO -> Configuration extraFlags IO Socket RemoteAddress LocalSocket LocalAddress -> Applications RemoteAddress ntnVersion ntnVersionData LocalAddress ntcVersion ntcVersionData IO a -> IO Void Source #
Main entry point for data diffusion service. It allows to:
- connect to upstream peers;
- accept connection from downstream peers, if run in
InitiatorAndResponderDiffusionMode
. - runs a local service which allows to use node-to-client protocol to obtain information from the running system. This is used by 'cardano-cli' or a wallet and a like local services.
Arguments
:: forall m ntnFd ntnAddr ntnVersion ntnVersionData ntcFd ntcAddr ntcVersion ntcVersionData resolver resolverError exception a extraState extraDebugState extraPeers extraAPI extraFlags extraChurnArgs extraCounters. (Alternative (STM m), MonadAsync m, MonadDelay m, MonadEvaluate m, MonadFix m, MonadFork m, MonadLabelledSTM m, MonadTraceSTM m, MonadMask m, MonadThrow (STM m), MonadTime m, MonadTimer m, MonadMVar m, Typeable ntnAddr, Ord ntnAddr, Show ntnAddr, Hashable ntnAddr, Typeable ntnVersion, Ord ntnVersion, Show ntnVersion, Show ntnVersionData, Typeable ntcAddr, Ord ntcAddr, Show ntcAddr, Ord ntcVersion, Exception resolverError, Monoid extraPeers, Eq extraFlags, Eq extraCounters, Exception exception) | |
=> Interfaces ntnFd ntnAddr ntcFd ntcAddr resolver resolverError m | interfaces |
-> Tracers ntnAddr ntnVersion ntnVersionData ntcAddr ntcVersion ntcVersionData resolverError extraState extraDebugState extraFlags extraPeers extraCounters m | tracers |
-> Arguments extraState extraDebugState extraFlags extraPeers extraAPI extraChurnArgs extraCounters exception resolver resolverError m ntnFd ntnAddr ntnVersion ntnVersionData ntcAddr ntcVersion ntcVersionData | arguments |
-> Configuration extraFlags m ntnFd ntnAddr ntcFd ntcAddr | configuration |
-> Applications ntnAddr ntnVersion ntnVersionData ntcAddr ntcVersion ntcVersionData m a | protocol handlers |
-> m Void |
mkInterfaces :: IOManager -> Tracer IO (DiffusionTracer ntnAddr ntcAddr) -> IO (Interfaces Socket RemoteAddress LocalSocket LocalAddress Resolver IOException IO) Source #