flip_api.domain.interfaces.project ================================== .. py:module:: flip_api.domain.interfaces.project Attributes ---------- .. autoapisummary:: flip_api.domain.interfaces.project._XML_FORBIDDEN_CHARS Classes ------- .. autoapisummary:: flip_api.domain.interfaces.project.IProjectQuery flip_api.domain.interfaces.project.IProjectResponse flip_api.domain.interfaces.project.IProject flip_api.domain.interfaces.project.IApprovedTrust flip_api.domain.interfaces.project.IReturnedProject flip_api.domain.interfaces.project.IModelsInfoResponse flip_api.domain.interfaces.project.IEditProject flip_api.domain.interfaces.project.IProjectDetails flip_api.domain.interfaces.project.IProjectApproval flip_api.domain.interfaces.project.ICountResponse flip_api.domain.interfaces.project.IStageProjectRequest flip_api.domain.interfaces.project.IImagingImportStatus flip_api.domain.interfaces.project.IImagingStatusResponse flip_api.domain.interfaces.project.IImagingStatus flip_api.domain.interfaces.project.IUpdateXnatProfile flip_api.domain.interfaces.project.IImagingProjectStatusParams flip_api.domain.interfaces.project.IReimportQuery flip_api.domain.interfaces.project.IReimportResponse Functions --------- .. autoapisummary:: flip_api.domain.interfaces.project._reject_xml_control_chars Module Contents --------------- .. py:data:: _XML_FORBIDDEN_CHARS :value: ('<', '>', '&') .. py:function:: _reject_xml_control_chars(v: str) -> str .. py:class:: IProjectQuery Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: id :type: uuid.UUID .. py:attribute:: name :type: str .. py:attribute:: query :type: str .. py:attribute:: trusts_queried :type: int | None .. py:attribute:: total_cohort :type: int | None .. py:attribute:: model_config .. py:class:: IProjectResponse Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: id :type: uuid.UUID .. py:attribute:: name :type: str .. py:attribute:: description :type: str .. py:attribute:: query :type: IProjectQuery | None :value: None .. py:attribute:: owner_id :type: uuid.UUID .. py:attribute:: creation_timestamp :type: Annotated[datetime.datetime, Field(default_factory=datetime.utcnow)] .. py:attribute:: status :type: flip_api.domain.schemas.status.ProjectStatus .. py:attribute:: query_id :type: uuid.UUID | None .. py:attribute:: dicom_to_nifti :type: bool .. py:attribute:: model_config .. py:class:: IProject Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: id :type: uuid.UUID .. py:attribute:: name :type: str .. py:attribute:: description :type: str .. py:attribute:: owner_id :type: uuid.UUID .. py:attribute:: deleted :type: bool .. py:attribute:: approved :type: bool | None :value: None .. py:attribute:: creation_timestamp :type: str .. py:attribute:: status :type: flip_api.domain.schemas.status.ProjectStatus .. py:attribute:: model_config .. py:class:: IApprovedTrust Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: id :type: uuid.UUID .. py:attribute:: name :type: str .. py:attribute:: approved :type: bool .. py:class:: IReturnedProject Bases: :py:obj:`IProject` .. py:attribute:: owner_email :type: pydantic.EmailStr .. py:attribute:: approved_trusts :type: list[IApprovedTrust] | None .. py:attribute:: query :type: IProjectQuery | None .. py:attribute:: users :type: list[flip_api.domain.schemas.users.CognitoUser] .. py:attribute:: model_config .. py:class:: IModelsInfoResponse Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: id :type: uuid.UUID .. py:attribute:: name :type: str .. py:attribute:: description :type: str .. py:attribute:: status :type: flip_api.domain.schemas.status.ModelStatus .. py:attribute:: owner_id :type: uuid.UUID .. py:attribute:: model_config .. py:class:: IEditProject Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: name :type: str .. py:attribute:: description :type: str .. py:attribute:: users :type: list[uuid.UUID] | None .. py:method:: replace_null_list(value) .. py:attribute:: _validate_name_xml .. py:class:: IProjectDetails Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: name :type: str .. py:attribute:: description :type: str .. py:attribute:: users :type: list[uuid.UUID] | None .. py:attribute:: _validate_name_xml .. py:class:: IProjectApproval Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: project_id :type: uuid.UUID .. py:attribute:: trust_ids :type: list[uuid.UUID] .. py:class:: ICountResponse Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: count :type: int .. py:class:: IStageProjectRequest Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: trusts :type: list[uuid.UUID] .. py:class:: IImagingImportStatus Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: successful_count :type: int .. py:attribute:: failed_count :type: int .. py:attribute:: processing_count :type: int .. py:attribute:: queued_count :type: int .. py:attribute:: queue_failed_count :type: int .. py:attribute:: model_config .. py:class:: IImagingStatusResponse Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: project_creation_completed :type: bool .. py:attribute:: import_status :type: IImagingImportStatus | None .. py:attribute:: reimport_count :type: int | None .. py:attribute:: model_config .. py:class:: IImagingStatus Bases: :py:obj:`IImagingStatusResponse` .. py:attribute:: trust_id :type: uuid.UUID .. py:attribute:: trust_name :type: str .. py:attribute:: model_config .. py:class:: IUpdateXnatProfile Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: email :type: pydantic.EmailStr .. py:attribute:: enabled :type: bool .. py:class:: IImagingProjectStatusParams Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: project_id :type: uuid.UUID .. py:attribute:: query_id :type: uuid.UUID .. py:attribute:: model_config .. py:class:: IReimportQuery Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: query_id :type: uuid.UUID .. py:attribute:: query :type: str .. py:attribute:: xnat_project_id :type: uuid.UUID .. py:attribute:: last_reimport :type: Annotated[datetime.datetime | None, Field(default_factory=datetime.utcnow)] .. py:attribute:: trust_id :type: uuid.UUID .. py:attribute:: trust_name :type: str .. py:attribute:: model_config .. py:class:: IReimportResponse Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: xnat_project_id :type: uuid.UUID .. py:attribute:: trust_id :type: uuid.UUID .. py:attribute:: trust_name :type: str .. py:attribute:: status :type: int .. py:attribute:: model_config