Show / Hide Table of Contents

Interface IOutputChannel

Defines the interface that a channel must implement to send a message.

Namespace: DotNext.Net.Cluster.Messaging
Assembly: DotNext.Net.Cluster.dll
Syntax
public interface IOutputChannel

Methods

| Improve this Doc View Source

SendMessageAsync<TResponse>(IMessage, MessageReader<TResponse>, CancellationToken)

Sends a request message.

Declaration
Task<TResponse> SendMessageAsync<TResponse>(IMessage message, MessageReader<TResponse> responseReader, CancellationToken token = default(CancellationToken))
Parameters
Type Name Description
IMessage message

The message to be sent.

MessageReader<TResponse> responseReader

The response reader.

CancellationToken token

The token that can be used to cancel asynchronous operation.

Returns
Type Description
Task<TResponse>

The message representing response; or null if request message in one-way.

Type Parameters
Name Description
TResponse

The type of the parsed response message.

Remarks

The message content may be available inside of responseReader only. Do not try to return IMessage itself from the delegate.

Exceptions
Type Condition
InvalidOperationException

Attempts to send message to local or unavailable endpoint.

| Improve this Doc View Source

SendSignalAsync(IMessage, CancellationToken)

Sends one-way message.

Declaration
Task SendSignalAsync(IMessage message, CancellationToken token = default(CancellationToken))
Parameters
Type Name Description
IMessage message

The message to be sent.

CancellationToken token

The token that can be used to cancel asynchronous operation.

Returns
Type Description
Task

The task representing execution of this method.

Exceptions
Type Condition
InvalidOperationException

Attempts to send message to local or unavailable endpoint.

Extension Methods

AsyncLockAcquisition.AcquireLockAsync<T>(T, TimeSpan)
AsyncLockAcquisition.AcquireLockAsync<T>(T, CancellationToken)
AsyncLockAcquisition.AcquireReadLockAsync<T>(T, TimeSpan)
AsyncLockAcquisition.AcquireReadLockAsync<T>(T, CancellationToken)
AsyncLockAcquisition.AcquireWriteLockAsync<T>(T, TimeSpan)
AsyncLockAcquisition.AcquireWriteLockAsync<T>(T, CancellationToken)
AsyncLockAcquisition.AcquireUpgradeableReadLockAsync<T>(T, TimeSpan)
AsyncLockAcquisition.AcquireUpgradeableReadLockAsync<T>(T, CancellationToken)
ObjectExtensions.GetUserData<T>(T)
ObjectExtensions.IsOneOf<T>(T, IEnumerable<T>)
ObjectExtensions.IsOneOf<T>(T, T[])
ObjectExtensions.Decompose<T, TResult1, TResult2>(T, Func<T, TResult1>, Func<T, TResult2>, out TResult1, out TResult2)
ObjectExtensions.Decompose<T, TResult1, TResult2>(T, ValueFunc<T, TResult1>, ValueFunc<T, TResult2>, out TResult1, out TResult2)
ObjectExtensions.Decompose<T, TResult1, TResult2>(T, Func<T, TResult1>, Func<T, TResult2>)
ObjectExtensions.Decompose<T, TResult1, TResult2>(T, ValueFunc<T, TResult1>, ValueFunc<T, TResult2>)
ObjectExtensions.As<T>(T)
LockAcquisition.AcquireReadLock<T>(T)
LockAcquisition.AcquireReadLock<T>(T, TimeSpan)
LockAcquisition.AcquireWriteLock<T>(T)
LockAcquisition.AcquireWriteLock<T>(T, TimeSpan)
LockAcquisition.AcquireUpgradeableReadLock<T>(T)
LockAcquisition.AcquireUpgradeableReadLock<T>(T, TimeSpan)
ExpressionBuilder.Const<T>(T)
  • Improve this Doc
  • View Source
In This Article
Back to top Generated by DocFX