UNPKG

@daiso-tech/core

Version:

The library offers flexible, framework-agnostic solutions for modern web applications, built on adaptable components that integrate seamlessly with popular frameworks like Next Js.

34 lines (32 loc) 1.07 kB
/** * @module CircuitBreaker */ /** * @internal */ export const circuitBreakerLua = ` -- @template TMetrics -- @param circuitBreakerStorage CircuitBreakerStorage<TMetrics> -- @param circuitBreakerStateManager CircuitBreakerStateManager<TMetrics> -- @return ICircuitBreakerAdapter local function CircuitBreaker(circuitBreakerStorage, circuitBreakerStateManager) return { -- @param key string -- @return CircuitBreakerStateTransition updateState = function(key) return circuitBreakerStorage.atomicUpdate(key, circuitBreakerStateManager.updateState) end, -- @param key string -- @return void trackFailure = function(key) return circuitBreakerStorage.atomicUpdate(key, circuitBreakerStateManager.trackFailure) end, -- @param key string -- @return void trackSuccess = function(key) return circuitBreakerStorage.atomicUpdate(key, circuitBreakerStateManager.trackSuccess) end } end `; //# sourceMappingURL=circuit-breaker-lua.js.map