diff options
| -rw-r--r-- | python/fatcat_tools/transforms/__init__.py | 2 | ||||
| -rw-r--r-- | python/fatcat_tools/transforms/entities.py | 8 | 
2 files changed, 7 insertions, 3 deletions
diff --git a/python/fatcat_tools/transforms/__init__.py b/python/fatcat_tools/transforms/__init__.py index 863472c0..735d1b29 100644 --- a/python/fatcat_tools/transforms/__init__.py +++ b/python/fatcat_tools/transforms/__init__.py @@ -1,4 +1,4 @@ -from .entities import entity_to_dict, entity_from_json +from .entities import entity_to_dict, entity_from_json, entity_from_dict  from .elasticsearch import release_to_elasticsearch, container_to_elasticsearch, changelog_to_elasticsearch  from .csl import release_to_csl, citeproc_csl diff --git a/python/fatcat_tools/transforms/entities.py b/python/fatcat_tools/transforms/entities.py index 8e5de286..ae666413 100644 --- a/python/fatcat_tools/transforms/entities.py +++ b/python/fatcat_tools/transforms/entities.py @@ -1,5 +1,5 @@ - +import json  import collections  from fatcat_openapi_client import ApiClient @@ -21,7 +21,7 @@ def entity_from_json(json_str, entity_type, api_client=None):      """      Hack to take advantage of the code-generated deserialization code -    See not on `entity_to_dict()` about api_client argument. +    See note on `entity_to_dict()` about api_client argument.      """      if not api_client:          api_client = ApiClient() @@ -29,3 +29,7 @@ def entity_from_json(json_str, entity_type, api_client=None):      thing.data = json_str      return api_client.deserialize(thing, entity_type) +def entity_from_dict(obj, entity_type, api_client=None): +    json_str = json.dumps(obj) +    return entity_from_json(json_str, entity_type, api_client=api_client) +  | 
