// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Cqrs.Abstractions.Cqrs;
///
/// 定义 CQRS 请求处理前后的管道行为。
///
/// 请求类型。
/// 响应类型。
public interface IPipelineBehavior
where TRequest : IRequest
{
///
/// 处理当前请求,并决定是否继续调用后续行为或最终处理器。
///
/// 当前请求消息。
/// 下一个处理委托。
/// 取消令牌。
/// 请求响应。
ValueTask Handle(
TRequest message,
MessageHandlerDelegate next,
CancellationToken cancellationToken);
}