Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- data DnsSubscriptionTarget = DnsSubscriptionTarget {
- dstDomain :: !Domain
- dstPort :: !PortNumber
- dstValency :: !Int
- data Resolver (m :: Type -> Type) = Resolver {}
- type DnsSubscriptionParams a = SubscriptionParams a DnsSubscriptionTarget
- dnsSubscriptionWorker' :: Snocket IO Socket SockAddr -> Tracer IO (WithDomainName (SubscriptionTrace SockAddr)) -> Tracer IO (WithDomainName DnsTrace) -> Tracer IO (WithAddr SockAddr ErrorPolicyTrace) -> NetworkMutableState SockAddr -> IO b -> (b -> (Resolver IO -> IO (SubscriptionTarget IO SockAddr)) -> IO (SubscriptionTarget IO SockAddr)) -> DnsSubscriptionParams a -> Main IO (PeerStates IO SockAddr) x -> (Socket -> IO a) -> IO x
- dnsSubscriptionWorker :: Snocket IO Socket SockAddr -> Tracer IO (WithDomainName (SubscriptionTrace SockAddr)) -> Tracer IO (WithDomainName DnsTrace) -> Tracer IO (WithAddr SockAddr ErrorPolicyTrace) -> NetworkMutableState SockAddr -> DnsSubscriptionParams a -> (Socket -> IO a) -> IO Void
- dnsResolve :: forall a m s. (MonadAsync m, MonadCatch m, MonadTimer m) => Tracer m DnsTrace -> m a -> (a -> (Resolver m -> m (SubscriptionTarget m SockAddr)) -> m (SubscriptionTarget m SockAddr)) -> StrictTVar m s -> BeforeConnect m s SockAddr -> DnsSubscriptionTarget -> m (SubscriptionTarget m SockAddr)
- resolutionDelay :: DiffTime
- data SubscriptionTrace addr
- = SubscriptionTraceConnectStart addr
- | SubscriptionTraceConnectEnd addr ConnectResult
- | Exception e => SubscriptionTraceSocketAllocationException addr e
- | Exception e => SubscriptionTraceConnectException addr e
- | Exception e => SubscriptionTraceApplicationException addr e
- | SubscriptionTraceTryConnectToPeer addr
- | SubscriptionTraceSkippingPeer addr
- | SubscriptionTraceSubscriptionRunning
- | SubscriptionTraceSubscriptionWaiting Int
- | SubscriptionTraceSubscriptionFailed
- | SubscriptionTraceSubscriptionWaitingNewConnection DiffTime
- | SubscriptionTraceStart Int
- | SubscriptionTraceRestart DiffTime Int Int
- | SubscriptionTraceConnectionExist addr
- | SubscriptionTraceUnsupportedRemoteAddr addr
- | SubscriptionTraceMissingLocalAddress
- | SubscriptionTraceAllocateSocket addr
- | SubscriptionTraceCloseSocket addr
- data DnsTrace
- data ErrorPolicyTrace
- = ErrorPolicySuspendPeer (Maybe (ConnectionOrApplicationExceptionTrace SomeException)) DiffTime DiffTime
- | ErrorPolicySuspendConsumer (Maybe (ConnectionOrApplicationExceptionTrace SomeException)) DiffTime
- | ErrorPolicyLocalNodeError (ConnectionOrApplicationExceptionTrace SomeException)
- | ErrorPolicyResumePeer
- | ErrorPolicyKeepSuspended
- | ErrorPolicyResumeConsumer
- | ErrorPolicyResumeProducer
- | ErrorPolicyUnhandledApplicationException SomeException
- | ErrorPolicyUnhandledConnectionException SomeException
- | ErrorPolicyAcceptException IOException
- data WithDomainName a = WithDomainName {}
- data WithAddr addr a = WithAddr {}
Documentation
data DnsSubscriptionTarget Source #
DnsSubscriptionTarget | |
|
Instances
Show DnsSubscriptionTarget Source # | |
Defined in Ouroboros.Network.Subscription.Dns showsPrec :: Int -> DnsSubscriptionTarget -> ShowS # show :: DnsSubscriptionTarget -> String # showList :: [DnsSubscriptionTarget] -> ShowS # | |
Eq DnsSubscriptionTarget Source # | |
Defined in Ouroboros.Network.Subscription.Dns (==) :: DnsSubscriptionTarget -> DnsSubscriptionTarget -> Bool # (/=) :: DnsSubscriptionTarget -> DnsSubscriptionTarget -> Bool # |
dnsSubscriptionWorker' :: Snocket IO Socket SockAddr -> Tracer IO (WithDomainName (SubscriptionTrace SockAddr)) -> Tracer IO (WithDomainName DnsTrace) -> Tracer IO (WithAddr SockAddr ErrorPolicyTrace) -> NetworkMutableState SockAddr -> IO b -> (b -> (Resolver IO -> IO (SubscriptionTarget IO SockAddr)) -> IO (SubscriptionTarget IO SockAddr)) -> DnsSubscriptionParams a -> Main IO (PeerStates IO SockAddr) x -> (Socket -> IO a) -> IO x Source #
dnsSubscriptionWorker :: Snocket IO Socket SockAddr -> Tracer IO (WithDomainName (SubscriptionTrace SockAddr)) -> Tracer IO (WithDomainName DnsTrace) -> Tracer IO (WithAddr SockAddr ErrorPolicyTrace) -> NetworkMutableState SockAddr -> DnsSubscriptionParams a -> (Socket -> IO a) -> IO Void Source #
dnsResolve :: forall a m s. (MonadAsync m, MonadCatch m, MonadTimer m) => Tracer m DnsTrace -> m a -> (a -> (Resolver m -> m (SubscriptionTarget m SockAddr)) -> m (SubscriptionTarget m SockAddr)) -> StrictTVar m s -> BeforeConnect m s SockAddr -> DnsSubscriptionTarget -> m (SubscriptionTarget m SockAddr) Source #
resolutionDelay :: DiffTime Source #
Time to wait for an AAAA response after receiving an A response.
Traces
data SubscriptionTrace addr Source #
Instances
Show addr => Show (SubscriptionTrace addr) Source # | |
Defined in Ouroboros.Network.Subscription.Worker showsPrec :: Int -> SubscriptionTrace addr -> ShowS # show :: SubscriptionTrace addr -> String # showList :: [SubscriptionTrace addr] -> ShowS # |
data ErrorPolicyTrace Source #
Trace data for error policies
ErrorPolicySuspendPeer (Maybe (ConnectionOrApplicationExceptionTrace SomeException)) DiffTime DiffTime | suspending peer with a given exception until |
ErrorPolicySuspendConsumer (Maybe (ConnectionOrApplicationExceptionTrace SomeException)) DiffTime | suspending consumer until |
ErrorPolicyLocalNodeError (ConnectionOrApplicationExceptionTrace SomeException) | caught a local exception |
ErrorPolicyResumePeer | resume a peer (both consumer and producer) |
ErrorPolicyKeepSuspended | consumer was suspended until producer will resume |
ErrorPolicyResumeConsumer | resume consumer |
ErrorPolicyResumeProducer | resume producer |
ErrorPolicyUnhandledApplicationException SomeException | an application throwed an exception, which was not handled by any
|
ErrorPolicyUnhandledConnectionException SomeException |
|
ErrorPolicyAcceptException IOException |
|
Instances
Show ErrorPolicyTrace Source # | |
Defined in Ouroboros.Network.ErrorPolicy showsPrec :: Int -> ErrorPolicyTrace -> ShowS # show :: ErrorPolicyTrace -> String # showList :: [ErrorPolicyTrace] -> ShowS # |
data WithDomainName a Source #
Instances
Show a => Show (WithDomainName a) Source # | |
Defined in Ouroboros.Network.Subscription.Dns showsPrec :: Int -> WithDomainName a -> ShowS # show :: WithDomainName a -> String # showList :: [WithDomainName a] -> ShowS # |