diff env/lib/python3.9/site-packages/prov/serializers/provn.py @ 0:4f3585e2f14b draft default tip

"planemo upload commit 60cee0fc7c0cda8592644e1aad72851dec82c959"
author shellac
date Mon, 22 Mar 2021 18:12:50 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/env/lib/python3.9/site-packages/prov/serializers/provn.py	Mon Mar 22 18:12:50 2021 +0000
@@ -0,0 +1,31 @@
+from __future__ import (absolute_import, division, print_function,
+                        unicode_literals)
+
+__author__ = 'Trung Dong Huynh'
+__email__ = 'trungdong@donggiang.com'
+
+import io
+import logging
+logger = logging.getLogger(__name__)
+
+from prov.serializers import Serializer
+
+
+class ProvNSerializer(Serializer):
+    """PROV-N serializer for ProvDocument
+
+    """
+    def serialize(self, stream, **kwargs):
+        """
+        Serializes a :class:`prov.model.ProvDocument` instance to a
+        `PROV-N <http://www.w3.org/TR/prov-n/>`_.
+
+        :param stream: Where to save the output.
+        """
+        provn_content = self.document.get_provn()
+        if isinstance(stream, io.BytesIO):
+            provn_content = provn_content.encode('utf-8')
+        stream.write(provn_content)
+
+    def deserialize(self, stream, **kwargs):
+        raise NotImplementedError