úÎi¿dñ6      !"#$%&'()*+, - . / 0 1 2 3 4 5 None3M KType alias for the common container of a result used in asynchronous calls.TType alias for a service that looks up multiple values and returns multiple results.)Type alias for the response portion of a .(Type alias for the request portion of a .:Type alias for the most basic form of a service supported. Convert a  into a ) that looks up a single key, returning a 6+ which determines if the value was present. Convert a  into a Obtain a result from a  in the 7 of your choice.FMakes a multi-get call and handles the error bundling it up inside an 8.    None3M 7Options for determining behaviour of failover services. NThe maximum numer of times the service will failover and make another attempt. TEach time the service performs a failover, transform the request with this function. lSimple defaults that results in retrying 3 times in a dumb way immediately without transforming the request. KCreates a service that can transform requests with each subsequent failure. 9  Instance of  ) to configure the failover functionality.'The service to perform failover around.   9 None3M Caching of a ˆ instance, that defers to external functions for the actual caching. | Note: Values within m will be lost for calls that hit the cache. Caching of a Ý instance, that defers to external functions for the actual caching. | Partial responses will result in partial fallback calls that get just the missing keys. | Values within m will be lost for calls that hit the cache.MCache lookup function, used before potentially invoking the fallback service.UCache write function, used after invoking the fallback service to populate the cache.The service to cache.MCache lookup function, used before potentially invoking the fallback service.UCache write function, used after invoking the fallback service to populate the cache.The service to cache.None+3M*Exception thrown when the circuit is open.)Status indicating if the circuit is open.?Options for determining behaviour of circuit breaking services.]How many times the underlying service must fail in the given window before the circuit opens.UThe window of time in which the underlying service must fail for the circuit to open.UDescription that is attached to the failure so as to identify the particular circuit.JDefaulted options for the circuit breaker with 3 failures over 60 seconds.@Circuit breaking services can be constructed with this function. :;<5Options for specifying the circuit breaker behaviour.,Service to protect with the circuit breaker.=  ;:<=None3MDogpile protection of a service, to prevent multiple calls for the same value being submitted. | Loses the values held within m.The service to protect.None+3M.Exception thrown when the timeout is exceeded.=Options for determining behaviour of services with a timeout.Description added to the % thrown when the timeout is exceeded.Timeout in milliseconds.Default instance of  with a timeout of 30 seconds. 9Function for producing services protected with a timeout. > !Options to configure the timeout."Service to protect with a timeout.?  > ?None+3M!7Options for determining behaviour of retrying services."nPredicate for determining if we can retry a call, can be used to prevent retries on non-idempotent operations.#/Amount of time to wait after the first failure.$GThe upper bound on how many attempts to make when invoking the service.%How much to multiply #5 by for each number of times the service has retried.&9Defaulted options for retrying 3 times with no wait time.'hRetries a call to a service multiple times, potentially backing off wait times between subsequent calls.!@"#$%&' Instance of !& to configure the retry functionality."The service to perform retries of.!"#$%&' !"#$%&'"#$%!@"#$%&'None3MAJIndividual request to satisfy, for either a single key or a multi request.B6Cumulative request batch of all the outstanding calls.(%Options for configuring the batching.)+Window in milliseconds over which to batch.*Default instance of ( with a batching window of 10ms.+-Function for constructing a batching service.ACDBE(F)*GHIJKLM+)Options to configure the batched service.'Service around which to batch requests.()*+()+*) ADCBE(F)*GHIJKLM+ None3M,2Record the timings for service invocations with a N held in the passed in O..-Increments a counter with a P held in the passed in O% for each time the service is called..Increments a counter with a P held in the passed in O0 for each time the service successfully returns./Increments a counter with a P held in the passed in O! for each time the service fails.0Sets a Q held in the passed in O' for each request the service receives.1Sets a Q held in the passed in O0 for each successful result the service returns.R,O where the N will reside.The name to associate the N with.!Base service to record stats for.-O where the P will reside.The name to associate the P with.!Base service to record stats for..O where the P will reside.The name to associate the P with.!Base service to record stats for./O where the P will reside.The name to associate the P with.!Base service to record stats for.0O where the Q will reside.The name to associate the Q with.!Base service to record stats for.1O where the Q will reside.The name to associate the Q with.!Base service to record stats for.,-./01,-./01R,-./01 None+3M29Options for determining behaviour of preloading services.SKeys to preload.T!Amount of time between refreshes.3QDefaulted options for preloading a HashSet of keys with a 30 second refresh time.4-Preloads the results of calls for given keys.UVWXY2ZST3[\]4 Instance of 2+ to configure the preloading functionality.%The service to perform preloading of.234234UYXWV2ZST3[\]4 None+3M5Provides a switchable service.55The service to initialise the switching service with.555 None3M5  !"#$%&'()*+,-./01234^  !"#$%&&'()*+,-./0123456 7 8 9 : ; < = > ? @ABCADEAFGHIJ'K,LMNOM3PQRSTUVWXYWXZWX[WX\ ] ^ _ ` a b c d = e f gh glue-0.2.0 Glue.Types Glue.Failover Glue.CachingGlue.CircuitBreakerGlue.DogpileProtection Glue.Timeout Glue.Retry Glue.Batcher Glue.Stats Glue.PreloadGlue.SwitchingGlue ResultVarMultiGetServiceMultiGetResponseMultiGetRequest BasicServicemultiGetToBasicbasicToMultiGet getResultmakeCallFailoverOptions maxFailoverstransformFailoverRequestdefaultFailoverOptionsfailovercacheWithBasiccacheWithMultiCircuitBreakerExceptionCircuitBreakerStatusCircuitBreakerOptionsmaxBreakerFailuresresetTimeoutSecsbreakerDescriptiondefaultCircuitBreakerOptionscircuitBreakerdogpileProtectTimeoutExceptionTimeoutOptionstimeoutDescriptiontimeoutLimitMsdefaultTimeoutOptions addTimeout RetryOptions retryAllowedretryInitialWaitTimeMsmaximumRetriesretryWaitTimeMultiplierdefaultRetryOptionsretryingServiceBatchingOptions batchWindowMsdefaultBatchingOptionsbatchingServicerecordDistributionrecordAttemptsrecordSuccessesrecordFailuresrecordLastRequestrecordLastResultPreloadedOptionsdefaultPreloadedOptionspreloadingServiceswitchingServicebase Data.MaybeMaybeGHC.BaseMonad Data.EitherEitherCircuitBreakerOpenCircuitBreakerClosed"$fExceptionCircuitBreakerException$fExceptionTimeoutExceptionPendingRequest RequestBatch MultiRequest SingleRequestapplyToPending emptyBatch processCalls startBatch addPending singleService multiServiceekg-core-0.1.1.0System.Metrics DistributionStoreCounterLabel currentTime preloadedKeyspreloadingRefreshTimeMsPreloadedStatePreloadedFinishedPreloadedWithResultPreloadedStartedPreloadedNotStartedupdatePreloadStateapplyResultToState waitForResult