WebRequestStartEventArgs.cs 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. //------------------------------------------------------------
  2. // Game Framework
  3. // Copyright © 2013-2021 loyalsoft. All rights reserved.
  4. // Homepage: http://www.game7000.com/
  5. // Feedback: http://www.game7000.com/
  6. //------------------------------------------------------------
  7. using GameFramework;
  8. using GameFramework.Event;
  9. namespace UnityGameFramework.Runtime
  10. {
  11. /// <summary>
  12. /// Web 请求开始事件。
  13. /// </summary>
  14. public sealed class WebRequestStartEventArgs : GameEventArgs
  15. {
  16. /// <summary>
  17. /// Web 请求开始事件编号。
  18. /// </summary>
  19. public static readonly int EventId = typeof(WebRequestStartEventArgs).GetHashCode();
  20. /// <summary>
  21. /// 初始化 Web 请求开始事件的新实例。
  22. /// </summary>
  23. public WebRequestStartEventArgs()
  24. {
  25. SerialId = 0;
  26. WebRequestUri = null;
  27. UserData = null;
  28. }
  29. /// <summary>
  30. /// 获取 Web 请求开始事件编号。
  31. /// </summary>
  32. public override int Id
  33. {
  34. get
  35. {
  36. return EventId;
  37. }
  38. }
  39. /// <summary>
  40. /// 获取 Web 请求任务的序列编号。
  41. /// </summary>
  42. public int SerialId
  43. {
  44. get;
  45. private set;
  46. }
  47. /// <summary>
  48. /// 获取 Web 请求地址。
  49. /// </summary>
  50. public string WebRequestUri
  51. {
  52. get;
  53. private set;
  54. }
  55. /// <summary>
  56. /// 获取用户自定义数据。
  57. /// </summary>
  58. public object UserData
  59. {
  60. get;
  61. private set;
  62. }
  63. /// <summary>
  64. /// 创建 Web 请求开始事件。
  65. /// </summary>
  66. /// <param name="e">内部事件。</param>
  67. /// <returns>创建的 Web 请求开始事件。</returns>
  68. public static WebRequestStartEventArgs Create(GameFramework.WebRequest.WebRequestStartEventArgs e)
  69. {
  70. WWWFormInfo wwwFormInfo = (WWWFormInfo)e.UserData;
  71. WebRequestStartEventArgs webRequestStartEventArgs = ReferencePool.Acquire<WebRequestStartEventArgs>();
  72. webRequestStartEventArgs.SerialId = e.SerialId;
  73. webRequestStartEventArgs.WebRequestUri = e.WebRequestUri;
  74. webRequestStartEventArgs.UserData = wwwFormInfo.UserData;
  75. return webRequestStartEventArgs;
  76. }
  77. /// <summary>
  78. /// 清理 Web 请求开始事件。
  79. /// </summary>
  80. public override void Clear()
  81. {
  82. SerialId = 0;
  83. WebRequestUri = null;
  84. UserData = null;
  85. }
  86. }
  87. }