diff --git a/src/plone/restapi/serializer/registry.py b/src/plone/restapi/serializer/registry.py index 95a27f426..481b7316b 100644 --- a/src/plone/restapi/serializer/registry.py +++ b/src/plone/restapi/serializer/registry.py @@ -8,6 +8,7 @@ from zope.publisher.interfaces import IRequest from zope.interface import Interface + class SerializeRegistryMixin: def serialize(self): batch = HypermediaBatch(self.request, list(self.records.keys())) @@ -15,9 +16,7 @@ def serialize(self): "@id": batch.canonical_url, "items_total": batch.items_total, "batching": batch.links if batch.links else {}, - "items": [ - self.make_item(key) for key in batch - ] + "items": [self.make_item(key) for key in batch], } return results @@ -32,6 +31,7 @@ def make_item(self, key): "schema": {"properties": schema.get_schema()}, } + @implementer(ISerializeToJson) @adapter(IRegistry, IRequest, Interface) class SerializeRegistryToJsonWithFilters(SerializeRegistryMixin): @@ -39,6 +39,7 @@ def __init__(self, registry, request, records): self.registry = registry self.request = request self.records = records + def __call__(self): return self.serialize()