das-cli 1.2.34__tar.gz → 1.3.0__tar.gz

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.
Files changed (49) hide show
  1. {das_cli-1.2.34/das_cli.egg-info → das_cli-1.3.0}/PKG-INFO +44 -1
  2. {das_cli-1.2.34 → das_cli-1.3.0}/README.md +1180 -1137
  3. {das_cli-1.2.34 → das_cli-1.3.0}/das/cli.py +1532 -1489
  4. {das_cli-1.2.34 → das_cli-1.3.0}/das/managers/digital_objects_manager.py +37 -0
  5. {das_cli-1.2.34 → das_cli-1.3.0}/das/services/digital_objects.py +58 -1
  6. {das_cli-1.2.34 → das_cli-1.3.0}/das/services/downloads.py +67 -67
  7. {das_cli-1.2.34 → das_cli-1.3.0/das_cli.egg-info}/PKG-INFO +44 -1
  8. {das_cli-1.2.34 → das_cli-1.3.0}/das_cli.egg-info/SOURCES.txt +1 -10
  9. {das_cli-1.2.34 → das_cli-1.3.0}/pyproject.toml +1 -1
  10. das_cli-1.2.34/tests/__init__.py +0 -3
  11. das_cli-1.2.34/tests/attributes_test.py +0 -77
  12. das_cli-1.2.34/tests/download_manager_test.py +0 -34
  13. das_cli-1.2.34/tests/entries_manager_test.py +0 -444
  14. das_cli-1.2.34/tests/entries_service_test.py +0 -270
  15. das_cli-1.2.34/tests/entries_test.py +0 -43
  16. das_cli-1.2.34/tests/file_utils_test.py +0 -115
  17. das_cli-1.2.34/tests/run_tests.py +0 -18
  18. das_cli-1.2.34/tests/search_manager_test.py +0 -65
  19. {das_cli-1.2.34 → das_cli-1.3.0}/LICENSE +0 -0
  20. {das_cli-1.2.34 → das_cli-1.3.0}/MANIFEST.in +0 -0
  21. {das_cli-1.2.34 → das_cli-1.3.0}/das/__init__.py +0 -0
  22. {das_cli-1.2.34 → das_cli-1.3.0}/das/ai/plugins/dasai.py +0 -0
  23. {das_cli-1.2.34 → das_cli-1.3.0}/das/ai/plugins/entries/entries_plugin.py +0 -0
  24. {das_cli-1.2.34 → das_cli-1.3.0}/das/app.py +0 -0
  25. {das_cli-1.2.34 → das_cli-1.3.0}/das/authentication/auth.py +0 -0
  26. {das_cli-1.2.34 → das_cli-1.3.0}/das/authentication/oauth.py +0 -0
  27. {das_cli-1.2.34 → das_cli-1.3.0}/das/authentication/secure_input.py +0 -0
  28. {das_cli-1.2.34 → das_cli-1.3.0}/das/common/api.py +0 -0
  29. {das_cli-1.2.34 → das_cli-1.3.0}/das/common/config.py +0 -0
  30. {das_cli-1.2.34 → das_cli-1.3.0}/das/common/entry_fields_constants.py +0 -0
  31. {das_cli-1.2.34 → das_cli-1.3.0}/das/common/enums.py +0 -0
  32. {das_cli-1.2.34 → das_cli-1.3.0}/das/common/file_utils.py +0 -0
  33. {das_cli-1.2.34 → das_cli-1.3.0}/das/managers/__init__.py +0 -0
  34. {das_cli-1.2.34 → das_cli-1.3.0}/das/managers/download_manager.py +0 -0
  35. {das_cli-1.2.34 → das_cli-1.3.0}/das/managers/entries_manager.py +0 -0
  36. {das_cli-1.2.34 → das_cli-1.3.0}/das/managers/search_manager.py +0 -0
  37. {das_cli-1.2.34 → das_cli-1.3.0}/das/services/attributes.py +0 -0
  38. {das_cli-1.2.34 → das_cli-1.3.0}/das/services/cache.py +0 -0
  39. {das_cli-1.2.34 → das_cli-1.3.0}/das/services/entries.py +0 -0
  40. {das_cli-1.2.34 → das_cli-1.3.0}/das/services/entry_fields.py +0 -0
  41. {das_cli-1.2.34 → das_cli-1.3.0}/das/services/hangfire.py +0 -0
  42. {das_cli-1.2.34 → das_cli-1.3.0}/das/services/search.py +0 -0
  43. {das_cli-1.2.34 → das_cli-1.3.0}/das/services/service_base.py +0 -0
  44. {das_cli-1.2.34 → das_cli-1.3.0}/das/services/users.py +0 -0
  45. {das_cli-1.2.34 → das_cli-1.3.0}/das_cli.egg-info/dependency_links.txt +0 -0
  46. {das_cli-1.2.34 → das_cli-1.3.0}/das_cli.egg-info/entry_points.txt +0 -0
  47. {das_cli-1.2.34 → das_cli-1.3.0}/das_cli.egg-info/requires.txt +0 -0
  48. {das_cli-1.2.34 → das_cli-1.3.0}/das_cli.egg-info/top_level.txt +0 -0
  49. {das_cli-1.2.34 → das_cli-1.3.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: das-cli
3
- Version: 1.2.34
3
+ Version: 1.3.0
4
4
  Summary: DAS api client.
5
5
  Author: Royal Netherlands Institute for Sea Research
6
6
  License-Expression: MIT
@@ -185,6 +185,16 @@ das entry update --attribute <AttributeName> [--code CODE] <file_path>
185
185
  das entry upload-digital-object --entry-code ENT001 --type Dataset --description "CTD raw" c:\data\ctd.zip
186
186
  ```
187
187
 
188
+ #### Direct download a digital object
189
+
190
+ ```bash
191
+ # Download by entry and digital object codes
192
+ das entry direct-download-digital-object --entry-code ENT001 --digital-object-code DO001 --out C:\Downloads\
193
+
194
+ # Download by IDs
195
+ das entry direct-download-digital-object --entry-id e1987f3e-7db7-11f0-a7e8-0edcca226f3d --attribute-id 126 --digital-object-id cf335b17-80e3-4151-aa80-40b69fe0567e --out C:\Downloads\file.bin
196
+ ```
197
+
188
198
  #### Link or unlink digital objects
189
199
 
190
200
  ```bash
@@ -925,6 +935,39 @@ digital_object_id = digital_objects_manager.upload_digital_object(
925
935
  )
926
936
  ```
927
937
 
938
+ #### Direct Download Digital Object
939
+
940
+ **CLI:**
941
+ ```bash
942
+ # Download by entry and digital object codes
943
+ das entry direct-download-digital-object --entry-code ENT001 --digital-object-code DO001 --out C:\Downloads\
944
+
945
+ # Download by IDs
946
+ das entry direct-download-digital-object --entry-id e1987f3e-7db7-11f0-a7e8-0edcca226f3d --attribute-id 126 --digital-object-id cf335b17-80e3-4151-aa80-40b69fe0567e --out C:\Downloads\file.bin
947
+ ```
948
+
949
+ **Manager Layer:**
950
+ ```python
951
+ from das.managers.digital_objects_manager import DigitalObjectsManager
952
+
953
+ digital_objects_manager = DigitalObjectsManager()
954
+
955
+ # Download by codes
956
+ saved_path = digital_objects_manager.direct_download_digital_object(
957
+ entry_code="ENT001",
958
+ digital_object_code="DO001",
959
+ output_path="C:\\Downloads\\"
960
+ )
961
+
962
+ # Download by IDs
963
+ saved_path = digital_objects_manager.direct_download_digital_object(
964
+ entry_id="e1987f3e-7db7-11f0-a7e8-0edcca226f3d",
965
+ attribute_id=126,
966
+ digital_object_id="cf335b17-80e3-4151-aa80-40b69fe0567e",
967
+ output_path="C:\\Downloads\\file.bin"
968
+ )
969
+ ```
970
+
928
971
  #### Link/Unlink Digital Objects
929
972
 
930
973
  **CLI:**