Skip to main content

Farfetch.LoadShedding assembly

Farfetch.LoadShedding namespace

public typedescription
interface IEvent<TArg>Represents an Event to be subscribed.

Farfetch.LoadShedding.Builders namespace

public typedescription
class AdaptativeLimiterBuilderA Builder to configure an Adaptative Concurrency Limiter.

Farfetch.LoadShedding.Calculators namespace

public typedescription
interface ILimitCalculatorRepresents an interface that is responsible for the abstraction of different types of limit calculators.
interface IQueueSizeCalculatorRepresents an interface that is responsible for the abstraction of different types of queue size calculators.

Farfetch.LoadShedding.Configurations namespace

public typedescription
class ConcurrencyOptionsSettings to configure the Adaptative Limiter.
interface IConcurrencyContextRepresents the concurrency context contract.

Farfetch.LoadShedding.Events namespace

public typedescription
interface IEventSubscriptionRepresents a reference to the event subscription.
interface ILoadSheddingEventsLoad Shedding events.

Farfetch.LoadShedding.Events.Args namespace

public typedescription
class ItemDequeuedEventArgsEvent args for the task dequeued event.
class ItemEnqueuedEventArgsEvent args for the task enqueued event.
class ItemEventArgsEvent args for task rejected event.
class ItemProcessedEventArgsEvent args for task processed event.
class ItemProcessingEventArgsEvent args for task procssing event.
class ItemRejectedEventArgsEvent args for task rejected event.
class LimitChangedEventArgsEvents args for limits changed event.

Farfetch.LoadShedding.Exceptions namespace

public typedescription
class InvalidConfigurationExceptionRepresents an exception where some configuration is invalid.
class LimitReachedExceptionRepresents an exception where a maximum limit defined was reached.
class QueueLimitReachedExceptionRepresents an exception where the queue limit defined was reached.
class QueueTimeoutExceptionRepresents an exception where the queue timeout defined was reached.

Farfetch.LoadShedding.Limiters namespace

public typedescription
interface IAdaptativeConcurrencyLimiterDefines the contract that the limiters should follow.

Farfetch.LoadShedding.Tasks namespace

public typedescription
enum PriorityTask priorities.
static class PriorityExtensionsExtension methods of Priority