WebRequestSuccessEventArgs.cs 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  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. namespace GameFramework.WebRequest
  8. {
  9. /// <summary>
  10. /// Web 请求成功事件。
  11. /// </summary>
  12. public sealed class WebRequestSuccessEventArgs : GameFrameworkEventArgs
  13. {
  14. private byte[] m_WebResponseBytes;
  15. /// <summary>
  16. /// 初始化 Web 请求成功事件的新实例。
  17. /// </summary>
  18. public WebRequestSuccessEventArgs()
  19. {
  20. SerialId = 0;
  21. WebRequestUri = null;
  22. m_WebResponseBytes = null;
  23. UserData = null;
  24. }
  25. /// <summary>
  26. /// 获取 Web 请求任务的序列编号。
  27. /// </summary>
  28. public int SerialId
  29. {
  30. get;
  31. private set;
  32. }
  33. /// <summary>
  34. /// 获取 Web 请求地址。
  35. /// </summary>
  36. public string WebRequestUri
  37. {
  38. get;
  39. private set;
  40. }
  41. /// <summary>
  42. /// 获取用户自定义数据。
  43. /// </summary>
  44. public object UserData
  45. {
  46. get;
  47. private set;
  48. }
  49. /// <summary>
  50. /// 创建 Web 请求成功事件。
  51. /// </summary>
  52. /// <param name="serialId">Web 请求任务的序列编号。</param>
  53. /// <param name="webRequestUri">Web 请求地址。</param>
  54. /// <param name="webResponseBytes">Web 响应的数据流。</param>
  55. /// <param name="userData">用户自定义数据。</param>
  56. /// <returns>创建的 Web 请求成功事件。</returns>
  57. public static WebRequestSuccessEventArgs Create(int serialId, string webRequestUri, byte[] webResponseBytes, object userData)
  58. {
  59. WebRequestSuccessEventArgs webRequestSuccessEventArgs = ReferencePool.Acquire<WebRequestSuccessEventArgs>();
  60. webRequestSuccessEventArgs.SerialId = serialId;
  61. webRequestSuccessEventArgs.WebRequestUri = webRequestUri;
  62. webRequestSuccessEventArgs.m_WebResponseBytes = webResponseBytes;
  63. webRequestSuccessEventArgs.UserData = userData;
  64. return webRequestSuccessEventArgs;
  65. }
  66. /// <summary>
  67. /// 清理 Web 请求成功事件。
  68. /// </summary>
  69. public override void Clear()
  70. {
  71. SerialId = 0;
  72. WebRequestUri = null;
  73. m_WebResponseBytes = null;
  74. UserData = null;
  75. }
  76. /// <summary>
  77. /// 获取 Web 响应的数据流。
  78. /// </summary>
  79. /// <returns>Web 响应的数据流。</returns>
  80. public byte[] GetWebResponseBytes()
  81. {
  82. return m_WebResponseBytes;
  83. }
  84. }
  85. }