getBucketStat.ts 1002 B

12345678910111213141516171819202122232425262728293031323334
  1. import { checkBucketName } from '../utils/checkBucketName';
  2. interface bucketStatRes {
  3. Storage: string;
  4. ObjectCount: string;
  5. MultipartUploadCount: string;
  6. LiveChannelCount: string;
  7. LastModifiedTime: string;
  8. StandardStorage: string;
  9. StandardObjectCount: string;
  10. InfrequentAccessStorage: string;
  11. InfrequentAccessRealStorage: string;
  12. InfrequentAccessObjectCount: string;
  13. ArchiveStorage: string;
  14. ArchiveRealStorage: string;
  15. ArchiveObjectCount: string;
  16. ColdArchiveStorage: string;
  17. ColdArchiveRealStorage: string;
  18. ColdArchiveObjectCount: string;
  19. }
  20. export async function getBucketStat(this: any, name: string, options: {}): Promise<{ res: any; stat: bucketStatRes }> {
  21. name = name || this.options.bucket;
  22. checkBucketName(name);
  23. const params = this._bucketRequestParams('GET', name, 'stat', options);
  24. params.successStatuses = [200];
  25. params.xmlResponse = true;
  26. const result = await this.request(params);
  27. return {
  28. res: result.res,
  29. stat: result.data
  30. };
  31. }