deseasion.backend.models.project_data module
- class deseasion.backend.models.project_data.DataGenerator(processing_model=None, **kwargs)
Bases:
DynamicData
- active_model_id
- created_at
- data
- data_id
- data_type
- description
- id
- input_data
- last_update
- modified_at
- name
- output_data
- property processing_model
- project
- project_id
- query: t.ClassVar[Query]
A SQLAlchemy query for a model. Equivalent to
db.session.query(Model)
. Can be customized per-model by overridingquery_class
.Warning
The query interface is considered legacy in SQLAlchemy. Prefer using
session.execute(select())
instead.
- class deseasion.backend.models.project_data.DataGeo(data=None, data_id=None, **kwargs)
Bases:
ProjectData
- add_input(project_data)
Add input (always fail).
- Parameters:
project_data –
- Raises:
TypeError – data doesn’t accept inputs
- create()
Persist the object in the database, with a creation, modification and last updat edate
- created_at
- data
- data_id
- data_type
- description
- id
- input_data
- is_outdated()
Checks if input data are more recent than this object
- last_update
- modified_at
- name
- output_data
- project
- project_id
- query: t.ClassVar[Query]
A SQLAlchemy query for a model. Equivalent to
db.session.query(Model)
. Can be customized per-model by overridingquery_class
.Warning
The query interface is considered legacy in SQLAlchemy. Prefer using
session.execute(select())
instead.
- class deseasion.backend.models.project_data.DataStream(stream=None, stream_id=None, **kwargs)
Bases:
DynamicData
- add_input(project_data)
Add input (always fail).
- Parameters:
project_data –
- Raises:
TypeError – data doesn’t accept inputs
- classes
- created_at
- data
- data_id
- data_type
- description
- id
- input_data
- last_update
- modified_at
- name
- output_data
- project
- project_id
- query: t.ClassVar[Query]
A SQLAlchemy query for a model. Equivalent to
db.session.query(Model)
. Can be customized per-model by overridingquery_class
.Warning
The query interface is considered legacy in SQLAlchemy. Prefer using
session.execute(select())
instead.
- resolution
- start
- step
- stop
- stream
- stream_id
- class deseasion.backend.models.project_data.DataType(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
Bases:
Enum
- data_stream = 4
- generator = 2
- geo_data = 1
- global_data = 3
- class deseasion.backend.models.project_data.DynamicData(name=None, project=None, description='', input_data=[])
Bases:
ProjectData
- created_at
- data
- data_id
- data_type
- description
- id
- input_data
- last_update
- modified_at
- name
- output_data
- project
- project_id
- query: t.ClassVar[Query]
A SQLAlchemy query for a model. Equivalent to
db.session.query(Model)
. Can be customized per-model by overridingquery_class
.Warning
The query interface is considered legacy in SQLAlchemy. Prefer using
session.execute(select())
instead.
- class deseasion.backend.models.project_data.ProjectData(name=None, project=None, description='', input_data=[])
Bases:
TimestampMixin
,Model
- add_input(project_data)
Add input data.
- Parameters:
project_data –
- Raises:
ValueError – if project_data is from a different project
- created_at
- data
- data_id
- data_type
- description
- explain(feature: Feature) dict
Explain feature values wrt the project data.
- Parameters:
feature –
- Raises:
ValueError – if feature does not belong to this project data
- Returns:
explanation as a dict
- get_attributes_list()
Returns the list of attributes of the features for this data.
- Returns:
a dictionary with the following keys: “id”, “name”, “type”, “statistics”
- get_used_attributes() list[DataAttribute]
Get used attributes of project data if the user is authorized to access it.
This list contains all attributes used at least once in a processing model of the downstream project data.
- Returns:
Used attributes.
- get_used_input_attributes() list[DataAttribute]
Get used input attributes of project data if the user is authorized to access it.
This list contains al inputl attributes used at least once in a processing model of the project data.
- Returns:
Used input attributes.
- id
- input_data
- is_outdated()
Checks if input data are more recent than this object
- last_update
- modified_at
- name
- output_data
- project
- project_id
- query: t.ClassVar[Query]
A SQLAlchemy query for a model. Equivalent to
db.session.query(Model)
. Can be customized per-model by overridingquery_class
.Warning
The query interface is considered legacy in SQLAlchemy. Prefer using
session.execute(select())
instead.
- update_full()
Update project data.
This makes sure that
ProjectData.last_update
field is equal toProjectData.modified_at
after update and database commit. SoProjectData.is_outdated()
method works as intended.- Returns:
- class deseasion.backend.models.project_data.ProjectGlobalData(data=None, data_id=None, **kwargs)
Bases:
ProjectData
- add_input(project_data)
Add input (always fail).
- Parameters:
project_data –
- Raises:
TypeError – data doesn’t accept inputs
- create()
Persist the object in the database, with a creation, modification and last updat edate
- created_at
- data
- data_id
- data_type
- description
- id
- input_data
- is_outdated()
Checks if input data are more recent than this object
- last_update
- modified_at
- name
- output_data
- project
- project_id
- query: t.ClassVar[Query]
A SQLAlchemy query for a model. Equivalent to
db.session.query(Model)
. Can be customized per-model by overridingquery_class
.Warning
The query interface is considered legacy in SQLAlchemy. Prefer using
session.execute(select())
instead.
- deseasion.backend.models.project_data.generator_name_set(target, value, oldvalue, initiator)
Event to modify the generated geo-data name when the project data name is modified