dcicutils 8.7.0.1b3__tar.gz → 8.7.0.1b4__tar.gz

Sign up to get free protection for your applications and to get access to all the features.
Files changed (70) hide show
  1. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/PKG-INFO +1 -1
  2. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/portal_utils.py +17 -0
  3. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/pyproject.toml +1 -1
  4. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/LICENSE.txt +0 -0
  5. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/README.rst +0 -0
  6. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/__init__.py +0 -0
  7. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/base.py +0 -0
  8. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/beanstalk_utils.py +0 -0
  9. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/bundle_utils.py +0 -0
  10. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/cloudformation_utils.py +0 -0
  11. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/codebuild_utils.py +0 -0
  12. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/command_utils.py +0 -0
  13. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/common.py +0 -0
  14. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/contribution_scripts.py +0 -0
  15. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/contribution_utils.py +0 -0
  16. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/creds_utils.py +0 -0
  17. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/data_readers.py +0 -0
  18. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/data_utils.py +0 -0
  19. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/deployment_utils.py +0 -0
  20. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/diff_utils.py +0 -0
  21. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/docker_utils.py +0 -0
  22. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/ecr_scripts.py +0 -0
  23. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/ecr_utils.py +0 -0
  24. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/ecs_utils.py +0 -0
  25. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/env_base.py +0 -0
  26. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/env_manager.py +0 -0
  27. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/env_scripts.py +0 -0
  28. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/env_utils.py +0 -0
  29. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/env_utils_legacy.py +0 -0
  30. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/es_utils.py +0 -0
  31. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/exceptions.py +0 -0
  32. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/ff_mocks.py +0 -0
  33. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/ff_utils.py +0 -0
  34. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/function_cache_decorator.py +0 -0
  35. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/glacier_utils.py +0 -0
  36. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/jh_utils.py +0 -0
  37. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/kibana/dashboards.json +0 -0
  38. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/kibana/readme.md +0 -0
  39. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/lang_utils.py +0 -0
  40. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/license_policies/c4-infrastructure.jsonc +0 -0
  41. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/license_policies/c4-python-infrastructure.jsonc +0 -0
  42. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/license_policies/park-lab-common-server.jsonc +0 -0
  43. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/license_policies/park-lab-common.jsonc +0 -0
  44. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/license_policies/park-lab-gpl-pipeline.jsonc +0 -0
  45. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/license_policies/park-lab-pipeline.jsonc +0 -0
  46. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/license_utils.py +0 -0
  47. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/log_utils.py +0 -0
  48. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/misc_utils.py +0 -0
  49. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/obfuscation_utils.py +0 -0
  50. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/opensearch_utils.py +0 -0
  51. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/project_utils.py +0 -0
  52. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/qa_checkers.py +0 -0
  53. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/qa_utils.py +0 -0
  54. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/redis_tools.py +0 -0
  55. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/redis_utils.py +0 -0
  56. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/s3_utils.py +0 -0
  57. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/schema_utils.py +0 -0
  58. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/scripts/publish_to_pypi.py +0 -0
  59. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/scripts/run_license_checker.py +0 -0
  60. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/secrets_utils.py +0 -0
  61. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/sheet_utils.py +0 -0
  62. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/snapshot_utils.py +0 -0
  63. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/ssl_certificate_utils.py +0 -0
  64. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/structured_data.py +0 -0
  65. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/task_utils.py +0 -0
  66. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/tmpfile_utils.py +0 -0
  67. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/trace_utils.py +0 -0
  68. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/validation_utils.py +0 -0
  69. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/variant_utils.py +0 -0
  70. {dcicutils-8.7.0.1b3 → dcicutils-8.7.0.1b4}/dcicutils/zip_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dcicutils
3
- Version: 8.7.0.1b3
3
+ Version: 8.7.0.1b4
4
4
  Summary: Utility package for interacting with the 4DN Data Portal and other 4DN resources
5
5
  Home-page: https://github.com/4dn-dcic/utils
6
6
  License: MIT
@@ -257,11 +257,28 @@ class Portal:
257
257
  def schema_name(name: str) -> str:
258
258
  return to_camel_case(name if not name.endswith(".json") else name[:-5]) if isinstance(name, str) else ""
259
259
 
260
+ def is_schema_type(self, value: dict, schema_type: str) -> bool:
261
+ """
262
+ Returns True iff the given object isa type of the given schema type.
263
+ """
264
+ if isinstance(value, dict) and (value_types := value.get("@type")):
265
+ if isinstance(value_types, str):
266
+ return self.is_specified_schema(value_types, schema_type)
267
+ elif isinstance(value_types, list):
268
+ for value_type in value_types:
269
+ if self.is_specified_schema(value_type, schema_type):
270
+ return True
271
+ return False
272
+
260
273
  def is_specified_schema(self, schema_name: str, schema_type: str) -> bool:
261
274
  """
262
275
  Returns True iff the given schema name isa type of the given schema type name,
263
276
  i.e. has an ancestor which is of type that given type.
264
277
  """
278
+ schema_name = self.schema_name(schema_name)
279
+ schema_type = self.schema_name(schema_type)
280
+ if schema_name == schema_type:
281
+ return True
265
282
  if super_type_map := self.get_schemas_super_type_map():
266
283
  if super_type := super_type_map.get(schema_type):
267
284
  return self.schema_name(schema_name) in super_type
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "dcicutils"
3
- version = "8.7.0.1b3" # TODO: To become 8.7.1
3
+ version = "8.7.0.1b4" # TODO: To become 8.7.1
4
4
  description = "Utility package for interacting with the 4DN Data Portal and other 4DN resources"
5
5
  authors = ["4DN-DCIC Team <support@4dnucleome.org>"]
6
6
  license = "MIT"
File without changes
File without changes