Skip to content

Class RemoteSubscriptionPipeline<TEvent>

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

[PipelineSurface(PipelineTransport.Remote)]
public sealed class RemoteSubscriptionPipeline<TEvent>

TEvent

objectRemoteSubscriptionPipeline<TEvent>

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

Run(Func<TEvent, HookContext, ValueTask>, IRKernel?)

Section titled “ Run(Func<TEvent, HookContext, ValueTask>, IRKernel?)”
public RemoteSubscriptionPipeline<TEvent> Run(Func<TEvent, HookContext, ValueTask> handler, IRKernel? irHandler = null)

handler Func<TEvent, HookContext, ValueTask>

irHandler IRKernel?

RemoteSubscriptionPipeline<TEvent>

Run(Action<TEvent, HookContext>, IRKernel?)

Section titled “ Run(Action<TEvent, HookContext>, IRKernel?)”
public RemoteSubscriptionPipeline<TEvent> Run(Action<TEvent, HookContext> handler, IRKernel? irHandler = null)

handler Action<TEvent, HookContext>

irHandler IRKernel?

RemoteSubscriptionPipeline<TEvent>

public RemoteSubscriptionPipeline<TEvent> Run(Func<TEvent, ValueTask> handler, IRKernel? irHandler = null)

handler Func<TEvent, ValueTask>

irHandler IRKernel?

RemoteSubscriptionPipeline<TEvent>

public RemoteSubscriptionPipeline<TEvent> Run(Action<TEvent> handler, IRKernel? irHandler = null)

handler Action<TEvent>

irHandler IRKernel?

RemoteSubscriptionPipeline<TEvent>

RunLocal(Func<TEvent, HookContext, ValueTask>, IRKernel?)

Section titled “ RunLocal(Func<TEvent, HookContext, ValueTask>, IRKernel?)”
public RemoteSubscriptionPipeline<TEvent> RunLocal(Func<TEvent, HookContext, ValueTask> handler, IRKernel? irHandler = null)

handler Func<TEvent, HookContext, ValueTask>

irHandler IRKernel?

RemoteSubscriptionPipeline<TEvent>

RunLocal(Action<TEvent, HookContext>, IRKernel?)

Section titled “ RunLocal(Action<TEvent, HookContext>, IRKernel?)”
public RemoteSubscriptionPipeline<TEvent> RunLocal(Action<TEvent, HookContext> handler, IRKernel? irHandler = null)

handler Action<TEvent, HookContext>

irHandler IRKernel?

RemoteSubscriptionPipeline<TEvent>

RunLocal(Func<TEvent, ValueTask>, IRKernel?)

Section titled “ RunLocal(Func<TEvent, ValueTask>, IRKernel?)”
public RemoteSubscriptionPipeline<TEvent> RunLocal(Func<TEvent, ValueTask> handler, IRKernel? irHandler = null)

handler Func<TEvent, ValueTask>

irHandler IRKernel?

RemoteSubscriptionPipeline<TEvent>

public RemoteSubscriptionPipeline<TEvent> RunLocal(Action<TEvent> handler, IRKernel? irHandler = null)

handler Action<TEvent>

irHandler IRKernel?

RemoteSubscriptionPipeline<TEvent>

Select<TNext>(Func<TEvent, HookContext, TNext>, IRFunc<TEvent, HookContext, TNext>?)

Section titled “ Select<TNext>(Func<TEvent, HookContext, TNext>, IRFunc<TEvent, HookContext, TNext>?)”
public RemoteSubscriptionStage<TEvent, TNext> Select<TNext>(Func<TEvent, HookContext, TNext> projection, IRFunc<TEvent, HookContext, TNext>? irProjection = null)

projection Func<TEvent, HookContext, TNext>

irProjection IRFunc<TEvent, HookContext, TNext>?

RemoteSubscriptionStage<TEvent, TNext>

TNext

Select<TNext>(Func<TEvent, TNext>, IRFunc<TEvent, TNext>?)

Section titled “ Select<TNext>(Func<TEvent, TNext>, IRFunc<TEvent, TNext>?)”
public RemoteSubscriptionStage<TEvent, TNext> Select<TNext>(Func<TEvent, TNext> projection, IRFunc<TEvent, TNext>? irProjection = null)

projection Func<TEvent, TNext>

irProjection IRFunc<TEvent, TNext>?

RemoteSubscriptionStage<TEvent, TNext>

TNext

public RemoteSubscriptionPipeline<TEvent> Use<TKernel>() where TKernel : class

RemoteSubscriptionPipeline<TEvent>

TKernel

public RemoteSubscriptionPipeline<TEvent> UseGeneratedChain(PluginPackage package)

package PluginPackage

RemoteSubscriptionPipeline<TEvent>

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

Section titled “ UseGeneratedLocalChain(PluginPackage, Func<TEvent, HookContext, ValueTask>)”

Installs a lowered RunLocal subscription chain: the lowered Where/Select filter+projection installs server-side and the native handler is registered against the returned subscription id to receive each filtered, projected value pushed back over IPC.

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

package PluginPackage

handler Func<TEvent, HookContext, ValueTask>

RemoteSubscriptionPipeline<TEvent>

UseGeneratedLocalChain(PluginPackage, Action<TEvent, HookContext>)

Section titled “ UseGeneratedLocalChain(PluginPackage, Action<TEvent, HookContext>)”
public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Action<TEvent, HookContext> handler)

package PluginPackage

handler Action<TEvent, HookContext>

RemoteSubscriptionPipeline<TEvent>

UseGeneratedLocalChain(PluginPackage, Func<TEvent, ValueTask>)

Section titled “ UseGeneratedLocalChain(PluginPackage, Func<TEvent, ValueTask>)”
public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Func<TEvent, ValueTask> handler)

package PluginPackage

handler Func<TEvent, ValueTask>

RemoteSubscriptionPipeline<TEvent>

UseGeneratedLocalChain(PluginPackage, Action<TEvent>)

Section titled “ UseGeneratedLocalChain(PluginPackage, Action<TEvent>)”
public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Action<TEvent> handler)

package PluginPackage

handler Action<TEvent>

RemoteSubscriptionPipeline<TEvent>

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

Section titled “ UseGeneratedLocalChain(PluginPackage, Func<TEvent, HookContext, ValueTask>, Func<KernelRpcValue, TEvent>)”
public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Func<TEvent, HookContext, ValueTask> handler, Func<KernelRpcValue, TEvent> decoder)

package PluginPackage

handler Func<TEvent, HookContext, ValueTask>

decoder Func<KernelRpcValue, TEvent>

RemoteSubscriptionPipeline<TEvent>

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

Section titled “ UseGeneratedLocalChain(PluginPackage, Action<TEvent, HookContext>, Func<KernelRpcValue, TEvent>)”
public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Action<TEvent, HookContext> handler, Func<KernelRpcValue, TEvent> decoder)

package PluginPackage

handler Action<TEvent, HookContext>

decoder Func<KernelRpcValue, TEvent>

RemoteSubscriptionPipeline<TEvent>

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

Section titled “ UseGeneratedLocalChain(PluginPackage, Func<TEvent, ValueTask>, Func<KernelRpcValue, TEvent>)”
public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Func<TEvent, ValueTask> handler, Func<KernelRpcValue, TEvent> decoder)

package PluginPackage

handler Func<TEvent, ValueTask>

decoder Func<KernelRpcValue, TEvent>

RemoteSubscriptionPipeline<TEvent>

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

Section titled “ UseGeneratedLocalChain(PluginPackage, Action<TEvent>, Func<KernelRpcValue, TEvent>)”
public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Action<TEvent> handler, Func<KernelRpcValue, TEvent> decoder)

package PluginPackage

handler Action<TEvent>

decoder Func<KernelRpcValue, TEvent>

RemoteSubscriptionPipeline<TEvent>

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

Section titled “ UseGeneratedLocalChain(PluginPackage, Func<TEvent, HookContext, ValueTask>, Func<ReadOnlyMemory<byte>, TEvent>)”
public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Func<TEvent, HookContext, ValueTask> handler, Func<ReadOnlyMemory<byte>, TEvent> decoder)

package PluginPackage

handler Func<TEvent, HookContext, ValueTask>

decoder Func<ReadOnlyMemory<byte>, TEvent>

RemoteSubscriptionPipeline<TEvent>

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

Section titled “ UseGeneratedLocalChain(PluginPackage, Action<TEvent, HookContext>, Func<ReadOnlyMemory<byte>, TEvent>)”
public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Action<TEvent, HookContext> handler, Func<ReadOnlyMemory<byte>, TEvent> decoder)

package PluginPackage

handler Action<TEvent, HookContext>

decoder Func<ReadOnlyMemory<byte>, TEvent>

RemoteSubscriptionPipeline<TEvent>

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

Section titled “ UseGeneratedLocalChain(PluginPackage, Func<TEvent, ValueTask>, Func<ReadOnlyMemory<byte>, TEvent>)”
public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Func<TEvent, ValueTask> handler, Func<ReadOnlyMemory<byte>, TEvent> decoder)

package PluginPackage

handler Func<TEvent, ValueTask>

decoder Func<ReadOnlyMemory<byte>, TEvent>

RemoteSubscriptionPipeline<TEvent>

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

Section titled “ UseGeneratedLocalChain(PluginPackage, Action<TEvent>, Func<ReadOnlyMemory<byte>, TEvent>)”
public RemoteSubscriptionPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Action<TEvent> handler, Func<ReadOnlyMemory<byte>, TEvent> decoder)

package PluginPackage

handler Action<TEvent>

decoder Func<ReadOnlyMemory<byte>, TEvent>

RemoteSubscriptionPipeline<TEvent>

Where(Func<TEvent, HookContext, bool>, IRFunc<TEvent, HookContext, bool>?)

Section titled “ Where(Func<TEvent, HookContext, bool>, IRFunc<TEvent, HookContext, bool>?)”
public RemoteSubscriptionPipeline<TEvent> Where(Func<TEvent, HookContext, bool> filter, IRFunc<TEvent, HookContext, bool>? irFilter = null)

filter Func<TEvent, HookContext, bool>

irFilter IRFunc<TEvent, HookContext, bool>?

RemoteSubscriptionPipeline<TEvent>

Where(Func<TEvent, bool>, IRFunc<TEvent, bool>?)

Section titled “ Where(Func<TEvent, bool>, IRFunc<TEvent, bool>?)”
public RemoteSubscriptionPipeline<TEvent> Where(Func<TEvent, bool> filter, IRFunc<TEvent, bool>? irFilter = null)

filter Func<TEvent, bool>

irFilter IRFunc<TEvent, bool>?

RemoteSubscriptionPipeline<TEvent>