Skip to content

Class SubscriptionDeliveryFault

Namespace: DotBoxD.Plugins.Runtime
Assembly: DotBoxD.Plugins.dll

A fault caught while delivering a published event to a subscription. Delivery runs on a background task and these faults are otherwise swallowed (so the game loop is never blocked or crashed by plugin code); the host observes them via PluginServer.Create(onSubscriptionFault: …) to surface the failure in its log, so a misbehaving Subscriptions.On<T>().Where(…).RunLocal(…) chain is diagnosable instead of silently doing nothing.

public sealed record SubscriptionDeliveryFault : IEquatable<SubscriptionDeliveryFault>

objectSubscriptionDeliveryFault

IEquatable<SubscriptionDeliveryFault>

object.Equals(object?), object.Equals(object?, object?), object.GetHashCode(), object.GetType(), object.ReferenceEquals(object?, object?), object.ToString()

SubscriptionDeliveryFault(Type, SubscriptionDeliveryStage, Exception)

Section titled “ SubscriptionDeliveryFault(Type, SubscriptionDeliveryStage, Exception)”

A fault caught while delivering a published event to a subscription. Delivery runs on a background task and these faults are otherwise swallowed (so the game loop is never blocked or crashed by plugin code); the host observes them via PluginServer.Create(onSubscriptionFault: …) to surface the failure in its log, so a misbehaving Subscriptions.On<T>().Where(…).RunLocal(…) chain is diagnosable instead of silently doing nothing.

public SubscriptionDeliveryFault(Type EventType, SubscriptionDeliveryStage Stage, Exception Exception)

EventType Type

The event type whose delivery faulted.

Stage SubscriptionDeliveryStage

The delivery stage that threw.

Exception Exception

The exception that was caught.

public Type EventType { get; init; }

Type

public Exception Exception { get; init; }

Exception

public SubscriptionDeliveryStage Stage { get; init; }

SubscriptionDeliveryStage