Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Ouroboros.Network.Subscription.Dns
Contents
Synopsis
- data DnsSubscriptionTarget = DnsSubscriptionTarget {
- dstDomain ∷ !Domain
- dstPort ∷ !PortNumber
- dstValency ∷ !Int
- data Resolver m = 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 ∷ ∀ 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
- | ∀ e.Exception e ⇒ SubscriptionTraceSocketAllocationException addr e
- | ∀ e.Exception e ⇒ SubscriptionTraceConnectException addr e
- | ∀ 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 #
Constructors
DnsSubscriptionTarget | |
Fields
|
Instances
Show DnsSubscriptionTarget Source # | |
Defined in Ouroboros.Network.Subscription.Dns | |
Eq DnsSubscriptionTarget Source # | |
Defined in Ouroboros.Network.Subscription.Dns Methods (==) ∷ DnsSubscriptionTarget → DnsSubscriptionTarget → Bool Source # (/=) ∷ DnsSubscriptionTarget → DnsSubscriptionTarget → Bool Source # |
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 ∷ ∀ 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 #
Constructors
Instances
Show addr ⇒ Show (SubscriptionTrace addr) Source # | |
Defined in Ouroboros.Network.Subscription.Worker |
data ErrorPolicyTrace Source #
Trace data for error policies
Constructors
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 |
data WithDomainName a Source #
Constructors
WithDomainName | |
Instances
Show a ⇒ Show (WithDomainName a) Source # | |
Defined in Ouroboros.Network.Subscription.Dns |