using Axibug.Event; namespace Axibug.Runtime { /// /// Web 请求失败事件。 /// public sealed class WebRequestFailureEventArgs : LogicEventArgs { /// /// Web 请求失败事件编号。 /// public static readonly int EventId = typeof(WebRequestFailureEventArgs).GetHashCode(); /// /// 初始化 Web 请求失败事件的新实例。 /// public WebRequestFailureEventArgs() { SerialId = 0; WebRequestUri = null; ErrorMessage = null; UserData = null; } /// /// 获取 Web 请求失败事件编号。 /// public override int Id { get { return EventId; } } /// /// 获取 Web 请求任务的序列编号。 /// public int SerialId { get; private set; } /// /// 获取 Web 请求地址。 /// public string WebRequestUri { get; private set; } /// /// 获取错误信息。 /// public string ErrorMessage { get; private set; } /// /// 获取用户自定义数据。 /// public object UserData { get; private set; } /// /// 创建 Web 请求失败事件。 /// /// 内部事件。 /// 创建的 Web 请求失败事件。 public static WebRequestFailureEventArgs Create(Axibug.WebRequest.WebRequestFailureEventArgs e) { WWWFormInfo wwwFormInfo = (WWWFormInfo)e.UserData; WebRequestFailureEventArgs webRequestFailureEventArgs = ReferencePool.Acquire(); webRequestFailureEventArgs.SerialId = e.SerialId; webRequestFailureEventArgs.WebRequestUri = e.WebRequestUri; webRequestFailureEventArgs.ErrorMessage = e.ErrorMessage; webRequestFailureEventArgs.UserData = wwwFormInfo.UserData; ReferencePool.Release(wwwFormInfo); return webRequestFailureEventArgs; } /// /// 清理 Web 请求失败事件。 /// public override void Clear() { SerialId = 0; WebRequestUri = null; ErrorMessage = null; UserData = null; } } }