flip_api.domain.interfaces.project

Attributes

_XML_FORBIDDEN_CHARS

Classes

IProjectQuery

IProjectResponse

IApprovedTrust

IProject

IReturnedProject

IModelsInfoResponse

IEditProject

IProjectDetails

IProjectApproval

ICountResponse

IStageProjectRequest

IImagingImportStatus

IImagingStatusResponse

IImagingStatus

IUpdateXnatProfile

IImagingProjectStatusParams

IReimportQuery

IReimportResponse

Functions

_reject_xml_control_chars(→ str)

Module Contents

flip_api.domain.interfaces.project._XML_FORBIDDEN_CHARS = ('<', '>', '&')
flip_api.domain.interfaces.project._reject_xml_control_chars(v: str) str
class flip_api.domain.interfaces.project.IProjectQuery

Bases: pydantic.BaseModel

id: uuid.UUID
name: str
query: str
queried_trust_ids: list[uuid.UUID]
pending_trust_ids: list[uuid.UUID]
cancelled_trust_ids: list[uuid.UUID]
responded_trust_ids: list[uuid.UUID]
errored_trust_ids: list[uuid.UUID]
empty_trust_ids: list[uuid.UUID]
total_cohort: int | None
created: str | None
created_by: str | None
model_config
class flip_api.domain.interfaces.project.IProjectResponse

Bases: pydantic.BaseModel

id: uuid.UUID
name: str
description: str
query: IProjectQuery | None = None
owner_id: uuid.UUID
creation_timestamp: Annotated[datetime.datetime, Field(default_factory=datetime.utcnow)]
status: flip_api.domain.schemas.status.ProjectStatus
query_id: uuid.UUID | None
dicom_to_nifti: bool
model_config
class flip_api.domain.interfaces.project.IApprovedTrust

Bases: pydantic.BaseModel

id: uuid.UUID
name: str
code: str | None = None
approved: bool
approved_at: str | None
model_config
class flip_api.domain.interfaces.project.IProject

Bases: pydantic.BaseModel

id: uuid.UUID
name: str
description: str
owner_id: uuid.UUID
owner_name: str | None
user_count: int
deleted: bool
approved: bool | None = None
creation_timestamp: str
staged_at: str | None
status: flip_api.domain.schemas.status.ProjectStatus
approved_trusts: list[IApprovedTrust] | None
query: IProjectQuery | None
model_config
class flip_api.domain.interfaces.project.IReturnedProject

Bases: IProject

owner_email: pydantic.EmailStr
users: list[flip_api.domain.schemas.users.CognitoUser]
model_config
class flip_api.domain.interfaces.project.IModelsInfoResponse

Bases: pydantic.BaseModel

id: uuid.UUID
name: str
description: str
status: flip_api.domain.schemas.status.ModelStatus
owner_id: uuid.UUID
model_config
class flip_api.domain.interfaces.project.IEditProject

Bases: pydantic.BaseModel

name: str
description: str
users: list[uuid.UUID] | None
replace_null_list(value: list[uuid.UUID] | None) list[uuid.UUID]
_validate_name_xml
class flip_api.domain.interfaces.project.IProjectDetails

Bases: pydantic.BaseModel

name: str
description: str
users: list[uuid.UUID] | None
_validate_name_xml
class flip_api.domain.interfaces.project.IProjectApproval

Bases: pydantic.BaseModel

project_id: uuid.UUID
trust_ids: list[uuid.UUID]
class flip_api.domain.interfaces.project.ICountResponse

Bases: pydantic.BaseModel

count: int
class flip_api.domain.interfaces.project.IStageProjectRequest

Bases: pydantic.BaseModel

trusts: list[uuid.UUID]
class flip_api.domain.interfaces.project.IImagingImportStatus

Bases: pydantic.BaseModel

successful_count: int
failed_count: int
processing_count: int
queued_count: int
queue_failed_count: int
model_config
class flip_api.domain.interfaces.project.IImagingStatusResponse

Bases: pydantic.BaseModel

project_creation_completed: bool
import_status: IImagingImportStatus | None
reimport_count: int | None
model_config
class flip_api.domain.interfaces.project.IImagingStatus

Bases: IImagingStatusResponse

trust_id: uuid.UUID
trust_name: str
model_config
class flip_api.domain.interfaces.project.IUpdateXnatProfile

Bases: pydantic.BaseModel

email: pydantic.EmailStr
enabled: bool
class flip_api.domain.interfaces.project.IImagingProjectStatusParams

Bases: pydantic.BaseModel

project_id: uuid.UUID
query_id: uuid.UUID
model_config
class flip_api.domain.interfaces.project.IReimportQuery

Bases: pydantic.BaseModel

query_id: uuid.UUID
query: str
xnat_project_id: uuid.UUID
last_reimport: Annotated[datetime.datetime | None, Field(default_factory=datetime.utcnow)]
trust_id: uuid.UUID
trust_name: str
model_config
class flip_api.domain.interfaces.project.IReimportResponse

Bases: pydantic.BaseModel

xnat_project_id: uuid.UUID
trust_id: uuid.UUID
trust_name: str
status: int
model_config