Browse Source

Add FileImportException class

pull/1823/head
Hironsan 2 years ago
parent
commit
96e1cade44
2 changed files with 13 additions and 5 deletions
  1. 4
      backend/data_import/celery_tasks.py
  2. 14
      backend/data_import/pipeline/exceptions.py

4
backend/data_import/celery_tasks.py

@ -10,7 +10,7 @@ from django_drf_filepond.models import TemporaryUpload
from .datasets import load_dataset
from .pipeline.catalog import AudioFile, ImageFile
from .pipeline.exceptions import FileTypeException, MaximumFileSizeException
from .pipeline.exceptions import FileTypeException, MaximumFileSizeException, FileImportException
from .pipeline.readers import FileName
from projects.models import Project
@ -30,7 +30,7 @@ def check_file_type(filename, file_format: str, filepath: str):
def check_uploaded_files(upload_ids: List[str], file_format: str):
errors = []
errors: List[FileImportException] = []
cleaned_ids = []
temporary_uploads = TemporaryUpload.objects.filter(upload_id__in=upload_ids)
for tu in temporary_uploads:

14
backend/data_import/pipeline/exceptions.py

@ -1,4 +1,12 @@
class FileParseException(Exception):
from typing import Dict, Any
class FileImportException(Exception):
def dict(self) -> Dict[str, Any]:
raise NotImplementedError()
class FileParseException(FileImportException):
def __init__(self, filename: str, line_num: int, message: str):
self.filename = filename
self.line_num = line_num
@ -11,7 +19,7 @@ class FileParseException(Exception):
return {"filename": self.filename, "line": self.line_num, "message": self.message}
class MaximumFileSizeException(Exception):
class MaximumFileSizeException(FileImportException):
def __init__(self, filename: str, max_size: int):
self.filename = filename
self.max_size = max_size
@ -23,7 +31,7 @@ class MaximumFileSizeException(Exception):
return {"filename": self.filename, "line": -1, "message": str(self)}
class FileTypeException(Exception):
class FileTypeException(FileImportException):
def __init__(self, filename: str, filetype: str, allowed_types=None):
self.filename = filename
self.filetype = filetype

Loading…
Cancel
Save