Skip to content

Class RemoteSubscriptionStage<TEvent, TCurrent>

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

[PipelineSurface(PipelineTransport.Remote)]
public sealed class RemoteSubscriptionStage<TEvent, TCurrent>

TEvent

TCurrent

objectRemoteSubscriptionStage<TEvent, TCurrent>

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

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

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

handler Func<TCurrent, HookContext, ValueTask>

irHandler IRKernel?

RemoteSubscriptionPipeline<TEvent>

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

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

handler Action<TCurrent, HookContext>

irHandler IRKernel?

RemoteSubscriptionPipeline<TEvent>

Run(Func<TCurrent, ValueTask>, IRKernel?)

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

handler Func<TCurrent, ValueTask>

irHandler IRKernel?

RemoteSubscriptionPipeline<TEvent>

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

handler Action<TCurrent>

irHandler IRKernel?

RemoteSubscriptionPipeline<TEvent>

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

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

handler Func<TCurrent, HookContext, ValueTask>

irHandler IRKernel?

RemoteSubscriptionPipeline<TEvent>

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

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

handler Action<TCurrent, HookContext>

irHandler IRKernel?

RemoteSubscriptionPipeline<TEvent>

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

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

handler Func<TCurrent, ValueTask>

irHandler IRKernel?

RemoteSubscriptionPipeline<TEvent>

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

handler Action<TCurrent>

irHandler IRKernel?

RemoteSubscriptionPipeline<TEvent>

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

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

projection Func<TCurrent, HookContext, TNext>

irProjection IRFunc<TCurrent, HookContext, TNext>?

RemoteSubscriptionStage<TEvent, TNext>

TNext

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

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

projection Func<TCurrent, TNext>

irProjection IRFunc<TCurrent, TNext>?

RemoteSubscriptionStage<TEvent, TNext>

TNext

public RemoteSubscriptionPipeline<TEvent> UseGeneratedChain(PluginPackage package)

package PluginPackage

RemoteSubscriptionPipeline<TEvent>

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

Section titled “ 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)

package PluginPackage

handler Func<TCurrent, HookContext, ValueTask>

RemoteSubscriptionPipeline<TEvent>

UseGeneratedLocalChain(PluginPackage, Action<TCurrent, HookContext>)

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

package PluginPackage

handler Action<TCurrent, HookContext>

RemoteSubscriptionPipeline<TEvent>

UseGeneratedLocalChain(PluginPackage, Func<TCurrent, ValueTask>)

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

package PluginPackage

handler Func<TCurrent, ValueTask>

RemoteSubscriptionPipeline<TEvent>

UseGeneratedLocalChain(PluginPackage, Action<TCurrent>)

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

package PluginPackage

handler Action<TCurrent>

RemoteSubscriptionPipeline<TEvent>

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

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

package PluginPackage

handler Func<TCurrent, HookContext, ValueTask>

decoder Func<KernelRpcValue, TCurrent>

RemoteSubscriptionPipeline<TEvent>

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

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

package PluginPackage

handler Action<TCurrent, HookContext>

decoder Func<KernelRpcValue, TCurrent>

RemoteSubscriptionPipeline<TEvent>

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

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

package PluginPackage

handler Func<TCurrent, ValueTask>

decoder Func<KernelRpcValue, TCurrent>

RemoteSubscriptionPipeline<TEvent>

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

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

package PluginPackage

handler Action<TCurrent>

decoder Func<KernelRpcValue, TCurrent>

RemoteSubscriptionPipeline<TEvent>

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

Section titled “ 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)

package PluginPackage

handler Func<TCurrent, HookContext, ValueTask>

decoder Func<ReadOnlyMemory<byte>, TCurrent>

RemoteSubscriptionPipeline<TEvent>

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

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

package PluginPackage

handler Action<TCurrent, HookContext>

decoder Func<ReadOnlyMemory<byte>, TCurrent>

RemoteSubscriptionPipeline<TEvent>

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

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

package PluginPackage

handler Func<TCurrent, ValueTask>

decoder Func<ReadOnlyMemory<byte>, TCurrent>

RemoteSubscriptionPipeline<TEvent>

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

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

package PluginPackage

handler Action<TCurrent>

decoder Func<ReadOnlyMemory<byte>, TCurrent>

RemoteSubscriptionPipeline<TEvent>

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

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

filter Func<TCurrent, HookContext, bool>

irFilter IRFunc<TCurrent, HookContext, bool>?

RemoteSubscriptionStage<TEvent, TCurrent>

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

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

filter Func<TCurrent, bool>

irFilter IRFunc<TCurrent, bool>?

RemoteSubscriptionStage<TEvent, TCurrent>