cognite-toolkit 0.7.30__py3-none-any.whl → 0.7.51__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.
- cognite_toolkit/_cdf.py +5 -6
- cognite_toolkit/_cdf_tk/apps/__init__.py +2 -0
- cognite_toolkit/_cdf_tk/apps/_core_app.py +7 -1
- cognite_toolkit/_cdf_tk/apps/_download_app.py +2 -2
- cognite_toolkit/_cdf_tk/apps/_dump_app.py +1 -1
- cognite_toolkit/_cdf_tk/apps/_import_app.py +41 -0
- cognite_toolkit/_cdf_tk/apps/_migrate_app.py +183 -8
- cognite_toolkit/_cdf_tk/builders/_function.py +81 -9
- cognite_toolkit/_cdf_tk/builders/_raw.py +1 -1
- cognite_toolkit/_cdf_tk/client/_resource_base.py +187 -0
- cognite_toolkit/_cdf_tk/client/_toolkit_client.py +44 -12
- cognite_toolkit/_cdf_tk/client/api/agents.py +107 -0
- cognite_toolkit/_cdf_tk/client/api/annotations.py +129 -0
- cognite_toolkit/_cdf_tk/client/api/assets.py +130 -0
- cognite_toolkit/_cdf_tk/client/api/containers.py +132 -0
- cognite_toolkit/_cdf_tk/client/api/data_models.py +137 -0
- cognite_toolkit/_cdf_tk/client/api/datasets.py +141 -0
- cognite_toolkit/_cdf_tk/client/api/events.py +129 -0
- cognite_toolkit/_cdf_tk/client/api/extraction_pipelines.py +148 -0
- cognite_toolkit/_cdf_tk/client/api/filemetadata.py +176 -0
- cognite_toolkit/_cdf_tk/client/api/function_schedules.py +115 -0
- cognite_toolkit/_cdf_tk/client/api/functions.py +113 -0
- cognite_toolkit/_cdf_tk/client/api/graphql_data_models.py +167 -0
- cognite_toolkit/_cdf_tk/client/api/groups.py +121 -0
- cognite_toolkit/_cdf_tk/client/api/hosted_extractor_destinations.py +131 -0
- cognite_toolkit/_cdf_tk/client/api/hosted_extractor_jobs.py +122 -0
- cognite_toolkit/_cdf_tk/client/api/hosted_extractor_mappings.py +129 -0
- cognite_toolkit/_cdf_tk/client/api/hosted_extractor_sources.py +136 -0
- cognite_toolkit/_cdf_tk/client/api/hosted_extractors.py +23 -0
- cognite_toolkit/_cdf_tk/client/api/infield.py +40 -35
- cognite_toolkit/_cdf_tk/client/api/instances.py +139 -0
- cognite_toolkit/_cdf_tk/client/api/labels.py +125 -0
- cognite_toolkit/_cdf_tk/client/api/{canvas.py → legacy/canvas.py} +16 -8
- cognite_toolkit/_cdf_tk/client/api/{charts.py → legacy/charts.py} +1 -1
- cognite_toolkit/_cdf_tk/client/api/{extended_data_modeling.py → legacy/extended_data_modeling.py} +1 -1
- cognite_toolkit/_cdf_tk/client/api/{extended_files.py → legacy/extended_files.py} +2 -2
- cognite_toolkit/_cdf_tk/client/api/{extended_functions.py → legacy/extended_functions.py} +9 -9
- cognite_toolkit/_cdf_tk/client/api/{extended_raw.py → legacy/extended_raw.py} +1 -1
- cognite_toolkit/_cdf_tk/client/api/{extended_timeseries.py → legacy/extended_timeseries.py} +5 -2
- cognite_toolkit/_cdf_tk/client/api/legacy/location_filters.py +112 -0
- cognite_toolkit/_cdf_tk/client/api/legacy/robotics/__init__.py +8 -0
- cognite_toolkit/_cdf_tk/client/api/{robotics → legacy/robotics}/capabilities.py +1 -1
- cognite_toolkit/_cdf_tk/client/api/{robotics → legacy/robotics}/data_postprocessing.py +1 -1
- cognite_toolkit/_cdf_tk/client/api/{robotics → legacy/robotics}/frames.py +1 -1
- cognite_toolkit/_cdf_tk/client/api/{robotics → legacy/robotics}/locations.py +1 -1
- cognite_toolkit/_cdf_tk/client/api/{robotics → legacy/robotics}/maps.py +1 -1
- cognite_toolkit/_cdf_tk/client/api/{robotics → legacy/robotics}/robots.py +2 -2
- cognite_toolkit/_cdf_tk/client/api/legacy/search_config.py +53 -0
- cognite_toolkit/_cdf_tk/client/api/location_filters.py +140 -75
- cognite_toolkit/_cdf_tk/client/api/migration.py +2 -3
- cognite_toolkit/_cdf_tk/client/api/project.py +9 -8
- cognite_toolkit/_cdf_tk/client/api/raw.py +204 -0
- cognite_toolkit/_cdf_tk/client/api/relationships.py +133 -0
- cognite_toolkit/_cdf_tk/client/api/robotics.py +19 -0
- cognite_toolkit/_cdf_tk/client/api/robotics_capabilities.py +127 -0
- cognite_toolkit/_cdf_tk/client/api/robotics_data_postprocessing.py +138 -0
- cognite_toolkit/_cdf_tk/client/api/robotics_frames.py +122 -0
- cognite_toolkit/_cdf_tk/client/api/robotics_locations.py +127 -0
- cognite_toolkit/_cdf_tk/client/api/robotics_maps.py +122 -0
- cognite_toolkit/_cdf_tk/client/api/robotics_robots.py +122 -0
- cognite_toolkit/_cdf_tk/client/api/search.py +2 -2
- cognite_toolkit/_cdf_tk/client/api/search_config.py +83 -31
- cognite_toolkit/_cdf_tk/client/api/security_categories.py +94 -0
- cognite_toolkit/_cdf_tk/client/api/sequences.py +133 -0
- cognite_toolkit/_cdf_tk/client/api/simulator_models.py +154 -0
- cognite_toolkit/_cdf_tk/client/api/simulators.py +8 -0
- cognite_toolkit/_cdf_tk/client/api/spaces.py +117 -0
- cognite_toolkit/_cdf_tk/client/api/streams.py +68 -56
- cognite_toolkit/_cdf_tk/client/api/three_d.py +385 -34
- cognite_toolkit/_cdf_tk/client/api/timeseries.py +137 -0
- cognite_toolkit/_cdf_tk/client/api/token.py +1 -1
- cognite_toolkit/_cdf_tk/client/api/transformations.py +146 -0
- cognite_toolkit/_cdf_tk/client/api/views.py +139 -0
- cognite_toolkit/_cdf_tk/client/api/workflow_triggers.py +128 -0
- cognite_toolkit/_cdf_tk/client/api/workflow_versions.py +138 -0
- cognite_toolkit/_cdf_tk/client/api/workflows.py +119 -0
- cognite_toolkit/_cdf_tk/client/cdf_client/__init__.py +10 -0
- cognite_toolkit/_cdf_tk/client/cdf_client/api.py +358 -0
- cognite_toolkit/_cdf_tk/client/cdf_client/responses.py +38 -0
- cognite_toolkit/_cdf_tk/{utils → client}/http_client/__init__.py +30 -0
- cognite_toolkit/_cdf_tk/{utils → client}/http_client/_client.py +26 -16
- cognite_toolkit/_cdf_tk/{utils → client}/http_client/_data_classes.py +18 -2
- cognite_toolkit/_cdf_tk/client/http_client/_data_classes2.py +151 -0
- cognite_toolkit/_cdf_tk/client/http_client/_exception.py +13 -0
- cognite_toolkit/_cdf_tk/client/http_client/_item_classes.py +118 -0
- cognite_toolkit/_cdf_tk/{utils → client}/http_client/_tracker.py +5 -2
- cognite_toolkit/_cdf_tk/client/request_classes/base.py +19 -0
- cognite_toolkit/_cdf_tk/client/request_classes/filters.py +113 -0
- cognite_toolkit/_cdf_tk/client/request_classes/graphql.py +28 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/__init__.py +0 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/agent.py +130 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/annotation.py +79 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/apm_config.py +128 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/asset.py +47 -0
- cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes}/charts_data.py +1 -1
- cognite_toolkit/_cdf_tk/client/resource_classes/cognite_file.py +53 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/data_modeling/__init__.py +168 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/data_modeling/_constraints.py +37 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/data_modeling/_container.py +50 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/data_modeling/_data_model.py +73 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/data_modeling/_data_types.py +116 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/data_modeling/_indexes.py +26 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/data_modeling/_instance.py +154 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/data_modeling/_references.py +86 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/data_modeling/_space.py +26 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/data_modeling/_view.py +143 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/data_modeling/_view_property.py +152 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/dataset.py +35 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/event.py +40 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/extraction_pipeline.py +59 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/filemetadata.py +52 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/function.py +53 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/function_schedule.py +65 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/graphql_data_model.py +40 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/group/__init__.py +187 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/group/_constants.py +2 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/group/acls.py +653 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/group/capability.py +56 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/group/group.py +63 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/group/scopes.py +166 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/hosted_extractor_destination.py +34 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/hosted_extractor_job.py +134 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/hosted_extractor_mapping.py +72 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/hosted_extractor_source/__init__.py +63 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/hosted_extractor_source/_auth.py +63 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/hosted_extractor_source/_base.py +26 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/hosted_extractor_source/_certificate.py +20 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/hosted_extractor_source/_eventhub.py +31 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/hosted_extractor_source/_kafka.py +53 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/hosted_extractor_source/_mqtt.py +36 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/hosted_extractor_source/_rest.py +49 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/identifiers.py +59 -0
- cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes}/infield.py +1 -1
- cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes}/instance_api.py +53 -14
- cognite_toolkit/_cdf_tk/client/resource_classes/label.py +27 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/legacy/__init__.py +0 -0
- cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes/legacy}/canvas.py +48 -15
- cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes/legacy}/charts.py +1 -1
- cognite_toolkit/_cdf_tk/client/resource_classes/location_filter.py +84 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/raw.py +44 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/relationship.py +49 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/resource_view_mapping.py +38 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/robotics/__init__.py +37 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/robotics/_capability.py +53 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/robotics/_common.py +34 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/robotics/_data_post_processing.py +49 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/robotics/_frame.py +46 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/robotics/_location.py +36 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/robotics/_map.py +65 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/robotics/_robot.py +58 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/search_config.py +54 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/securitycategory.py +24 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/sequence.py +45 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/sequence_rows.py +56 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/simulator_model.py +50 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/streamlit_.py +71 -0
- cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes}/streams.py +9 -26
- cognite_toolkit/_cdf_tk/client/resource_classes/three_d.py +135 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/timeseries.py +52 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/transformation.py +140 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/workflow.py +27 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/workflow_trigger.py +63 -0
- cognite_toolkit/_cdf_tk/client/resource_classes/workflow_version.py +155 -0
- cognite_toolkit/_cdf_tk/client/testing.py +54 -17
- cognite_toolkit/_cdf_tk/commands/__init__.py +1 -0
- cognite_toolkit/_cdf_tk/commands/_migrate/command.py +103 -108
- cognite_toolkit/_cdf_tk/commands/_migrate/conversion.py +29 -16
- cognite_toolkit/_cdf_tk/commands/_migrate/creators.py +1 -1
- cognite_toolkit/_cdf_tk/commands/_migrate/data_classes.py +38 -6
- cognite_toolkit/_cdf_tk/commands/_migrate/data_mapper.py +262 -36
- cognite_toolkit/_cdf_tk/commands/_migrate/data_model.py +1 -0
- cognite_toolkit/_cdf_tk/commands/_migrate/default_mappings.py +1 -1
- cognite_toolkit/_cdf_tk/commands/_migrate/issues.py +39 -38
- cognite_toolkit/_cdf_tk/commands/_migrate/migration_io.py +227 -8
- cognite_toolkit/_cdf_tk/commands/_profile.py +1 -1
- cognite_toolkit/_cdf_tk/commands/_purge.py +14 -16
- cognite_toolkit/_cdf_tk/commands/_upload.py +1 -1
- cognite_toolkit/_cdf_tk/commands/build_cmd.py +12 -2
- cognite_toolkit/_cdf_tk/commands/build_v2/__init__.py +0 -0
- cognite_toolkit/_cdf_tk/commands/build_v2/_module_parser.py +138 -0
- cognite_toolkit/_cdf_tk/commands/build_v2/_modules_parser.py +163 -0
- cognite_toolkit/_cdf_tk/commands/build_v2/build_cmd.py +228 -0
- cognite_toolkit/_cdf_tk/commands/build_v2/build_parameters.py +71 -0
- cognite_toolkit/_cdf_tk/commands/build_v2/data_classes/_modules.py +27 -0
- cognite_toolkit/_cdf_tk/commands/build_v2/data_classes/_resource.py +22 -0
- cognite_toolkit/_cdf_tk/commands/dump_resource.py +4 -4
- cognite_toolkit/_cdf_tk/commands/pull.py +97 -2
- cognite_toolkit/_cdf_tk/commands/run.py +1 -1
- cognite_toolkit/_cdf_tk/cruds/__init__.py +16 -6
- cognite_toolkit/_cdf_tk/cruds/_data_cruds.py +9 -5
- cognite_toolkit/_cdf_tk/cruds/_resource_cruds/__init__.py +2 -0
- cognite_toolkit/_cdf_tk/cruds/_resource_cruds/auth.py +6 -2
- cognite_toolkit/_cdf_tk/cruds/_resource_cruds/classic.py +70 -89
- cognite_toolkit/_cdf_tk/cruds/_resource_cruds/configuration.py +1 -1
- cognite_toolkit/_cdf_tk/cruds/_resource_cruds/datamodel.py +1 -1
- cognite_toolkit/_cdf_tk/cruds/_resource_cruds/extraction_pipeline.py +1 -1
- cognite_toolkit/_cdf_tk/cruds/_resource_cruds/fieldops.py +34 -25
- cognite_toolkit/_cdf_tk/cruds/_resource_cruds/file.py +50 -59
- cognite_toolkit/_cdf_tk/cruds/_resource_cruds/function.py +14 -2
- cognite_toolkit/_cdf_tk/cruds/_resource_cruds/industrial_tool.py +1 -1
- cognite_toolkit/_cdf_tk/cruds/_resource_cruds/location.py +4 -3
- cognite_toolkit/_cdf_tk/cruds/_resource_cruds/migration.py +1 -1
- cognite_toolkit/_cdf_tk/cruds/_resource_cruds/raw.py +6 -1
- cognite_toolkit/_cdf_tk/cruds/_resource_cruds/relationship.py +5 -4
- cognite_toolkit/_cdf_tk/cruds/_resource_cruds/robotics.py +1 -1
- cognite_toolkit/_cdf_tk/cruds/_resource_cruds/simulators.py +122 -0
- cognite_toolkit/_cdf_tk/cruds/_resource_cruds/streams.py +15 -31
- cognite_toolkit/_cdf_tk/cruds/_resource_cruds/timeseries.py +42 -47
- cognite_toolkit/_cdf_tk/cruds/_resource_cruds/transformation.py +49 -14
- cognite_toolkit/_cdf_tk/data_classes/__init__.py +3 -0
- cognite_toolkit/_cdf_tk/data_classes/_issues.py +36 -0
- cognite_toolkit/_cdf_tk/data_classes/_module_directories.py +2 -1
- cognite_toolkit/_cdf_tk/data_classes/_module_toml.py +1 -0
- cognite_toolkit/_cdf_tk/data_classes/_tracking_info.py +4 -0
- cognite_toolkit/_cdf_tk/feature_flags.py +8 -0
- cognite_toolkit/_cdf_tk/resource_classes/__init__.py +2 -0
- cognite_toolkit/_cdf_tk/resource_classes/capabilities.py +6 -0
- cognite_toolkit/_cdf_tk/resource_classes/search_config.py +1 -1
- cognite_toolkit/_cdf_tk/resource_classes/simulator_model.py +17 -0
- cognite_toolkit/_cdf_tk/resource_classes/workflow_version.py +173 -5
- cognite_toolkit/_cdf_tk/storageio/_applications.py +53 -15
- cognite_toolkit/_cdf_tk/storageio/_asset_centric.py +117 -107
- cognite_toolkit/_cdf_tk/storageio/_base.py +3 -1
- cognite_toolkit/_cdf_tk/storageio/_datapoints.py +7 -7
- cognite_toolkit/_cdf_tk/storageio/_file_content.py +65 -56
- cognite_toolkit/_cdf_tk/storageio/_instances.py +1 -1
- cognite_toolkit/_cdf_tk/storageio/_raw.py +1 -1
- cognite_toolkit/_cdf_tk/storageio/logger.py +162 -0
- cognite_toolkit/_cdf_tk/storageio/selectors/__init__.py +10 -1
- cognite_toolkit/_cdf_tk/storageio/selectors/_three_d.py +34 -0
- cognite_toolkit/_cdf_tk/tk_warnings/__init__.py +2 -0
- cognite_toolkit/_cdf_tk/tk_warnings/fileread.py +20 -0
- cognite_toolkit/_cdf_tk/utils/__init__.py +11 -1
- cognite_toolkit/_cdf_tk/utils/cdf.py +1 -1
- cognite_toolkit/_cdf_tk/utils/interactive_select.py +53 -4
- cognite_toolkit/_cdf_tk/utils/modules.py +7 -0
- cognite_toolkit/_cdf_tk/utils/pip_validator.py +96 -0
- cognite_toolkit/_cdf_tk/utils/useful_types.py +4 -7
- cognite_toolkit/_cdf_tk/utils/useful_types2.py +14 -0
- cognite_toolkit/_cdf_tk/validation.py +4 -0
- cognite_toolkit/_repo_files/GitHub/.github/workflows/deploy.yaml +1 -1
- cognite_toolkit/_repo_files/GitHub/.github/workflows/dry-run.yaml +1 -1
- cognite_toolkit/_resources/cdf.toml +1 -1
- cognite_toolkit/_version.py +1 -1
- {cognite_toolkit-0.7.30.dist-info → cognite_toolkit-0.7.51.dist-info}/METADATA +13 -3
- cognite_toolkit-0.7.51.dist-info/RECORD +445 -0
- {cognite_toolkit-0.7.30.dist-info → cognite_toolkit-0.7.51.dist-info}/WHEEL +2 -2
- cognite_toolkit/_cdf_tk/client/api/robotics/__init__.py +0 -3
- cognite_toolkit/_cdf_tk/client/data_classes/api_classes.py +0 -17
- cognite_toolkit/_cdf_tk/client/data_classes/base.py +0 -87
- cognite_toolkit/_cdf_tk/client/data_classes/three_d.py +0 -47
- cognite_toolkit/_cdf_tk/prototypes/import_app.py +0 -41
- cognite_toolkit/_cdf_tk/utils/http_client/_data_classes2.py +0 -187
- cognite_toolkit/_cdf_tk/utils/http_client/_exception.py +0 -4
- cognite_toolkit-0.7.30.dist-info/RECORD +0 -316
- /cognite_toolkit/_cdf_tk/client/{data_classes → api/legacy}/__init__.py +0 -0
- /cognite_toolkit/_cdf_tk/client/api/{dml.py → legacy/dml.py} +0 -0
- /cognite_toolkit/_cdf_tk/client/api/{fixed_transformations.py → legacy/fixed_transformations.py} +0 -0
- /cognite_toolkit/_cdf_tk/client/api/{robotics → legacy/robotics}/api.py +0 -0
- /cognite_toolkit/_cdf_tk/client/api/{robotics → legacy/robotics}/utlis.py +0 -0
- /cognite_toolkit/_cdf_tk/{prototypes/commands → client/request_classes}/__init__.py +0 -0
- /cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes}/capabilities.py +0 -0
- /cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes/legacy}/apm_config_v1.py +0 -0
- /cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes/legacy}/extendable_cognite_file.py +0 -0
- /cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes/legacy}/extended_filemetadata.py +0 -0
- /cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes/legacy}/extended_filemetdata.py +0 -0
- /cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes/legacy}/extended_timeseries.py +0 -0
- /cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes/legacy}/functions.py +0 -0
- /cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes/legacy}/graphql_data_models.py +0 -0
- /cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes/legacy}/instances.py +0 -0
- /cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes/legacy}/location_filters.py +0 -0
- /cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes/legacy}/migration.py +0 -0
- /cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes/legacy}/pending_instances_ids.py +0 -0
- /cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes/legacy}/project.py +0 -0
- /cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes/legacy}/raw.py +0 -0
- /cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes/legacy}/robotics.py +0 -0
- /cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes/legacy}/search_config.py +0 -0
- /cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes/legacy}/sequences.py +0 -0
- /cognite_toolkit/_cdf_tk/client/{data_classes → resource_classes/legacy}/streamlit_.py +0 -0
- /cognite_toolkit/_cdf_tk/{prototypes/commands/import_.py → commands/_import_cmd.py} +0 -0
- {cognite_toolkit-0.7.30.dist-info → cognite_toolkit-0.7.51.dist-info}/entry_points.txt +0 -0
|
@@ -3,24 +3,15 @@ from collections import defaultdict
|
|
|
3
3
|
from collections.abc import Iterable, Sequence
|
|
4
4
|
from typing import Any, ClassVar, Generic
|
|
5
5
|
|
|
6
|
-
from cognite.client.data_classes import
|
|
7
|
-
AggregateResultItem,
|
|
8
|
-
Asset,
|
|
9
|
-
AssetList,
|
|
10
|
-
AssetWrite,
|
|
11
|
-
Event,
|
|
12
|
-
EventList,
|
|
13
|
-
EventWrite,
|
|
14
|
-
FileMetadata,
|
|
15
|
-
FileMetadataList,
|
|
16
|
-
Label,
|
|
17
|
-
LabelDefinition,
|
|
18
|
-
TimeSeries,
|
|
19
|
-
TimeSeriesList,
|
|
20
|
-
TimeSeriesWrite,
|
|
21
|
-
)
|
|
6
|
+
from cognite.client.data_classes import Label, LabelDefinition
|
|
22
7
|
|
|
23
8
|
from cognite_toolkit._cdf_tk.client import ToolkitClient
|
|
9
|
+
from cognite_toolkit._cdf_tk.client.request_classes.filters import ClassicFilter
|
|
10
|
+
from cognite_toolkit._cdf_tk.client.resource_classes.asset import AssetAggregateItem, AssetRequest, AssetResponse
|
|
11
|
+
from cognite_toolkit._cdf_tk.client.resource_classes.event import EventRequest, EventResponse
|
|
12
|
+
from cognite_toolkit._cdf_tk.client.resource_classes.filemetadata import FileMetadataResponse
|
|
13
|
+
from cognite_toolkit._cdf_tk.client.resource_classes.identifiers import InternalId
|
|
14
|
+
from cognite_toolkit._cdf_tk.client.resource_classes.timeseries import TimeSeriesRequest, TimeSeriesResponse
|
|
24
15
|
from cognite_toolkit._cdf_tk.cruds import (
|
|
25
16
|
AssetCRUD,
|
|
26
17
|
DataSetsCRUD,
|
|
@@ -42,10 +33,10 @@ from cognite_toolkit._cdf_tk.utils.cdf import metadata_key_counts
|
|
|
42
33
|
from cognite_toolkit._cdf_tk.utils.fileio import FileReader, SchemaColumn
|
|
43
34
|
from cognite_toolkit._cdf_tk.utils.fileio._readers import TableReader
|
|
44
35
|
from cognite_toolkit._cdf_tk.utils.useful_types import (
|
|
45
|
-
AssetCentricResource,
|
|
46
36
|
AssetCentricType,
|
|
47
37
|
JsonVal,
|
|
48
38
|
)
|
|
39
|
+
from cognite_toolkit._cdf_tk.utils.useful_types2 import AssetCentricResource
|
|
49
40
|
|
|
50
41
|
from ._base import (
|
|
51
42
|
ConfigurableStorageIO,
|
|
@@ -99,25 +90,27 @@ class AssetCentricIO(
|
|
|
99
90
|
list(self._downloaded_labels_by_selector[selector]), LabelCRUD.create_loader(self.client)
|
|
100
91
|
)
|
|
101
92
|
|
|
102
|
-
def
|
|
103
|
-
asset_subtree_external_ids: list[str] | None = None
|
|
104
|
-
data_set_external_ids: list[str] | None = None
|
|
93
|
+
def _get_classic_filter(self, selector: AssetCentricSelector) -> ClassicFilter:
|
|
105
94
|
if isinstance(selector, DataSetSelector):
|
|
106
|
-
|
|
95
|
+
return ClassicFilter.from_asset_subtree_and_data_sets(data_set_id=selector.data_set_external_id)
|
|
107
96
|
elif isinstance(selector, AssetSubtreeSelector):
|
|
108
|
-
|
|
97
|
+
return ClassicFilter.from_asset_subtree_and_data_sets(asset_subtree_id=selector.hierarchy)
|
|
109
98
|
else:
|
|
110
99
|
# This selector is for uploads, not for downloading from CDF.
|
|
111
100
|
raise ToolkitNotImplementedError(f"Selector type {type(selector)} not supported for {type(self).__name__}.")
|
|
112
|
-
return asset_subtree_external_ids, data_set_external_ids
|
|
113
101
|
|
|
114
102
|
def _collect_dependencies(
|
|
115
|
-
self,
|
|
103
|
+
self,
|
|
104
|
+
resources: Sequence[AssetResponse]
|
|
105
|
+
| Sequence[FileMetadataResponse]
|
|
106
|
+
| Sequence[TimeSeriesResponse]
|
|
107
|
+
| Sequence[EventResponse],
|
|
108
|
+
selector: AssetCentricSelector,
|
|
116
109
|
) -> None:
|
|
117
110
|
for resource in resources:
|
|
118
111
|
if resource.data_set_id:
|
|
119
112
|
self._downloaded_data_sets_by_selector[selector].add(resource.data_set_id)
|
|
120
|
-
if isinstance(resource,
|
|
113
|
+
if isinstance(resource, AssetResponse | FileMetadataResponse):
|
|
121
114
|
for label in resource.labels or []:
|
|
122
115
|
if isinstance(label, str):
|
|
123
116
|
self._downloaded_labels_by_selector[selector].add(label)
|
|
@@ -149,17 +142,19 @@ class AssetCentricIO(
|
|
|
149
142
|
def create_internal_identifier(cls, internal_id: int, project: str) -> str:
|
|
150
143
|
return f"INTERNAL_ID_project_{project}_{internal_id!s}"
|
|
151
144
|
|
|
152
|
-
def _populate_data_set_id_cache(
|
|
145
|
+
def _populate_data_set_id_cache(
|
|
146
|
+
self, chunk: Sequence[AssetResponse | FileMetadataResponse | TimeSeriesResponse | EventResponse]
|
|
147
|
+
) -> None:
|
|
153
148
|
data_set_ids = {item.data_set_id for item in chunk if item.data_set_id is not None}
|
|
154
149
|
self.client.lookup.data_sets.external_id(list(data_set_ids))
|
|
155
150
|
|
|
156
|
-
def _populate_security_category_cache(self, chunk: Sequence[
|
|
151
|
+
def _populate_security_category_cache(self, chunk: Sequence[FileMetadataResponse | TimeSeriesResponse]) -> None:
|
|
157
152
|
security_category_ids: set[int] = set()
|
|
158
153
|
for item in chunk:
|
|
159
154
|
security_category_ids.update(item.security_categories or [])
|
|
160
155
|
self.client.lookup.security_categories.external_id(list(security_category_ids))
|
|
161
156
|
|
|
162
|
-
def _populate_asset_id_cache(self, chunk: Sequence[
|
|
157
|
+
def _populate_asset_id_cache(self, chunk: Sequence[FileMetadataResponse | EventResponse]) -> None:
|
|
163
158
|
asset_ids: set[int] = set()
|
|
164
159
|
for item in chunk:
|
|
165
160
|
asset_ids.update(item.asset_ids or [])
|
|
@@ -249,7 +244,7 @@ class UploadableAssetCentricIO(
|
|
|
249
244
|
)
|
|
250
245
|
|
|
251
246
|
|
|
252
|
-
class AssetIO(UploadableAssetCentricIO[
|
|
247
|
+
class AssetIO(UploadableAssetCentricIO[AssetResponse, AssetRequest]):
|
|
253
248
|
KIND = "Assets"
|
|
254
249
|
RESOURCE_TYPE = "asset"
|
|
255
250
|
SUPPORTED_DOWNLOAD_FORMATS = frozenset({".parquet", ".csv", ".ndjson"})
|
|
@@ -261,7 +256,7 @@ class AssetIO(UploadableAssetCentricIO[Asset, AssetWrite]):
|
|
|
261
256
|
super().__init__(client)
|
|
262
257
|
self._crud = AssetCRUD.create_loader(self.client)
|
|
263
258
|
|
|
264
|
-
def as_id(self, item:
|
|
259
|
+
def as_id(self, item: AssetResponse) -> str:
|
|
265
260
|
return item.external_id if item.external_id is not None else self._create_identifier(item.id)
|
|
266
261
|
|
|
267
262
|
def _get_aggregator(self) -> AssetCentricAggregator:
|
|
@@ -310,22 +305,25 @@ class AssetIO(UploadableAssetCentricIO[Asset, AssetWrite]):
|
|
|
310
305
|
return asset_schema + metadata_schema
|
|
311
306
|
|
|
312
307
|
def stream_data(self, selector: AssetCentricSelector, limit: int | None = None) -> Iterable[Page]:
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
308
|
+
filter_ = self._get_classic_filter(selector)
|
|
309
|
+
cursor: str | None = None
|
|
310
|
+
total_count = 0
|
|
311
|
+
while True:
|
|
312
|
+
page = self.client.tool.assets.paginate(
|
|
313
|
+
aggregated_properties=True,
|
|
314
|
+
filter=filter_,
|
|
315
|
+
limit=self.CHUNK_SIZE,
|
|
316
|
+
cursor=cursor,
|
|
317
|
+
)
|
|
318
|
+
self._collect_dependencies(page.items, selector)
|
|
319
|
+
yield Page(worker_id="main", items=page.items)
|
|
320
|
+
total_count += len(page.items)
|
|
321
|
+
if page.next_cursor is None or (limit is not None and total_count >= limit):
|
|
322
|
+
break
|
|
323
|
+
cursor = page.next_cursor
|
|
326
324
|
|
|
327
325
|
def data_to_json_chunk(
|
|
328
|
-
self, data_chunk: Sequence[
|
|
326
|
+
self, data_chunk: Sequence[AssetResponse], selector: AssetCentricSelector | None = None
|
|
329
327
|
) -> list[dict[str, JsonVal]]:
|
|
330
328
|
# Ensure data sets are looked up to populate cache.
|
|
331
329
|
# This is to avoid looking up each data set id individually in the .dump_resource call.
|
|
@@ -333,19 +331,18 @@ class AssetIO(UploadableAssetCentricIO[Asset, AssetWrite]):
|
|
|
333
331
|
asset_ids = {
|
|
334
332
|
segment["id"]
|
|
335
333
|
for item in data_chunk
|
|
336
|
-
if isinstance(item.aggregates,
|
|
337
|
-
for segment in item.aggregates.path
|
|
338
|
-
if "id" in segment
|
|
334
|
+
if isinstance(item.aggregates, AssetAggregateItem)
|
|
335
|
+
for segment in item.aggregates.path
|
|
339
336
|
}
|
|
340
337
|
self.client.lookup.assets.external_id(list(asset_ids))
|
|
341
338
|
|
|
342
339
|
return [self._crud.dump_resource(item) for item in data_chunk]
|
|
343
340
|
|
|
344
|
-
def json_to_resource(self, item_json: dict[str, JsonVal]) ->
|
|
341
|
+
def json_to_resource(self, item_json: dict[str, JsonVal]) -> AssetRequest:
|
|
345
342
|
return self._crud.load_resource(item_json)
|
|
346
343
|
|
|
347
|
-
def retrieve(self, ids: Sequence[int]) ->
|
|
348
|
-
return self.client.assets.
|
|
344
|
+
def retrieve(self, ids: Sequence[int]) -> list[AssetResponse]:
|
|
345
|
+
return self.client.tool.assets.retrieve(InternalId.from_ids(ids))
|
|
349
346
|
|
|
350
347
|
@classmethod
|
|
351
348
|
def read_chunks(
|
|
@@ -378,7 +375,7 @@ class AssetIO(UploadableAssetCentricIO[Asset, AssetWrite]):
|
|
|
378
375
|
current_depth += 1
|
|
379
376
|
|
|
380
377
|
|
|
381
|
-
class FileMetadataIO(AssetCentricIO[
|
|
378
|
+
class FileMetadataIO(AssetCentricIO[FileMetadataResponse]):
|
|
382
379
|
KIND = "FileMetadata"
|
|
383
380
|
RESOURCE_TYPE = "file"
|
|
384
381
|
SUPPORTED_DOWNLOAD_FORMATS = frozenset({".parquet", ".csv", ".ndjson"})
|
|
@@ -390,7 +387,7 @@ class FileMetadataIO(AssetCentricIO[FileMetadata]):
|
|
|
390
387
|
super().__init__(client)
|
|
391
388
|
self._crud = FileMetadataCRUD.create_loader(self.client)
|
|
392
389
|
|
|
393
|
-
def as_id(self, item:
|
|
390
|
+
def as_id(self, item: FileMetadataResponse) -> str:
|
|
394
391
|
return item.external_id if item.external_id is not None else self._create_identifier(item.id)
|
|
395
392
|
|
|
396
393
|
def _get_aggregator(self) -> AssetCentricAggregator:
|
|
@@ -433,25 +430,30 @@ class FileMetadataIO(AssetCentricIO[FileMetadata]):
|
|
|
433
430
|
]
|
|
434
431
|
return file_schema + metadata_schema
|
|
435
432
|
|
|
436
|
-
def stream_data(
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
433
|
+
def stream_data(
|
|
434
|
+
self, selector: AssetCentricSelector, limit: int | None = None
|
|
435
|
+
) -> Iterable[Page[FileMetadataResponse]]:
|
|
436
|
+
filter_ = self._get_classic_filter(selector)
|
|
437
|
+
cursor: str | None = None
|
|
438
|
+
total_count = 0
|
|
439
|
+
while True:
|
|
440
|
+
page = self.client.tool.filemetadata.paginate(
|
|
441
|
+
filter=filter_,
|
|
442
|
+
limit=self.CHUNK_SIZE,
|
|
443
|
+
cursor=cursor,
|
|
444
|
+
)
|
|
445
|
+
self._collect_dependencies(page.items, selector)
|
|
446
|
+
yield Page(worker_id="main", items=page.items)
|
|
447
|
+
total_count += len(page.items)
|
|
448
|
+
if page.next_cursor is None or (limit is not None and total_count >= limit):
|
|
449
|
+
break
|
|
450
|
+
cursor = page.next_cursor
|
|
451
|
+
|
|
452
|
+
def retrieve(self, ids: Sequence[int]) -> list[FileMetadataResponse]:
|
|
453
|
+
return self.client.tool.filemetadata.retrieve(InternalId.from_ids(ids))
|
|
452
454
|
|
|
453
455
|
def data_to_json_chunk(
|
|
454
|
-
self, data_chunk: Sequence[
|
|
456
|
+
self, data_chunk: Sequence[FileMetadataResponse], selector: AssetCentricSelector | None = None
|
|
455
457
|
) -> list[dict[str, JsonVal]]:
|
|
456
458
|
# Ensure data sets/assets/security-categories are looked up to populate cache.
|
|
457
459
|
# This is to avoid looking up each data set id individually in the .dump_resource call
|
|
@@ -462,7 +464,7 @@ class FileMetadataIO(AssetCentricIO[FileMetadata]):
|
|
|
462
464
|
return [self._crud.dump_resource(item) for item in data_chunk]
|
|
463
465
|
|
|
464
466
|
|
|
465
|
-
class TimeSeriesIO(UploadableAssetCentricIO[
|
|
467
|
+
class TimeSeriesIO(UploadableAssetCentricIO[TimeSeriesResponse, TimeSeriesRequest]):
|
|
466
468
|
KIND = "TimeSeries"
|
|
467
469
|
SUPPORTED_DOWNLOAD_FORMATS = frozenset({".parquet", ".csv", ".ndjson"})
|
|
468
470
|
SUPPORTED_COMPRESSIONS = frozenset({".gz"})
|
|
@@ -474,31 +476,34 @@ class TimeSeriesIO(UploadableAssetCentricIO[TimeSeries, TimeSeriesWrite]):
|
|
|
474
476
|
super().__init__(client)
|
|
475
477
|
self._crud = TimeSeriesCRUD.create_loader(self.client)
|
|
476
478
|
|
|
477
|
-
def as_id(self, item:
|
|
479
|
+
def as_id(self, item: TimeSeriesResponse) -> str:
|
|
478
480
|
return item.external_id if item.external_id is not None else self._create_identifier(item.id)
|
|
479
481
|
|
|
480
482
|
def _get_aggregator(self) -> AssetCentricAggregator:
|
|
481
483
|
return TimeSeriesAggregator(self.client)
|
|
482
484
|
|
|
483
|
-
def retrieve(self, ids: Sequence[int]) ->
|
|
484
|
-
return self.client.
|
|
485
|
+
def retrieve(self, ids: Sequence[int]) -> list[TimeSeriesResponse]:
|
|
486
|
+
return self.client.tool.timeseries.retrieve(InternalId.from_ids(ids))
|
|
485
487
|
|
|
486
488
|
def stream_data(self, selector: AssetCentricSelector, limit: int | None = None) -> Iterable[Page]:
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
489
|
+
filter_ = self._get_classic_filter(selector)
|
|
490
|
+
cursor: str | None = None
|
|
491
|
+
total_count = 0
|
|
492
|
+
while True:
|
|
493
|
+
page = self.client.tool.timeseries.paginate(
|
|
494
|
+
filter=filter_,
|
|
495
|
+
limit=self.CHUNK_SIZE,
|
|
496
|
+
cursor=cursor,
|
|
497
|
+
)
|
|
498
|
+
self._collect_dependencies(page.items, selector)
|
|
499
|
+
yield Page(worker_id="main", items=page.items)
|
|
500
|
+
total_count += len(page.items)
|
|
501
|
+
if page.next_cursor is None or (limit is not None and total_count >= limit):
|
|
502
|
+
break
|
|
503
|
+
cursor = page.next_cursor
|
|
499
504
|
|
|
500
505
|
def data_to_json_chunk(
|
|
501
|
-
self, data_chunk: Sequence[
|
|
506
|
+
self, data_chunk: Sequence[TimeSeriesResponse], selector: AssetCentricSelector | None = None
|
|
502
507
|
) -> list[dict[str, JsonVal]]:
|
|
503
508
|
# Ensure data sets/assets/security categories are looked up to populate cache.
|
|
504
509
|
self._populate_data_set_id_cache(data_chunk)
|
|
@@ -510,14 +515,14 @@ class TimeSeriesIO(UploadableAssetCentricIO[TimeSeries, TimeSeriesWrite]):
|
|
|
510
515
|
|
|
511
516
|
def json_chunk_to_data(
|
|
512
517
|
self, data_chunk: list[tuple[str, dict[str, JsonVal]]]
|
|
513
|
-
) -> Sequence[UploadItem[
|
|
518
|
+
) -> Sequence[UploadItem[TimeSeriesRequest]]:
|
|
514
519
|
chunks = [item_json for _, item_json in data_chunk]
|
|
515
520
|
self._populate_asset_external_ids_cache(chunks)
|
|
516
521
|
self._populate_data_set_external_id_cache(chunks)
|
|
517
522
|
self._populate_security_category_name_cache(chunks)
|
|
518
523
|
return super().json_chunk_to_data(data_chunk)
|
|
519
524
|
|
|
520
|
-
def json_to_resource(self, item_json: dict[str, JsonVal]) ->
|
|
525
|
+
def json_to_resource(self, item_json: dict[str, JsonVal]) -> TimeSeriesRequest:
|
|
521
526
|
return self._crud.load_resource(item_json)
|
|
522
527
|
|
|
523
528
|
def get_schema(self, selector: AssetCentricSelector) -> list[SchemaColumn]:
|
|
@@ -558,7 +563,7 @@ class TimeSeriesIO(UploadableAssetCentricIO[TimeSeries, TimeSeriesWrite]):
|
|
|
558
563
|
return ts_schema + metadata_schema
|
|
559
564
|
|
|
560
565
|
|
|
561
|
-
class EventIO(UploadableAssetCentricIO[
|
|
566
|
+
class EventIO(UploadableAssetCentricIO[EventResponse, EventRequest]):
|
|
562
567
|
KIND = "Events"
|
|
563
568
|
SUPPORTED_DOWNLOAD_FORMATS = frozenset({".parquet", ".csv", ".ndjson"})
|
|
564
569
|
SUPPORTED_COMPRESSIONS = frozenset({".gz"})
|
|
@@ -570,7 +575,7 @@ class EventIO(UploadableAssetCentricIO[Event, EventWrite]):
|
|
|
570
575
|
super().__init__(client)
|
|
571
576
|
self._crud = EventCRUD.create_loader(self.client)
|
|
572
577
|
|
|
573
|
-
def as_id(self, item:
|
|
578
|
+
def as_id(self, item: EventResponse) -> str:
|
|
574
579
|
return item.external_id if item.external_id is not None else self._create_identifier(item.id)
|
|
575
580
|
|
|
576
581
|
def _get_aggregator(self) -> AssetCentricAggregator:
|
|
@@ -614,21 +619,24 @@ class EventIO(UploadableAssetCentricIO[Event, EventWrite]):
|
|
|
614
619
|
return event_schema + metadata_schema
|
|
615
620
|
|
|
616
621
|
def stream_data(self, selector: AssetCentricSelector, limit: int | None = None) -> Iterable[Page]:
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
622
|
+
filter_ = self._get_classic_filter(selector)
|
|
623
|
+
cursor: str | None = None
|
|
624
|
+
total_count = 0
|
|
625
|
+
while True:
|
|
626
|
+
page = self.client.tool.events.paginate(
|
|
627
|
+
filter=filter_,
|
|
628
|
+
limit=self.CHUNK_SIZE,
|
|
629
|
+
cursor=cursor,
|
|
630
|
+
)
|
|
631
|
+
self._collect_dependencies(page.items, selector)
|
|
632
|
+
yield Page(worker_id="main", items=page.items)
|
|
633
|
+
total_count += len(page.items)
|
|
634
|
+
if page.next_cursor is None or (limit is not None and total_count >= limit):
|
|
635
|
+
break
|
|
636
|
+
cursor = page.next_cursor
|
|
629
637
|
|
|
630
638
|
def data_to_json_chunk(
|
|
631
|
-
self, data_chunk: Sequence[
|
|
639
|
+
self, data_chunk: Sequence[EventResponse], selector: AssetCentricSelector | None = None
|
|
632
640
|
) -> list[dict[str, JsonVal]]:
|
|
633
641
|
# Ensure data sets/assets are looked up to populate cache.
|
|
634
642
|
self._populate_data_set_id_cache(data_chunk)
|
|
@@ -636,17 +644,19 @@ class EventIO(UploadableAssetCentricIO[Event, EventWrite]):
|
|
|
636
644
|
|
|
637
645
|
return [self._crud.dump_resource(item) for item in data_chunk]
|
|
638
646
|
|
|
639
|
-
def json_chunk_to_data(
|
|
647
|
+
def json_chunk_to_data(
|
|
648
|
+
self, data_chunk: list[tuple[str, dict[str, JsonVal]]]
|
|
649
|
+
) -> Sequence[UploadItem[EventRequest]]:
|
|
640
650
|
chunks = [item_json for _, item_json in data_chunk]
|
|
641
651
|
self._populate_asset_external_ids_cache(chunks)
|
|
642
652
|
self._populate_data_set_external_id_cache(chunks)
|
|
643
653
|
return super().json_chunk_to_data(data_chunk)
|
|
644
654
|
|
|
645
|
-
def json_to_resource(self, item_json: dict[str, JsonVal]) ->
|
|
655
|
+
def json_to_resource(self, item_json: dict[str, JsonVal]) -> EventRequest:
|
|
646
656
|
return self._crud.load_resource(item_json)
|
|
647
657
|
|
|
648
|
-
def retrieve(self, ids: Sequence[int]) ->
|
|
649
|
-
return self.client.events.
|
|
658
|
+
def retrieve(self, ids: Sequence[int]) -> list[EventResponse]:
|
|
659
|
+
return self.client.tool.events.retrieve(InternalId.from_ids(ids))
|
|
650
660
|
|
|
651
661
|
|
|
652
662
|
class HierarchyIO(ConfigurableStorageIO[AssetCentricSelector, AssetCentricResource]):
|
|
@@ -4,13 +4,14 @@ from dataclasses import dataclass
|
|
|
4
4
|
from typing import ClassVar, Generic, Literal, TypeVar
|
|
5
5
|
|
|
6
6
|
from cognite_toolkit._cdf_tk.client import ToolkitClient
|
|
7
|
+
from cognite_toolkit._cdf_tk.client.http_client import HTTPClient, HTTPMessage, ItemsRequest
|
|
7
8
|
from cognite_toolkit._cdf_tk.exceptions import ToolkitNotImplementedError
|
|
8
9
|
from cognite_toolkit._cdf_tk.protocols import T_ResourceRequest, T_ResourceResponse
|
|
9
10
|
from cognite_toolkit._cdf_tk.utils.collection import chunker
|
|
10
11
|
from cognite_toolkit._cdf_tk.utils.fileio import MultiFileReader, SchemaColumn
|
|
11
|
-
from cognite_toolkit._cdf_tk.utils.http_client import HTTPClient, HTTPMessage, ItemsRequest
|
|
12
12
|
from cognite_toolkit._cdf_tk.utils.useful_types import JsonVal
|
|
13
13
|
|
|
14
|
+
from .logger import DataLogger, NoOpLogger
|
|
14
15
|
from .selectors import DataSelector
|
|
15
16
|
|
|
16
17
|
|
|
@@ -76,6 +77,7 @@ class StorageIO(ABC, Generic[T_Selector, T_ResourceResponse]):
|
|
|
76
77
|
|
|
77
78
|
def __init__(self, client: ToolkitClient) -> None:
|
|
78
79
|
self.client = client
|
|
80
|
+
self.logger: DataLogger = NoOpLogger()
|
|
79
81
|
|
|
80
82
|
@abstractmethod
|
|
81
83
|
def as_id(self, item: T_ResourceResponse) -> str:
|
|
@@ -15,6 +15,13 @@ from cognite.client.data_classes.filters import Exists
|
|
|
15
15
|
from cognite.client.data_classes.time_series import TimeSeriesProperty
|
|
16
16
|
|
|
17
17
|
from cognite_toolkit._cdf_tk.client import ToolkitClient
|
|
18
|
+
from cognite_toolkit._cdf_tk.client.http_client import (
|
|
19
|
+
DataBodyRequest,
|
|
20
|
+
HTTPClient,
|
|
21
|
+
HTTPMessage,
|
|
22
|
+
SimpleBodyRequest,
|
|
23
|
+
SuccessResponse,
|
|
24
|
+
)
|
|
18
25
|
from cognite_toolkit._cdf_tk.exceptions import ToolkitNotImplementedError
|
|
19
26
|
from cognite_toolkit._cdf_tk.tk_warnings import HighSeverityWarning
|
|
20
27
|
from cognite_toolkit._cdf_tk.utils import humanize_collection
|
|
@@ -26,13 +33,6 @@ from cognite_toolkit._cdf_tk.utils.dtype_conversion import (
|
|
|
26
33
|
)
|
|
27
34
|
from cognite_toolkit._cdf_tk.utils.fileio import SchemaColumn
|
|
28
35
|
from cognite_toolkit._cdf_tk.utils.fileio._readers import MultiFileReader
|
|
29
|
-
from cognite_toolkit._cdf_tk.utils.http_client import (
|
|
30
|
-
DataBodyRequest,
|
|
31
|
-
HTTPClient,
|
|
32
|
-
HTTPMessage,
|
|
33
|
-
SimpleBodyRequest,
|
|
34
|
-
SuccessResponse,
|
|
35
|
-
)
|
|
36
36
|
from cognite_toolkit._cdf_tk.utils.useful_types import JsonVal
|
|
37
37
|
|
|
38
38
|
from ._base import Page, TableStorageIO, TableUploadableStorageIO, UploadItem
|