tol-sdk 1.7.2__py3-none-any.whl → 1.7.3__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- tol/sql/standard/factory.py +54 -1
- {tol_sdk-1.7.2.dist-info → tol_sdk-1.7.3.dist-info}/METADATA +1 -1
- {tol_sdk-1.7.2.dist-info → tol_sdk-1.7.3.dist-info}/RECORD +7 -9
- tol/sql/summary/__init__.py +0 -6
- tol/sql/summary/factory.py +0 -91
- {tol_sdk-1.7.2.dist-info → tol_sdk-1.7.3.dist-info}/WHEEL +0 -0
- {tol_sdk-1.7.2.dist-info → tol_sdk-1.7.3.dist-info}/entry_points.txt +0 -0
- {tol_sdk-1.7.2.dist-info → tol_sdk-1.7.3.dist-info}/licenses/LICENSE +0 -0
- {tol_sdk-1.7.2.dist-info → tol_sdk-1.7.3.dist-info}/top_level.txt +0 -0
tol/sql/standard/factory.py
CHANGED
|
@@ -37,6 +37,7 @@ class StandardModels(IterableABC[type[Model]]):
|
|
|
37
37
|
data_source_config: type[Model]
|
|
38
38
|
data_source_config_attribute: type[Model]
|
|
39
39
|
data_source_config_relationship: type[Model]
|
|
40
|
+
data_source_config_summary: type[Model]
|
|
40
41
|
component: type[Model]
|
|
41
42
|
component_zone: type[Model]
|
|
42
43
|
zone: type[Model]
|
|
@@ -61,6 +62,7 @@ class StandardModels(IterableABC[type[Model]]):
|
|
|
61
62
|
self.view_board,
|
|
62
63
|
self.view,
|
|
63
64
|
self.board,
|
|
65
|
+
self.data_source_config_summary,
|
|
64
66
|
self.data_source_config_relationship,
|
|
65
67
|
self.data_source_config_attribute,
|
|
66
68
|
self.loader_instance,
|
|
@@ -458,7 +460,6 @@ def create_standard_models(
|
|
|
458
460
|
|
|
459
461
|
name: Mapped[str] = mapped_column(nullable=False)
|
|
460
462
|
object_type: Mapped[str] = mapped_column(nullable=False)
|
|
461
|
-
name: Mapped[str] = mapped_column(nullable=False)
|
|
462
463
|
display_name: Mapped[str] = mapped_column(nullable=True)
|
|
463
464
|
description: Mapped[str] = mapped_column(nullable=True)
|
|
464
465
|
available_on_relationships: Mapped[bool] = mapped_column(nullable=False, default=True)
|
|
@@ -484,6 +485,53 @@ def create_standard_models(
|
|
|
484
485
|
foreign_keys=[data_source_config_id]
|
|
485
486
|
)
|
|
486
487
|
|
|
488
|
+
class DataSourceConfigSummary(base_model_class):
|
|
489
|
+
__tablename__ = 'data_source_config_summary'
|
|
490
|
+
|
|
491
|
+
id: Mapped[int] = mapped_column(primary_key=True, autoincrement=True) # noqa A003
|
|
492
|
+
|
|
493
|
+
source_object_type: Mapped[str] = mapped_column(nullable=False)
|
|
494
|
+
destination_object_type: Mapped[str] = mapped_column(nullable=True)
|
|
495
|
+
|
|
496
|
+
object_filters: Mapped[dict] = mapped_column(
|
|
497
|
+
JSONB,
|
|
498
|
+
nullable=False,
|
|
499
|
+
default={}
|
|
500
|
+
)
|
|
501
|
+
|
|
502
|
+
group_by: Mapped[dict] = mapped_column(
|
|
503
|
+
JSONB,
|
|
504
|
+
nullable=False,
|
|
505
|
+
default=[]
|
|
506
|
+
)
|
|
507
|
+
|
|
508
|
+
stats_fields: Mapped[dict] = mapped_column(
|
|
509
|
+
JSONB,
|
|
510
|
+
nullable=False,
|
|
511
|
+
default=[]
|
|
512
|
+
)
|
|
513
|
+
|
|
514
|
+
stats: Mapped[dict] = mapped_column(
|
|
515
|
+
JSONB,
|
|
516
|
+
nullable=False,
|
|
517
|
+
default=[]
|
|
518
|
+
)
|
|
519
|
+
|
|
520
|
+
prefix: Mapped[str] = mapped_column(
|
|
521
|
+
nullable=False,
|
|
522
|
+
default=''
|
|
523
|
+
)
|
|
524
|
+
|
|
525
|
+
data_source_config_id: Mapped[int] = mapped_column(
|
|
526
|
+
ForeignKey('data_source_config.id'),
|
|
527
|
+
nullable=False
|
|
528
|
+
)
|
|
529
|
+
|
|
530
|
+
data_source_config: Mapped['DataSourceConfig'] = relationship( # noqa F821
|
|
531
|
+
back_populates='data_source_config_summaries',
|
|
532
|
+
foreign_keys=[data_source_config_id]
|
|
533
|
+
)
|
|
534
|
+
|
|
487
535
|
class DataSourceConfig(base_model_class):
|
|
488
536
|
__tablename__ = 'data_source_config'
|
|
489
537
|
|
|
@@ -504,6 +552,10 @@ def create_standard_models(
|
|
|
504
552
|
back_populates='data_source_config',
|
|
505
553
|
foreign_keys=[DataSourceConfigRelationship.data_source_config_id]
|
|
506
554
|
)
|
|
555
|
+
data_source_config_summaries: Mapped[list['DataSourceConfigSummary']] = relationship(
|
|
556
|
+
back_populates='data_source_config',
|
|
557
|
+
foreign_keys=[DataSourceConfigSummary.data_source_config_id]
|
|
558
|
+
)
|
|
507
559
|
|
|
508
560
|
class _UserMixin:
|
|
509
561
|
|
|
@@ -538,6 +590,7 @@ def create_standard_models(
|
|
|
538
590
|
data_source_config=DataSourceConfig,
|
|
539
591
|
data_source_config_attribute=DataSourceConfigAttribute,
|
|
540
592
|
data_source_config_relationship=DataSourceConfigRelationship,
|
|
593
|
+
data_source_config_summary=DataSourceConfigSummary,
|
|
541
594
|
component=Component,
|
|
542
595
|
component_zone=ComponentZone,
|
|
543
596
|
zone=Zone,
|
|
@@ -305,9 +305,7 @@ tol/sql/auth/models.py,sha256=4xNWBvyGiI3mwRyDY5ty48Bv9178ApQXPR-YjIdCsvk,11879
|
|
|
305
305
|
tol/sql/pipeline_step/__init__.py,sha256=O7u4RrLfuoB0mwLcPxFoUrdTBZGB_4bE1vWCn5ho-qw,147
|
|
306
306
|
tol/sql/pipeline_step/factory.py,sha256=SFJ-BE1I_qmEsqrJ10evdGCdoUHjdiJq6iqrzIlX2jU,5132
|
|
307
307
|
tol/sql/standard/__init__.py,sha256=2NbLXFk0rneGZosZ2ESIRcT0WMK0KncmPWaLPqvX-i4,142
|
|
308
|
-
tol/sql/standard/factory.py,sha256=
|
|
309
|
-
tol/sql/summary/__init__.py,sha256=5fNYAeOJ-XOdG9cgu7cUgDBwzG89cuc6RGGw_ZOjURk,143
|
|
310
|
-
tol/sql/summary/factory.py,sha256=F01du9HYl4kmUBHGxgpibSi651GAI5wsRUdk7LBZzzI,2009
|
|
308
|
+
tol/sql/standard/factory.py,sha256=yY8iWmZRMvUqphwnzBeOIQtKGgxsU6AcA7YTz53UYvc,20010
|
|
311
309
|
tol/status/__init__.py,sha256=sBo-j1wCmberl89uryVCBEJk8ohbfsYhaNpIp_brR9Y,146
|
|
312
310
|
tol/status/status_datasource.py,sha256=UYU2vB561XRWY8y2dY96qHiWXy15xaHxsbGCVCIUnqs,1916
|
|
313
311
|
tol/sts/__init__.py,sha256=1nb_lBWDwxJo3hutxSid2rqMIpfZ4GHxDS6cfj-FKv4,187
|
|
@@ -325,9 +323,9 @@ tol/validators/allowed_values.py,sha256=yJ5SdiUlV7PSKORtsBJ9hYSqwvlx_esbFmFL_Gxh
|
|
|
325
323
|
tol/validators/regex.py,sha256=dKodGH0sv6DbqWeV6QXE6-GYjnG4rMO0rg8IEIaQG60,2364
|
|
326
324
|
tol/validators/regex_by_value.py,sha256=o99NJlWPgQ0GrpVnep8-cHfjWnc9F2rChmXHIxjrMrk,2543
|
|
327
325
|
tol/validators/unique_values.py,sha256=stI-1i006WEbERcjSMapRggJkEF-RFDzw2uUtXBAE_M,1885
|
|
328
|
-
tol_sdk-1.7.
|
|
329
|
-
tol_sdk-1.7.
|
|
330
|
-
tol_sdk-1.7.
|
|
331
|
-
tol_sdk-1.7.
|
|
332
|
-
tol_sdk-1.7.
|
|
333
|
-
tol_sdk-1.7.
|
|
326
|
+
tol_sdk-1.7.3.dist-info/licenses/LICENSE,sha256=RF9Jacy-9BpUAQQ20INhTgtaNBkmdTolYCHtrrkM2-8,1077
|
|
327
|
+
tol_sdk-1.7.3.dist-info/METADATA,sha256=2_ZEKrI2dmJ-OUhYB16-GpGr4Mb6ybceAvXL4GcPU0E,3079
|
|
328
|
+
tol_sdk-1.7.3.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
329
|
+
tol_sdk-1.7.3.dist-info/entry_points.txt,sha256=jH3HfTwxjzog7E3lq8CKpUWGIRY9FSXbyL6CpUmv6D0,36
|
|
330
|
+
tol_sdk-1.7.3.dist-info/top_level.txt,sha256=PwKMQLphyZNvagBoriVbl8uwHXQl8IC1niawVG0iXMM,10
|
|
331
|
+
tol_sdk-1.7.3.dist-info/RECORD,,
|
tol/sql/summary/__init__.py
DELETED
tol/sql/summary/factory.py
DELETED
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
# SPDX-FileCopyrightText: 2025 Genome Research Ltd.
|
|
2
|
-
#
|
|
3
|
-
# SPDX-License-Identifier: MIT
|
|
4
|
-
|
|
5
|
-
from __future__ import annotations
|
|
6
|
-
|
|
7
|
-
from collections.abc import Iterable as IterableABC
|
|
8
|
-
from dataclasses import dataclass
|
|
9
|
-
from typing import Iterator
|
|
10
|
-
|
|
11
|
-
from sqlalchemy.dialects.postgresql import JSONB
|
|
12
|
-
from sqlalchemy.orm import (
|
|
13
|
-
Mapped,
|
|
14
|
-
mapped_column
|
|
15
|
-
)
|
|
16
|
-
|
|
17
|
-
from ..model import Model
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
@dataclass(frozen=True, kw_only=True)
|
|
21
|
-
class SummaryModels(IterableABC[type[Model]]):
|
|
22
|
-
"""
|
|
23
|
-
Contains the needed models for summarys.
|
|
24
|
-
|
|
25
|
-
"""
|
|
26
|
-
|
|
27
|
-
summary: type[Model]
|
|
28
|
-
|
|
29
|
-
def __iter__(self) -> Iterator[type[Model]]:
|
|
30
|
-
"""
|
|
31
|
-
Returns in order they should be deleted
|
|
32
|
-
"""
|
|
33
|
-
|
|
34
|
-
return iter(
|
|
35
|
-
[
|
|
36
|
-
self.summary
|
|
37
|
-
]
|
|
38
|
-
)
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
def create_summary_models(
|
|
42
|
-
base_model_class: type[Model]
|
|
43
|
-
) -> SummaryModels:
|
|
44
|
-
"""
|
|
45
|
-
Creates all needed models (and joining tables) for
|
|
46
|
-
summaries.
|
|
47
|
-
|
|
48
|
-
Returns a `SummaryModels` instance that functions like an
|
|
49
|
-
`Iterable`.
|
|
50
|
-
"""
|
|
51
|
-
|
|
52
|
-
class Summary(base_model_class):
|
|
53
|
-
__tablename__ = 'summary'
|
|
54
|
-
|
|
55
|
-
id: Mapped[int] = mapped_column(primary_key=True, autoincrement=True) # noqa A003
|
|
56
|
-
|
|
57
|
-
source_object_type: Mapped[str] = mapped_column(nullable=False)
|
|
58
|
-
destination_object_type: Mapped[str] = mapped_column(nullable=True)
|
|
59
|
-
|
|
60
|
-
object_filters: Mapped[dict] = mapped_column(
|
|
61
|
-
JSONB,
|
|
62
|
-
nullable=False,
|
|
63
|
-
default={}
|
|
64
|
-
)
|
|
65
|
-
|
|
66
|
-
group_by: Mapped[dict] = mapped_column(
|
|
67
|
-
JSONB,
|
|
68
|
-
nullable=False,
|
|
69
|
-
default=[]
|
|
70
|
-
)
|
|
71
|
-
|
|
72
|
-
stats_fields: Mapped[dict] = mapped_column(
|
|
73
|
-
JSONB,
|
|
74
|
-
nullable=False,
|
|
75
|
-
default=[]
|
|
76
|
-
)
|
|
77
|
-
|
|
78
|
-
stats: Mapped[dict] = mapped_column(
|
|
79
|
-
JSONB,
|
|
80
|
-
nullable=False,
|
|
81
|
-
default=[]
|
|
82
|
-
)
|
|
83
|
-
|
|
84
|
-
prefix: Mapped[str] = mapped_column(
|
|
85
|
-
nullable=False,
|
|
86
|
-
default=''
|
|
87
|
-
)
|
|
88
|
-
|
|
89
|
-
return SummaryModels(
|
|
90
|
-
summary=Summary,
|
|
91
|
-
)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|