using XFEExtension.NetCore.DelegateExtension; namespace XFEExtension.NetCore.CyberComm.XCCNetWork; /// /// XCC文件 /// /// 群组ID /// 文件消息ID /// 文件类型 /// 发送者 /// 发送时间 /// 文件的Buffer public class XCCFile(string groupId, string messageId, XCCFileType fileType, string sender, DateTime? sendTime, byte[]? fileBuffer = null) { /// /// 文件加载完成时触发 /// public event XFEEventHandler? FileLoaded; /// /// 群组ID /// public string GroupId { get; } = groupId; /// /// 消息ID /// public string MessageId { get; } = messageId; /// /// 发送者 /// public string Sender { get; } = sender; /// /// 发送时间 /// public DateTime? SendTime { get; } = sendTime; /// /// XCC文件类型 /// public XCCFileType FileType { get; } = fileType; /// /// 是否已加载 /// public bool Loaded { get; private set; } = fileBuffer is not null; /// /// 文件流 /// public byte[]? FileBuffer { get; set; } = fileBuffer; /// /// 加载文件 /// /// 文件流 public void LoadFile(byte[] fileBuffer) { FileBuffer = fileBuffer; Loaded = true; FileLoaded?.Invoke(this); } }