NetworkConnectedEventArgs.cs 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. //------------------------------------------------------------
  2. // Game Framework
  3. // Copyright © 2013-2021 Jiang Yin. All rights reserved.
  4. // Homepage: https://gameframework.cn/
  5. // Feedback: mailto:ellan@gameframework.cn
  6. //------------------------------------------------------------
  7. namespace GameFramework.Network
  8. {
  9. /// <summary>
  10. /// 网络连接成功事件。
  11. /// </summary>
  12. public sealed class NetworkConnectedEventArgs : GameFrameworkEventArgs
  13. {
  14. /// <summary>
  15. /// 初始化网络连接成功事件的新实例。
  16. /// </summary>
  17. public NetworkConnectedEventArgs()
  18. {
  19. NetworkChannel = null;
  20. UserData = null;
  21. }
  22. /// <summary>
  23. /// 获取网络频道。
  24. /// </summary>
  25. public INetworkChannel NetworkChannel
  26. {
  27. get;
  28. private set;
  29. }
  30. /// <summary>
  31. /// 获取用户自定义数据。
  32. /// </summary>
  33. public object UserData
  34. {
  35. get;
  36. private set;
  37. }
  38. /// <summary>
  39. /// 创建网络连接成功事件。
  40. /// </summary>
  41. /// <param name="networkChannel">网络频道。</param>
  42. /// <param name="userData">用户自定义数据。</param>
  43. /// <returns>创建的网络连接成功事件。</returns>
  44. public static NetworkConnectedEventArgs Create(INetworkChannel networkChannel, object userData)
  45. {
  46. NetworkConnectedEventArgs networkConnectedEventArgs = ReferencePool.Acquire<NetworkConnectedEventArgs>();
  47. networkConnectedEventArgs.NetworkChannel = networkChannel;
  48. networkConnectedEventArgs.UserData = userData;
  49. return networkConnectedEventArgs;
  50. }
  51. /// <summary>
  52. /// 清理网络连接成功事件。
  53. /// </summary>
  54. public override void Clear()
  55. {
  56. NetworkChannel = null;
  57. UserData = null;
  58. }
  59. }
  60. }