QNBaseUpload.m 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. //
  2. // QNBaseUpload.m
  3. // QiniuSDK
  4. //
  5. // Created by WorkSpace_Sun on 2020/4/19.
  6. // Copyright © 2020 Qiniu. All rights reserved.
  7. //
  8. #import "QNBaseUpload.h"
  9. @interface QNBaseUpload ()
  10. @end
  11. @implementation QNBaseUpload
  12. - (void)run {
  13. // rewrite by subclass
  14. }
  15. - (void)collectHttpResponseInfo:(QNHttpResponseInfo *)httpResponseInfo fileOffset:(uint64_t)fileOffset {
  16. QNZonesInfo *zonesInfo = [self.config.zone getZonesInfoWithToken:self.token];
  17. NSString *targetRegionId = [zonesInfo getZoneInfoRegionNameWithType:QNZoneInfoTypeMain];
  18. NSString *currentRegionId = [zonesInfo getZoneInfoRegionNameWithType:self.currentZoneType];
  19. [Collector addRequestWithType:self.requestType httpResponseInfo:httpResponseInfo fileOffset:fileOffset targetRegionId:targetRegionId currentRegionId:currentRegionId identifier:self.identifier];
  20. uint64_t bytesSent;
  21. if (self.requestType == QNRequestType_mkblk || self.requestType == QNRequestType_bput) {
  22. if (httpResponseInfo.hasHttpResponse) {
  23. bytesSent = httpResponseInfo.bytesTotal;
  24. } else {
  25. bytesSent = 0;
  26. }
  27. [Collector append:CK_blockBytesSent value:@(bytesSent) identifier:self.identifier];
  28. } else {
  29. bytesSent = httpResponseInfo.bytesSent;
  30. }
  31. [Collector append:CK_totalBytesSent value:@(bytesSent) identifier:self.identifier];
  32. }
  33. - (void)collectUploadQualityInfo {
  34. QNZonesInfo *zonesInfo = [self.config.zone getZonesInfoWithToken:self.token];
  35. NSString *targetRegionId = [zonesInfo getZoneInfoRegionNameWithType:QNZoneInfoTypeMain];
  36. NSString *currentRegionId = [zonesInfo getZoneInfoRegionNameWithType:self.currentZoneType];
  37. [Collector update:CK_targetRegionId value:targetRegionId identifier:self.identifier];
  38. [Collector update:CK_currentRegionId value:currentRegionId identifier:self.identifier];
  39. [Collector update:CK_fileSize value:@(self.size) identifier:self.identifier];
  40. }
  41. @end