IWebRequester.cs 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. 
  2. namespace YooAsset
  3. {
  4. internal enum ERequestStatus
  5. {
  6. None,
  7. InProgress,
  8. Error,
  9. Success,
  10. }
  11. internal interface IWebRequester
  12. {
  13. /// <summary>
  14. /// 任务状态
  15. /// </summary>
  16. public ERequestStatus Status { get; }
  17. /// <summary>
  18. /// 下载进度(0f~1f)
  19. /// </summary>
  20. public float DownloadProgress { get; }
  21. /// <summary>
  22. /// 已经下载的总字节数
  23. /// </summary>
  24. public ulong DownloadedBytes { get; }
  25. /// <summary>
  26. /// 返回的网络错误
  27. /// </summary>
  28. public string RequestNetError { get; }
  29. /// <summary>
  30. /// 返回的HTTP CODE
  31. /// </summary>
  32. public long RequestHttpCode { get; }
  33. /// <summary>
  34. /// 创建任务
  35. /// </summary>
  36. public void Create(string url, BundleInfo bundleInfo, params object[] args);
  37. /// <summary>
  38. /// 更新任务
  39. /// </summary>
  40. public void Update();
  41. /// <summary>
  42. /// 终止任务
  43. /// </summary>
  44. public void Abort();
  45. /// <summary>
  46. /// 是否已经完成(无论成功或失败)
  47. /// </summary>
  48. public bool IsDone();
  49. /// <summary>
  50. /// 获取请求的对象
  51. /// </summary>
  52. public object GetRequestObject();
  53. }
  54. }