Class RemoteHookPipeline<TEvent>
public sealed class RemoteHookPipeline<TEvent>
Type Parameters
TEvent
- Inheritance
-
RemoteHookPipeline<TEvent>
- Inherited Members
Methods
RegisterLocal<TResult>(Func<TEvent, HookContext, CancellationToken, ValueTask<TResult>>, int)
public RemoteHookPipeline<TEvent> RegisterLocal<TResult>(Func<TEvent, HookContext, CancellationToken, ValueTask<TResult>> handler, int priority = 0) where TResult : struct, IHookResult
Parameters
handlerFunc<TEvent, HookContext, CancellationToken, ValueTask<TResult>>priorityint
Returns
- RemoteHookPipeline<TEvent>
Type Parameters
TResult
RegisterLocal<TResult>(Func<TEvent, HookContext, ValueTask<TResult>>, int)
public RemoteHookPipeline<TEvent> RegisterLocal<TResult>(Func<TEvent, HookContext, ValueTask<TResult>> handler, int priority = 0) where TResult : struct, IHookResult
Parameters
handlerFunc<TEvent, HookContext, ValueTask<TResult>>priorityint
Returns
- RemoteHookPipeline<TEvent>
Type Parameters
TResult
RegisterLocal<TResult>(Func<TEvent, HookContext, TResult>, int)
public RemoteHookPipeline<TEvent> RegisterLocal<TResult>(Func<TEvent, HookContext, TResult> handler, int priority = 0) where TResult : struct, IHookResult
Parameters
handlerFunc<TEvent, HookContext, TResult>priorityint
Returns
- RemoteHookPipeline<TEvent>
Type Parameters
TResult
RegisterLocal<TResult>(Func<TEvent, CancellationToken, ValueTask<TResult>>, int)
public RemoteHookPipeline<TEvent> RegisterLocal<TResult>(Func<TEvent, CancellationToken, ValueTask<TResult>> handler, int priority = 0) where TResult : struct, IHookResult
Parameters
handlerFunc<TEvent, CancellationToken, ValueTask<TResult>>priorityint
Returns
- RemoteHookPipeline<TEvent>
Type Parameters
TResult
RegisterLocal<TResult>(Func<TEvent, ValueTask<TResult>>, int)
public RemoteHookPipeline<TEvent> RegisterLocal<TResult>(Func<TEvent, ValueTask<TResult>> handler, int priority = 0) where TResult : struct, IHookResult
Parameters
Returns
- RemoteHookPipeline<TEvent>
Type Parameters
TResult
RegisterLocal<TResult>(Func<TEvent, TResult>, int)
public RemoteHookPipeline<TEvent> RegisterLocal<TResult>(Func<TEvent, TResult> handler, int priority = 0) where TResult : struct, IHookResult
Parameters
Returns
- RemoteHookPipeline<TEvent>
Type Parameters
TResult
Register<TResult>(Func<TEvent, TResult>, int)
public RemoteHookPipeline<TEvent> Register<TResult>(Func<TEvent, TResult> handler, int priority = 0) where TResult : struct, IHookResult
Parameters
Returns
- RemoteHookPipeline<TEvent>
Type Parameters
TResult
Run(Action<TEvent, HookContext>)
public RemoteHookPipeline<TEvent> Run(Action<TEvent, HookContext> handler)
Parameters
handlerAction<TEvent, HookContext>
Returns
- RemoteHookPipeline<TEvent>
Run(Action<TEvent>)
public RemoteHookPipeline<TEvent> Run(Action<TEvent> handler)
Parameters
handlerAction<TEvent>
Returns
- RemoteHookPipeline<TEvent>
Run(Func<TEvent, HookContext, ValueTask>)
public RemoteHookPipeline<TEvent> Run(Func<TEvent, HookContext, ValueTask> handler)
Parameters
handlerFunc<TEvent, HookContext, ValueTask>
Returns
- RemoteHookPipeline<TEvent>
Run(Func<TEvent, ValueTask>)
public RemoteHookPipeline<TEvent> Run(Func<TEvent, ValueTask> handler)
Parameters
Returns
- RemoteHookPipeline<TEvent>
RunLocal(Action<TEvent, HookContext>)
public RemoteHookPipeline<TEvent> RunLocal(Action<TEvent, HookContext> handler)
Parameters
handlerAction<TEvent, HookContext>
Returns
- RemoteHookPipeline<TEvent>
RunLocal(Action<TEvent>)
public RemoteHookPipeline<TEvent> RunLocal(Action<TEvent> handler)
Parameters
handlerAction<TEvent>
Returns
- RemoteHookPipeline<TEvent>
RunLocal(Func<TEvent, HookContext, ValueTask>)
public RemoteHookPipeline<TEvent> RunLocal(Func<TEvent, HookContext, ValueTask> handler)
Parameters
handlerFunc<TEvent, HookContext, ValueTask>
Returns
- RemoteHookPipeline<TEvent>
RunLocal(Func<TEvent, ValueTask>)
public RemoteHookPipeline<TEvent> RunLocal(Func<TEvent, ValueTask> handler)
Parameters
Returns
- RemoteHookPipeline<TEvent>
Select<TNext>(Func<TEvent, HookContext, TNext>)
public RemoteHookStage<TEvent, TNext> Select<TNext>(Func<TEvent, HookContext, TNext> projection)
Parameters
projectionFunc<TEvent, HookContext, TNext>
Returns
- RemoteHookStage<TEvent, TNext>
Type Parameters
TNext
Select<TNext>(Func<TEvent, TNext>)
public RemoteHookStage<TEvent, TNext> Select<TNext>(Func<TEvent, TNext> projection)
Parameters
projectionFunc<TEvent, TNext>
Returns
- RemoteHookStage<TEvent, TNext>
Type Parameters
TNext
UseGeneratedChain(PluginPackage)
public RemoteHookPipeline<TEvent> UseGeneratedChain(PluginPackage package)
Parameters
packagePluginPackage
Returns
- RemoteHookPipeline<TEvent>
UseGeneratedLocalChain(PluginPackage, Action<TEvent, HookContext>)
public RemoteHookPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Action<TEvent, HookContext> handler)
Parameters
packagePluginPackagehandlerAction<TEvent, HookContext>
Returns
- RemoteHookPipeline<TEvent>
UseGeneratedLocalChain(PluginPackage, Action<TEvent, HookContext>, Func<KernelRpcValue, TEvent>)
public RemoteHookPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Action<TEvent, HookContext> handler, Func<KernelRpcValue, TEvent> decoder)
Parameters
packagePluginPackagehandlerAction<TEvent, HookContext>decoderFunc<KernelRpcValue, TEvent>
Returns
- RemoteHookPipeline<TEvent>
UseGeneratedLocalChain(PluginPackage, Action<TEvent, HookContext>, Func<ReadOnlyMemory<byte>, TEvent>)
public RemoteHookPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Action<TEvent, HookContext> handler, Func<ReadOnlyMemory<byte>, TEvent> decoder)
Parameters
packagePluginPackagehandlerAction<TEvent, HookContext>decoderFunc<ReadOnlyMemory<byte>, TEvent>
Returns
- RemoteHookPipeline<TEvent>
UseGeneratedLocalChain(PluginPackage, Action<TEvent>)
public RemoteHookPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Action<TEvent> handler)
Parameters
packagePluginPackagehandlerAction<TEvent>
Returns
- RemoteHookPipeline<TEvent>
UseGeneratedLocalChain(PluginPackage, Action<TEvent>, Func<KernelRpcValue, TEvent>)
public RemoteHookPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Action<TEvent> handler, Func<KernelRpcValue, TEvent> decoder)
Parameters
packagePluginPackagehandlerAction<TEvent>decoderFunc<KernelRpcValue, TEvent>
Returns
- RemoteHookPipeline<TEvent>
UseGeneratedLocalChain(PluginPackage, Action<TEvent>, Func<ReadOnlyMemory<byte>, TEvent>)
public RemoteHookPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Action<TEvent> handler, Func<ReadOnlyMemory<byte>, TEvent> decoder)
Parameters
packagePluginPackagehandlerAction<TEvent>decoderFunc<ReadOnlyMemory<byte>, TEvent>
Returns
- RemoteHookPipeline<TEvent>
UseGeneratedLocalChain(PluginPackage, Func<TEvent, HookContext, ValueTask>)
Installs a lowered RunLocal chain: the generated package (the lowered Where/Select
filter+projection) is installed server-side, and the native handler is registered
against the returned subscription id so the server can push each filtered, projected value back to it.
Called by the generated interceptor that replaces a RunLocal(lambda) call site.
public RemoteHookPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Func<TEvent, HookContext, ValueTask> handler)
Parameters
packagePluginPackagehandlerFunc<TEvent, HookContext, ValueTask>
Returns
- RemoteHookPipeline<TEvent>
UseGeneratedLocalChain(PluginPackage, Func<TEvent, HookContext, ValueTask>, Func<KernelRpcValue, TEvent>)
public RemoteHookPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Func<TEvent, HookContext, ValueTask> handler, Func<KernelRpcValue, TEvent> decoder)
Parameters
packagePluginPackagehandlerFunc<TEvent, HookContext, ValueTask>decoderFunc<KernelRpcValue, TEvent>
Returns
- RemoteHookPipeline<TEvent>
UseGeneratedLocalChain(PluginPackage, Func<TEvent, HookContext, ValueTask>, Func<ReadOnlyMemory<byte>, TEvent>)
public RemoteHookPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Func<TEvent, HookContext, ValueTask> handler, Func<ReadOnlyMemory<byte>, TEvent> decoder)
Parameters
packagePluginPackagehandlerFunc<TEvent, HookContext, ValueTask>decoderFunc<ReadOnlyMemory<byte>, TEvent>
Returns
- RemoteHookPipeline<TEvent>
UseGeneratedLocalChain(PluginPackage, Func<TEvent, ValueTask>)
public RemoteHookPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Func<TEvent, ValueTask> handler)
Parameters
packagePluginPackagehandlerFunc<TEvent, ValueTask>
Returns
- RemoteHookPipeline<TEvent>
UseGeneratedLocalChain(PluginPackage, Func<TEvent, ValueTask>, Func<KernelRpcValue, TEvent>)
public RemoteHookPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Func<TEvent, ValueTask> handler, Func<KernelRpcValue, TEvent> decoder)
Parameters
packagePluginPackagehandlerFunc<TEvent, ValueTask>decoderFunc<KernelRpcValue, TEvent>
Returns
- RemoteHookPipeline<TEvent>
UseGeneratedLocalChain(PluginPackage, Func<TEvent, ValueTask>, Func<ReadOnlyMemory<byte>, TEvent>)
public RemoteHookPipeline<TEvent> UseGeneratedLocalChain(PluginPackage package, Func<TEvent, ValueTask> handler, Func<ReadOnlyMemory<byte>, TEvent> decoder)
Parameters
packagePluginPackagehandlerFunc<TEvent, ValueTask>decoderFunc<ReadOnlyMemory<byte>, TEvent>
Returns
- RemoteHookPipeline<TEvent>
UseGeneratedLocalResultChain<TResult>(PluginPackage, Func<TEvent, HookContext, CancellationToken, ValueTask<TResult>>, int)
public RemoteHookPipeline<TEvent> UseGeneratedLocalResultChain<TResult>(PluginPackage package, Func<TEvent, HookContext, CancellationToken, ValueTask<TResult>> handler, int priority = 0) where TResult : struct, IHookResult
Parameters
packagePluginPackagehandlerFunc<TEvent, HookContext, CancellationToken, ValueTask<TResult>>priorityint
Returns
- RemoteHookPipeline<TEvent>
Type Parameters
TResult
UseGeneratedLocalResultChain<TResult>(PluginPackage, Func<TEvent, HookContext, ValueTask<TResult>>, int)
public RemoteHookPipeline<TEvent> UseGeneratedLocalResultChain<TResult>(PluginPackage package, Func<TEvent, HookContext, ValueTask<TResult>> handler, int priority = 0) where TResult : struct, IHookResult
Parameters
packagePluginPackagehandlerFunc<TEvent, HookContext, ValueTask<TResult>>priorityint
Returns
- RemoteHookPipeline<TEvent>
Type Parameters
TResult
UseGeneratedLocalResultChain<TResult>(PluginPackage, Func<TEvent, HookContext, TResult>, int)
public RemoteHookPipeline<TEvent> UseGeneratedLocalResultChain<TResult>(PluginPackage package, Func<TEvent, HookContext, TResult> handler, int priority = 0) where TResult : struct, IHookResult
Parameters
packagePluginPackagehandlerFunc<TEvent, HookContext, TResult>priorityint
Returns
- RemoteHookPipeline<TEvent>
Type Parameters
TResult
UseGeneratedLocalResultChain<TResult>(PluginPackage, Func<TEvent, CancellationToken, ValueTask<TResult>>, int)
public RemoteHookPipeline<TEvent> UseGeneratedLocalResultChain<TResult>(PluginPackage package, Func<TEvent, CancellationToken, ValueTask<TResult>> handler, int priority = 0) where TResult : struct, IHookResult
Parameters
packagePluginPackagehandlerFunc<TEvent, CancellationToken, ValueTask<TResult>>priorityint
Returns
- RemoteHookPipeline<TEvent>
Type Parameters
TResult
UseGeneratedLocalResultChain<TResult>(PluginPackage, Func<TEvent, ValueTask<TResult>>, int)
public RemoteHookPipeline<TEvent> UseGeneratedLocalResultChain<TResult>(PluginPackage package, Func<TEvent, ValueTask<TResult>> handler, int priority = 0) where TResult : struct, IHookResult
Parameters
packagePluginPackagehandlerFunc<TEvent, ValueTask<TResult>>priorityint
Returns
- RemoteHookPipeline<TEvent>
Type Parameters
TResult
UseGeneratedLocalResultChain<TResult>(PluginPackage, Func<TEvent, TResult>, int)
public RemoteHookPipeline<TEvent> UseGeneratedLocalResultChain<TResult>(PluginPackage package, Func<TEvent, TResult> handler, int priority = 0) where TResult : struct, IHookResult
Parameters
packagePluginPackagehandlerFunc<TEvent, TResult>priorityint
Returns
- RemoteHookPipeline<TEvent>
Type Parameters
TResult
UseGeneratedResultChain<TResult>(PluginPackage, int)
public RemoteHookPipeline<TEvent> UseGeneratedResultChain<TResult>(PluginPackage package, int priority = 0) where TResult : struct, IHookResult
Parameters
packagePluginPackagepriorityint
Returns
- RemoteHookPipeline<TEvent>
Type Parameters
TResult
Use<TKernel>()
public RemoteHookPipeline<TEvent> Use<TKernel>() where TKernel : class
Returns
- RemoteHookPipeline<TEvent>
Type Parameters
TKernel
Where(Func<TEvent, HookContext, bool>)
public RemoteHookPipeline<TEvent> Where(Func<TEvent, HookContext, bool> filter)
Parameters
filterFunc<TEvent, HookContext, bool>
Returns
- RemoteHookPipeline<TEvent>
Where(Func<TEvent, bool>)
public RemoteHookPipeline<TEvent> Where(Func<TEvent, bool> filter)
Parameters
Returns
- RemoteHookPipeline<TEvent>