Files
tnb.server/common/Tnb.Common.Core/EventBus/Sources/LogEventSource.cs
2023-03-13 15:00:34 +08:00

55 lines
1.4 KiB
C#

using JNPF.EventBus;
using JNPF.Systems.Entitys.System;
using SqlSugar;
namespace JNPF.EventHandler;
/// <summary>
/// 日记事件源(事件承载对象).
/// </summary>
public class LogEventSource : IEventSource
{
/// <summary>
/// 构造函数.
/// </summary>
/// <param name="eventId">事件ID.</param>
/// <param name="connectionConfig">数据库连接配置.</param>
/// <param name="entity">实体.</param>
public LogEventSource(string eventId, ConnectionConfigOptions connectionConfig, SysLogEntity entity)
{
EventId = eventId;
ConnectionConfig = connectionConfig;
Entity = entity;
}
/// <summary>
/// 数据库连接配置.
/// </summary>
public ConnectionConfigOptions ConnectionConfig { get; set; }
/// <summary>
/// 日记实体.
/// </summary>
public SysLogEntity Entity { get; set; }
/// <summary>
/// 事件 Id.
/// </summary>
public string EventId { get; }
/// <summary>
/// 事件承载(携带)数据.
/// </summary>
public object Payload { get; }
/// <summary>
/// 取消任务 Token.
/// </summary>
/// <remarks>用于取消本次消息处理.</remarks>
public CancellationToken CancellationToken { get; }
/// <summary>
/// 事件创建时间.
/// </summary>
public DateTime CreatedTime { get; } = DateTime.UtcNow;
}