diff options
author | Frederick Muriuki Muriithi | 2023-07-12 14:32:23 +0300 |
---|---|---|
committer | Frederick Muriuki Muriithi | 2023-07-12 14:32:23 +0300 |
commit | 477c3f34f8af919592c722cc1a71b2602cb7ac82 (patch) | |
tree | 8bee0ae7b8a30b311a7ba31e1b3a465dba673810 /wqflask/utility | |
parent | f8263ccb64daa5cbeeb0b1d7da3605f825e8acb6 (diff) | |
download | genenetwork2-477c3f34f8af919592c722cc1a71b2602cb7ac82.tar.gz |
Use new session to get user (author) information
* wqflask/utility/json/__init__.py: Custom JSON for serialising UUIDs
into a JSON representantion
* wqflask/utility/json/encoders.py: Custom JSON for serialising UUIDs
into a JSON representation
* wqflask/wqflask/metadata_edits.py: Use new sessions for author
information
Diffstat (limited to 'wqflask/utility')
-rw-r--r-- | wqflask/utility/json/__init__.py | 3 | ||||
-rw-r--r-- | wqflask/utility/json/encoders.py | 17 |
2 files changed, 20 insertions, 0 deletions
diff --git a/wqflask/utility/json/__init__.py b/wqflask/utility/json/__init__.py new file mode 100644 index 00000000..b1141a34 --- /dev/null +++ b/wqflask/utility/json/__init__.py @@ -0,0 +1,3 @@ +"""Local JSON utilities.""" + +from .encoders import CustomJSONEncoder diff --git a/wqflask/utility/json/encoders.py b/wqflask/utility/json/encoders.py new file mode 100644 index 00000000..7c5839ac --- /dev/null +++ b/wqflask/utility/json/encoders.py @@ -0,0 +1,17 @@ +"""Custom JSON encoders""" +from uuid import UUID +from json import JSONEncoder + +# Do not use this `__ENCODERS__` variable outside of this module. +__ENCODERS__ = { + UUID: lambda obj: str(obj) +} + +class CustomJSONEncoder(JSONEncoder): + """Custom JSONEncoder class.""" + def default(self, obj): + """Serialise `obj` to a JSON representation.""" + obj_type = type(obj) + if obj_type in __ENCODERS__: + return __ENCODERS__[obj_type](obj) + return JSONEncoder.default(self, obj) |