dotnet-cqrs/Svrnty.CQRS.Abstractions/Discovery/ICommandMeta.cs

22 lines
598 B
C#

using System;
using System.Threading;
using System.Threading.Tasks;
namespace Svrnty.CQRS.Abstractions.Discovery;
public interface ICommandMeta
{
string Name { get; }
Type CommandType { get; }
Type ServiceType { get; }
Type CommandResultType { get; }
string LowerCamelCaseName { get; }
/// <summary>
/// Compiled delegate for invoking the handler without reflection.
/// Signature: (object handler, object command, CancellationToken ct) => Task<object?>
/// </summary>
Func<object, object, CancellationToken, Task<object?>> CompiledInvoker { get; }
}