Source code for qcportal.external_files.models

from __future__ import annotations

from datetime import datetime
from enum import Enum
from typing import Dict, Any, Optional

try:
    from pydantic.v1 import BaseModel, Extra, validator, PrivateAttr, Field
except ImportError:
    from pydantic import BaseModel, Extra, validator, PrivateAttr, Field


[docs] class ExternalFileStatusEnum(str, Enum): """ The state of an external file """ available = "available" processing = "processing"
[docs] class ExternalFileTypeEnum(str, Enum): """ The state of an external file """ dataset_attachment = "dataset_attachment"
[docs] class ExternalFile(BaseModel): id: int file_type: ExternalFileTypeEnum created_on: datetime status: ExternalFileStatusEnum file_name: str description: Optional[str] provenance: Dict[str, Any] sha256sum: str file_size: int