diff env/lib/python3.7/site-packages/prov/serializers/provn.py @ 0:26e78fe6e8c4 draft

"planemo upload commit c699937486c35866861690329de38ec1a5d9f783"
author shellac
date Sat, 02 May 2020 07:14:21 -0400
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/env/lib/python3.7/site-packages/prov/serializers/provn.py	Sat May 02 07:14:21 2020 -0400
@@ -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