Skip to content
Snippets Groups Projects
Commit 4964628e authored by Leah Tacke genannt Unterberg's avatar Leah Tacke genannt Unterberg
Browse files

hotfixes

parent 2327ebdc
No related branches found
No related tags found
No related merge requests found
......@@ -132,7 +132,7 @@ class SupersetVisualizationBundle(SupersetAssetBundle):
class SupersetMitMDatasetBundle(SupersetAssetBundle):
mitm_dataset: SupersetMitMDatasetDef
datasource_bundle: SupersetDatasourceBundle
visualization_bundle: SupersetVisualizationBundle = pydantic.Field(default_factory=SupersetVisualizationBundle)
visualization_bundle: SupersetVisualizationBundle
@property
def identifiers(self) -> MitMDatasetIdentifierBundle:
......
......@@ -4,7 +4,7 @@ from mitm_tooling.extraction.sql.data_models import DBMetaInfo
from mitm_tooling.extraction.sql.data_models.db_meta import DBMetaInfoBase
from mitm_tooling.extraction.sql.db import connect_and_reflect
from .asset_bundles import SupersetDatasourceBundle, \
SupersetMitMDatasetBundle, DatasourceIdentifierBundle, MitMDatasetIdentifierBundle
SupersetMitMDatasetBundle, DatasourceIdentifierBundle, MitMDatasetIdentifierBundle, SupersetVisualizationBundle
from .common import DBConnectionInfo, MitMDatasetInfo
from .common import _mk_sqlite_engine, SQLiteFileOrEngine
from .factories.database import mk_database
......@@ -57,7 +57,9 @@ def db_meta_into_mitm_dataset_bundle(db_meta: DBMetaInfoBase,
header=dataset_info.header,
database_uuid=datasource_bundle.database_uuid,
table_uuids=datasource_bundle.dataset_uuids)
return SupersetMitMDatasetBundle(mitm_dataset=mitm_dataset, datasource_bundle=datasource_bundle)
viz_bundle = SupersetVisualizationBundle(named_charts=identifiers.ch_id_map, viz_collections=identifiers.viz_id_map)
return SupersetMitMDatasetBundle(mitm_dataset=mitm_dataset, datasource_bundle=datasource_bundle, visualization_bundle=viz_bundle)
def db_into_superset_datasource_bundle(arg: SQLiteFileOrEngine,
......@@ -88,4 +90,5 @@ def db_into_mitm_dataset_bundle(arg: SQLiteFileOrEngine,
header=dataset_info.header,
database_uuid=datasource_bundle.database_uuid,
table_uuids=datasource_bundle.dataset_uuids)
return SupersetMitMDatasetBundle(mitm_dataset=mitm_dataset, datasource_bundle=datasource_bundle)
viz_bundle = SupersetVisualizationBundle(named_charts=identifiers.ch_id_map, viz_collections=identifiers.viz_id_map)
return SupersetMitMDatasetBundle(mitm_dataset=mitm_dataset, datasource_bundle=datasource_bundle, visualization_bundle=viz_bundle)
......@@ -16,12 +16,12 @@ def mk_superset_datasource_bundle(header: Header,
def mk_superset_visualization_bundle(header: Header,
mitm_dataset_identifiers: MitMDatasetIdentifierBundle,
identifiers: MitMDatasetIdentifierBundle,
visualization_types: Iterable[
VisualizationType],
just_placeholders: bool = False) -> SupersetVisualizationBundle:
return SupersetVisualizationBundle.combine(*(
mk_visualization(vzt, header, mitm_dataset_identifiers, just_placeholders=just_placeholders) for vzt
mk_visualization(vzt, header, identifiers, just_placeholders=just_placeholders) for vzt
in set(visualization_types)
))
......
......@@ -52,22 +52,24 @@ class MitMVisualizationsCreator(ABC):
mitm_dataset_identifiers.ch_id_map,
dashboard_identifier=find_dash_id(mitm_dataset_identifiers,
self.viz_collection_name,
name),
creator.viz_name),
viz_collection=self.viz_collection_name) for
name, creator in creators.items()}
def mk_placeholder_bundle(self,
mitm_dataset_identifiers: MitMDatasetIdentifierBundle) -> SupersetVisualizationBundle:
from .placeholders import EmptyDashboard
creators: dict[str, DashboardCreator] = {name: constr(self.header, mitm_dataset_identifiers.mitm_dataset) for
name, constr in self.dashboard_creator_constructors.items()}
return SupersetVisualizationBundle.combine(*(EmptyDashboard().mk_bundle(mitm_dataset_identifiers.ds_id_map,
mitm_dataset_identifiers.ch_id_map,
dashboard_identifier=find_dash_id(
mitm_dataset_identifiers,
self.viz_collection_name,
name),
creator.viz_name),
viz_collection=self.viz_collection_name)
for name in
self.dashboard_creator_constructors))
for name, creator in
creators.items()))
def mk_bundle(self,
mitm_dataset_identifiers: MitMDatasetIdentifierBundle) -> SupersetVisualizationBundle:
......
......@@ -23,20 +23,20 @@ def get_mitm_visualization_creator(mitm: MITM, visualization_type: Visualization
def mk_visualization(visualization_type: VisualizationType,
header: Header,
mitm_dataset_identifiers: MitMDatasetIdentifierBundle,
identifiers: MitMDatasetIdentifierBundle,
just_placeholders: bool = False) -> SupersetVisualizationBundle | None:
if (creator_cls := get_mitm_visualization_creator(header.mitm, visualization_type)) is not None:
creator = creator_cls(header)
if just_placeholders:
return creator.mk_placeholder_bundle(mitm_dataset_identifiers)
return creator.mk_placeholder_bundle(identifiers)
else:
return creator.mk_bundle(mitm_dataset_identifiers)
return creator.mk_bundle(identifiers)
return None
def mk_visualizations(visualization_types: Iterable[VisualizationType],
header: Header,
mitm_dataset_identifiers: MitMDatasetIdentifierBundle,
identifiers: MitMDatasetIdentifierBundle,
just_placeholders: bool = False) -> dict[VisualizationType, SupersetVisualizationBundle]:
return {vt: viz for vt in set(visualization_types) if (
viz := mk_visualization(vt, header, mitm_dataset_identifiers, just_placeholders=just_placeholders) is not None)}
(viz := mk_visualization(vt, header, identifiers, just_placeholders=just_placeholders)) is not None)}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment