das-cli 1.2.28__tar.gz → 1.2.29__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 (38) hide show
  1. {das_cli-1.2.28/das_cli.egg-info → das_cli-1.2.29}/PKG-INFO +1 -1
  2. {das_cli-1.2.28 → das_cli-1.2.29}/das/managers/entries_manager.py +21 -0
  3. {das_cli-1.2.28 → das_cli-1.2.29}/das/services/entries.py +25 -0
  4. {das_cli-1.2.28 → das_cli-1.2.29/das_cli.egg-info}/PKG-INFO +1 -1
  5. {das_cli-1.2.28 → das_cli-1.2.29}/pyproject.toml +1 -1
  6. {das_cli-1.2.28 → das_cli-1.2.29}/LICENSE +0 -0
  7. {das_cli-1.2.28 → das_cli-1.2.29}/MANIFEST.in +0 -0
  8. {das_cli-1.2.28 → das_cli-1.2.29}/README.md +0 -0
  9. {das_cli-1.2.28 → das_cli-1.2.29}/das/__init__.py +0 -0
  10. {das_cli-1.2.28 → das_cli-1.2.29}/das/ai/plugins/dasai.py +0 -0
  11. {das_cli-1.2.28 → das_cli-1.2.29}/das/ai/plugins/entries/entries_plugin.py +0 -0
  12. {das_cli-1.2.28 → das_cli-1.2.29}/das/app.py +0 -0
  13. {das_cli-1.2.28 → das_cli-1.2.29}/das/authentication/auth.py +0 -0
  14. {das_cli-1.2.28 → das_cli-1.2.29}/das/authentication/secure_input.py +0 -0
  15. {das_cli-1.2.28 → das_cli-1.2.29}/das/cli.py +0 -0
  16. {das_cli-1.2.28 → das_cli-1.2.29}/das/common/api.py +0 -0
  17. {das_cli-1.2.28 → das_cli-1.2.29}/das/common/config.py +0 -0
  18. {das_cli-1.2.28 → das_cli-1.2.29}/das/common/entry_fields_constants.py +0 -0
  19. {das_cli-1.2.28 → das_cli-1.2.29}/das/common/enums.py +0 -0
  20. {das_cli-1.2.28 → das_cli-1.2.29}/das/common/file_utils.py +0 -0
  21. {das_cli-1.2.28 → das_cli-1.2.29}/das/managers/__init__.py +0 -0
  22. {das_cli-1.2.28 → das_cli-1.2.29}/das/managers/digital_objects_manager.py +0 -0
  23. {das_cli-1.2.28 → das_cli-1.2.29}/das/managers/download_manager.py +0 -0
  24. {das_cli-1.2.28 → das_cli-1.2.29}/das/managers/search_manager.py +0 -0
  25. {das_cli-1.2.28 → das_cli-1.2.29}/das/services/attributes.py +0 -0
  26. {das_cli-1.2.28 → das_cli-1.2.29}/das/services/cache.py +0 -0
  27. {das_cli-1.2.28 → das_cli-1.2.29}/das/services/digital_objects.py +0 -0
  28. {das_cli-1.2.28 → das_cli-1.2.29}/das/services/downloads.py +0 -0
  29. {das_cli-1.2.28 → das_cli-1.2.29}/das/services/entry_fields.py +0 -0
  30. {das_cli-1.2.28 → das_cli-1.2.29}/das/services/hangfire.py +0 -0
  31. {das_cli-1.2.28 → das_cli-1.2.29}/das/services/search.py +0 -0
  32. {das_cli-1.2.28 → das_cli-1.2.29}/das/services/users.py +0 -0
  33. {das_cli-1.2.28 → das_cli-1.2.29}/das_cli.egg-info/SOURCES.txt +0 -0
  34. {das_cli-1.2.28 → das_cli-1.2.29}/das_cli.egg-info/dependency_links.txt +0 -0
  35. {das_cli-1.2.28 → das_cli-1.2.29}/das_cli.egg-info/entry_points.txt +0 -0
  36. {das_cli-1.2.28 → das_cli-1.2.29}/das_cli.egg-info/requires.txt +0 -0
  37. {das_cli-1.2.28 → das_cli-1.2.29}/das_cli.egg-info/top_level.txt +0 -0
  38. {das_cli-1.2.28 → das_cli-1.2.29}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: das-cli
3
- Version: 1.2.28
3
+ Version: 1.2.29
4
4
  Summary: DAS api client.
5
5
  Author: Royal Netherlands Institute for Sea Research
6
6
  License-Expression: MIT
@@ -595,6 +595,27 @@ class EntryManager:
595
595
 
596
596
  return self.entry_service.chown(new_user_id=user.get('id'), entry_list_ids=entry_list_ids)
597
597
 
598
+
599
+ def get_direct_relations(self, attribute_id: int, entry_id: str, query_string: str="", sorting: str = "", max_result_count: int = 100, skip_count: int = 0):
600
+ """
601
+ Get the direct relations for an entry.
602
+ """
603
+ if not attribute_id:
604
+ raise ValueError("Attribute ID is required")
605
+ if not entry_id:
606
+ raise ValueError("Entry ID is required")
607
+ if not query_string:
608
+ raise ValueError("Query string is required")
609
+
610
+ if not sorting:
611
+ sorting = ""
612
+ if not max_result_count:
613
+ max_result_count = 100
614
+ if not skip_count:
615
+ skip_count = 0
616
+
617
+ return self.entry_service.get_direct_relations(attribute_id=attribute_id, entry_id=entry_id, query_string=query_string, sorting=sorting, max_result_count=max_result_count, skip_count=skip_count)
618
+
598
619
  if __name__ == "__main__":
599
620
  manager = EntryManager()
600
621
  entry = manager.get(id="8d2841c9-e307-4971-bd2b-70da0d7a7534")
@@ -219,3 +219,28 @@ class EntriesService():
219
219
  else:
220
220
  self._raise_error(response)
221
221
 
222
+ def get_direct_relations(self, attribute_id: int, entry_id: str, query_string: str="", sorting: str = "", max_result_count: int = 100, skip_count: int = 0):
223
+ """
224
+ Get the direct relations for an entry.
225
+ """
226
+
227
+ token = load_token()
228
+
229
+ if (token is None or token == ""):
230
+ raise ValueError("Authorization token is required")
231
+
232
+ headers = {
233
+ "Authorization": f"Bearer {token}"
234
+ }
235
+
236
+ url = f"{self.base_url}/GetDirectRelations?AttributeId={attribute_id}&EntryId={entry_id}&QueryString={query_string}&Sorting={sorting}&MaxResultCount={max_result_count}&SkipCount={skip_count}"
237
+
238
+ response = get_data(url, headers=headers)
239
+
240
+ if response.get('success') == True:
241
+ return response.get('result')
242
+ else:
243
+ self._raise_error(response)
244
+
245
+
246
+
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: das-cli
3
- Version: 1.2.28
3
+ Version: 1.2.29
4
4
  Summary: DAS api client.
5
5
  Author: Royal Netherlands Institute for Sea Research
6
6
  License-Expression: MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "das-cli"
7
- version = "1.2.28"
7
+ version = "1.2.29"
8
8
  authors = [
9
9
  { name="Royal Netherlands Institute for Sea Research" },
10
10
  ]
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes