Table of Contents

Class RemoteSubscriptionStage<TEvent, TCurrent>

Namespace
DotBoxD.Plugins.Runtime.Subscriptions
Assembly
DotBoxD.Plugins.dll
public sealed class RemoteSubscriptionStage<TEvent, TCurrent>

Type Parameters

TEvent
TCurrent
Inheritance
RemoteSubscriptionStage<TEvent, TCurrent>
Inherited Members

Methods

Run(Action<TCurrent, HookContext>)

public RemoteSubscriptionPipeline<TEvent> Run(Action<TCurrent, HookContext> handler)

Parameters

handler Action<TCurrent, HookContext>

Returns

RemoteSubscriptionPipeline<TEvent>

Run(Action<TCurrent>)

public RemoteSubscriptionPipeline<TEvent> Run(Action<TCurrent> handler)

Parameters

handler Action<TCurrent>

Returns

RemoteSubscriptionPipeline<TEvent>

Run(Func<TCurrent, HookContext, ValueTask>)

public RemoteSubscriptionPipeline<TEvent> Run(Func<TCurrent, HookContext, ValueTask> handler)

Parameters

handler Func<TCurrent, HookContext, ValueTask>

Returns

RemoteSubscriptionPipeline<TEvent>

Run(Func<TCurrent, ValueTask>)

public RemoteSubscriptionPipeline<TEvent> Run(Func<TCurrent, ValueTask> handler)

Parameters

handler Func<TCurrent, ValueTask>

Returns

RemoteSubscriptionPipeline<TEvent>

RunLocal(Action<TCurrent, HookContext>)

public RemoteSubscriptionPipeline<TEvent> RunLocal(Action<TCurrent, HookContext> handler)

Parameters

handler Action<TCurrent, HookContext>

Returns

RemoteSubscriptionPipeline<TEvent>

RunLocal(Action<TCurrent>)

public RemoteSubscriptionPipeline<TEvent> RunLocal(Action<TCurrent> handler)

Parameters

handler Action<TCurrent>

Returns

RemoteSubscriptionPipeline<TEvent>

RunLocal(Func<TCurrent, HookContext, ValueTask>)

public RemoteSubscriptionPipeline<TEvent> RunLocal(Func<TCurrent, HookContext, ValueTask> handler)

Parameters

handler Func<TCurrent, HookContext, ValueTask>

Returns

RemoteSubscriptionPipeline<TEvent>

RunLocal(Func<TCurrent, ValueTask>)

public RemoteSubscriptionPipeline<TEvent> RunLocal(Func<TCurrent, ValueTask> handler)

Parameters

handler Func<TCurrent, ValueTask>

Returns

RemoteSubscriptionPipeline<TEvent>

Select<TNext>(Func<TCurrent, HookContext, TNext>)

public RemoteSubscriptionStage<TEvent, TNext> Select<TNext>(Func<TCurrent, HookContext, TNext> projection)

Parameters

projection Func<TCurrent, HookContext, TNext>

Returns

RemoteSubscriptionStage<TEvent, TNext>

Type Parameters

TNext

Select<TNext>(Func<TCurrent, TNext>)

public RemoteSubscriptionStage<TEvent, TNext> Select<TNext>(Func<TCurrent, TNext> projection)

Parameters

projection Func<TCurrent, TNext>

Returns

RemoteSubscriptionStage<TEvent, TNext>

Type Parameters

TNext

UseGeneratedChain(PluginPackage)

public RemoteSubscriptionPipeline<TEvent> UseGeneratedChain(PluginPackage package)

Parameters

package PluginPackage

Returns

RemoteSubscriptionPipeline<TEvent>

UseGeneratedLocalChain(PluginPackage, Action<TCurrent, HookContext>)

public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Action<TCurrent, HookContext> handler)

Parameters

package PluginPackage
handler Action<TCurrent, HookContext>

Returns

RemoteSubscriptionPipeline<TEvent>

UseGeneratedLocalChain(PluginPackage, Action<TCurrent, HookContext>, Func<KernelRpcValue, TCurrent>)

public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Action<TCurrent, HookContext> handler, Func<KernelRpcValue, TCurrent> decoder)

Parameters

package PluginPackage
handler Action<TCurrent, HookContext>
decoder Func<KernelRpcValue, TCurrent>

Returns

RemoteSubscriptionPipeline<TEvent>

UseGeneratedLocalChain(PluginPackage, Action<TCurrent, HookContext>, Func<ReadOnlyMemory<byte>, TCurrent>)

public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Action<TCurrent, HookContext> handler, Func<ReadOnlyMemory<byte>, TCurrent> decoder)

Parameters

package PluginPackage
handler Action<TCurrent, HookContext>
decoder Func<ReadOnlyMemory<byte>, TCurrent>

Returns

RemoteSubscriptionPipeline<TEvent>

UseGeneratedLocalChain(PluginPackage, Action<TCurrent>)

public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Action<TCurrent> handler)

Parameters

package PluginPackage
handler Action<TCurrent>

Returns

RemoteSubscriptionPipeline<TEvent>

UseGeneratedLocalChain(PluginPackage, Action<TCurrent>, Func<KernelRpcValue, TCurrent>)

public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Action<TCurrent> handler, Func<KernelRpcValue, TCurrent> decoder)

Parameters

package PluginPackage
handler Action<TCurrent>
decoder Func<KernelRpcValue, TCurrent>

Returns

RemoteSubscriptionPipeline<TEvent>

UseGeneratedLocalChain(PluginPackage, Action<TCurrent>, Func<ReadOnlyMemory<byte>, TCurrent>)

public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Action<TCurrent> handler, Func<ReadOnlyMemory<byte>, TCurrent> decoder)

Parameters

package PluginPackage
handler Action<TCurrent>
decoder Func<ReadOnlyMemory<byte>, TCurrent>

Returns

RemoteSubscriptionPipeline<TEvent>

UseGeneratedLocalChain(PluginPackage, Func<TCurrent, HookContext, ValueTask>)

Installs a lowered RunLocal subscription chain whose projected type is TCurrent (produced by the preceding Select). The filter+projection installs server-side; the native delegate receives the projected value pushed back per matching event.

public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Func<TCurrent, HookContext, ValueTask> handler)

Parameters

package PluginPackage
handler Func<TCurrent, HookContext, ValueTask>

Returns

RemoteSubscriptionPipeline<TEvent>

UseGeneratedLocalChain(PluginPackage, Func<TCurrent, HookContext, ValueTask>, Func<KernelRpcValue, TCurrent>)

public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Func<TCurrent, HookContext, ValueTask> handler, Func<KernelRpcValue, TCurrent> decoder)

Parameters

package PluginPackage
handler Func<TCurrent, HookContext, ValueTask>
decoder Func<KernelRpcValue, TCurrent>

Returns

RemoteSubscriptionPipeline<TEvent>

UseGeneratedLocalChain(PluginPackage, Func<TCurrent, HookContext, ValueTask>, Func<ReadOnlyMemory<byte>, TCurrent>)

public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Func<TCurrent, HookContext, ValueTask> handler, Func<ReadOnlyMemory<byte>, TCurrent> decoder)

Parameters

package PluginPackage
handler Func<TCurrent, HookContext, ValueTask>
decoder Func<ReadOnlyMemory<byte>, TCurrent>

Returns

RemoteSubscriptionPipeline<TEvent>

UseGeneratedLocalChain(PluginPackage, Func<TCurrent, ValueTask>)

public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Func<TCurrent, ValueTask> handler)

Parameters

package PluginPackage
handler Func<TCurrent, ValueTask>

Returns

RemoteSubscriptionPipeline<TEvent>

UseGeneratedLocalChain(PluginPackage, Func<TCurrent, ValueTask>, Func<KernelRpcValue, TCurrent>)

public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Func<TCurrent, ValueTask> handler, Func<KernelRpcValue, TCurrent> decoder)

Parameters

package PluginPackage
handler Func<TCurrent, ValueTask>
decoder Func<KernelRpcValue, TCurrent>

Returns

RemoteSubscriptionPipeline<TEvent>

UseGeneratedLocalChain(PluginPackage, Func<TCurrent, ValueTask>, Func<ReadOnlyMemory<byte>, TCurrent>)

public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Func<TCurrent, ValueTask> handler, Func<ReadOnlyMemory<byte>, TCurrent> decoder)

Parameters

package PluginPackage
handler Func<TCurrent, ValueTask>
decoder Func<ReadOnlyMemory<byte>, TCurrent>

Returns

RemoteSubscriptionPipeline<TEvent>

Where(Func<TCurrent, HookContext, bool>)

public RemoteSubscriptionStage<TEvent, TCurrent> Where(Func<TCurrent, HookContext, bool> filter)

Parameters

filter Func<TCurrent, HookContext, bool>

Returns

RemoteSubscriptionStage<TEvent, TCurrent>

Where(Func<TCurrent, bool>)

public RemoteSubscriptionStage<TEvent, TCurrent> Where(Func<TCurrent, bool> filter)

Parameters

filter Func<TCurrent, bool>

Returns

RemoteSubscriptionStage<TEvent, TCurrent>