31 lines
689 B
Python
31 lines
689 B
Python
import abc
|
|
|
|
import six
|
|
|
|
|
|
@six.add_metaclass(abc.ABCMeta)
|
|
class BaseHandler(object):
|
|
"""Abstract Base Class for an internet media type handler"""
|
|
|
|
@abc.abstractmethod
|
|
def serialize(self, obj):
|
|
"""Serialize the media object on a :any:`falcon.Response`
|
|
|
|
Args:
|
|
obj (object): A serializable object.
|
|
|
|
Returns:
|
|
bytes: The resulting serialized bytes from the input object.
|
|
"""
|
|
|
|
@abc.abstractmethod
|
|
def deserialize(self, raw):
|
|
"""Deserialize the :any:`falcon.Request` body.
|
|
|
|
Args:
|
|
raw (bytes): Input bytes to deserialize
|
|
|
|
Returns:
|
|
object: A deserialized object.
|
|
"""
|