From e50c8864ec4ee3545267ef80f42019e0caf59b7a Mon Sep 17 00:00:00 2001 From: Abhinav-grd Date: Fri, 26 Feb 2021 11:28:44 +0530 Subject: [PATCH 1/2] reduce conccurent upload to 4 --- src/services/uploadService.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/services/uploadService.ts b/src/services/uploadService.ts index 23c8889db..edbf1ba64 100644 --- a/src/services/uploadService.ts +++ b/src/services/uploadService.ts @@ -128,7 +128,7 @@ class UploadService { ErrorHandler(e); } const uploadProcesses = []; - for (let i = 0; i < Math.min(5, this.totalFileCount); i++) { + for (let i = 0; i < Math.min(4, this.totalFileCount); i++) { uploadProcesses.push( this.uploader( await new CryptoWorker(), From 18defbb9b8486489f9759c913dc4ae997e34e182 Mon Sep 17 00:00:00 2001 From: Abhinav-grd Date: Fri, 26 Feb 2021 15:08:34 +0530 Subject: [PATCH 2/2] stored literal values to const --- src/services/uploadService.ts | 27 +++++++++++++++++++-------- 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/src/services/uploadService.ts b/src/services/uploadService.ts index edbf1ba64..059578a53 100644 --- a/src/services/uploadService.ts +++ b/src/services/uploadService.ts @@ -12,6 +12,12 @@ const ENDPOINT = getEndpoint(); const THUMBNAIL_HEIGHT = 720; const MAX_ATTEMPTS = 3; const MIN_THUMBNAIL_SIZE = 50000; +const MAX_CONCURRENT_UPLOADS = 4; +const TYPE_IMAGE = 'image'; +const TYPE_VIDEO = 'video'; +const TYPE_JSON = 'json'; +const SOUTH_DIRECTION = 'S'; +const WEST_DIRECTION = 'W'; interface EncryptionResult { file: fileAttribute; @@ -100,12 +106,12 @@ class UploadService { let actualFiles: File[] = []; recievedFiles.forEach((file) => { if ( - file.type.substr(0, 5) === 'image' || - file.type.substr(0, 5) === 'video' + file.type.substr(0, 5) === TYPE_IMAGE || + file.type.substr(0, 5) === TYPE_VIDEO ) { actualFiles.push(file); } - if (file.name.slice(-4) == 'json') { + if (file.name.slice(-4) == TYPE_JSON) { metadataFiles.push(file); } }); @@ -128,7 +134,11 @@ class UploadService { ErrorHandler(e); } const uploadProcesses = []; - for (let i = 0; i < Math.min(4, this.totalFileCount); i++) { + for ( + let i = 0; + i < Math.min(MAX_CONCURRENT_UPLOADS, this.totalFileCount); + i++ + ) { uploadProcesses.push( this.uploader( await new CryptoWorker(), @@ -223,10 +233,10 @@ class UploadService { let fileType: FILE_TYPE; switch (recievedFile.type.split('/')[0]) { - case 'image': + case TYPE_IMAGE: fileType = FILE_TYPE.IMAGE; break; - case 'video': + case TYPE_VIDEO: fileType = FILE_TYPE.VIDEO; break; default: @@ -414,7 +424,7 @@ class UploadService { let canvas = document.createElement('canvas'); let canvas_CTX = canvas.getContext('2d'); let imageURL = null; - if (file.type.match('image')) { + if (file.type.match(TYPE_IMAGE)) { let image = new Image(); imageURL = URL.createObjectURL(file); image.setAttribute('src', imageURL); @@ -452,6 +462,7 @@ class UploadService { thumbnailWidth, THUMBNAIL_HEIGHT ); + video = null; resolve(null); }); video.preload = 'metadata'; @@ -644,7 +655,7 @@ class UploadService { private convertDMSToDD(degrees, minutes, seconds, direction) { var dd = degrees + minutes / 60 + seconds / 3600; - if (direction == 'S' || direction == 'W') { + if (direction == SOUTH_DIRECTION || direction == WEST_DIRECTION) { dd = dd * -1; }