GFramework/GFramework.Cqrs/CqrsRequestInvokerDescriptorEntry.cs
gewuyou ff553977e3 chore(license): 补齐 Apache-2.0 文件头治理
- 新增许可证文件头检查与修复脚本

- 补充维护者手动修复 PR 工作流和 CI 校验

- 更新贡献指南中的文件头说明

- 补齐仓库维护源码和配置文件的许可证声明
2026-05-03 19:39:49 +08:00

45 lines
1.6 KiB
C#

// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Cqrs;
/// <summary>
/// 描述单个 request/response 类型对与其 generated invoker 元数据之间的映射条目。
/// </summary>
public sealed record CqrsRequestInvokerDescriptorEntry
{
/// <summary>
/// 初始化 request invoker 描述符映射条目。
/// </summary>
/// <param name="requestType">请求运行时类型。</param>
/// <param name="responseType">响应运行时类型。</param>
/// <param name="descriptor">对应的 generated request invoker 描述符。</param>
/// <exception cref="ArgumentNullException">
/// 当 <paramref name="requestType" />、<paramref name="responseType" /> 或 <paramref name="descriptor" /> 为 <see langword="null" /> 时抛出。
/// </exception>
public CqrsRequestInvokerDescriptorEntry(
Type requestType,
Type responseType,
CqrsRequestInvokerDescriptor descriptor)
{
RequestType = requestType ?? throw new ArgumentNullException(nameof(requestType));
ResponseType = responseType ?? throw new ArgumentNullException(nameof(responseType));
Descriptor = descriptor ?? throw new ArgumentNullException(nameof(descriptor));
}
/// <summary>
/// 获取请求运行时类型。
/// </summary>
public Type RequestType { get; }
/// <summary>
/// 获取响应运行时类型。
/// </summary>
public Type ResponseType { get; }
/// <summary>
/// 获取对应的 generated request invoker 描述符。
/// </summary>
public CqrsRequestInvokerDescriptor Descriptor { get; }
}