Skip to content

Commit 60bc343

Browse files
committed
schemas: add SimplifiedSchemaSerializer
Signed-off-by: Anna Trzcinska <[email protected]>
1 parent e6089aa commit 60bc343

File tree

1 file changed

+12
-2
lines changed

1 file changed

+12
-2
lines changed

cap/modules/schemas/serializers.py

+12-2
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,10 @@
2525
import copy
2626

2727
from flask import url_for
28-
from invenio_jsonschemas.proxies import current_jsonschemas
29-
from marshmallow import Schema, ValidationError, fields, pre_load, validate
3028

3129
from cap.utils import url_to_api_url
30+
from invenio_jsonschemas.proxies import current_jsonschemas
31+
from marshmallow import Schema, ValidationError, fields, pre_load, validate
3232

3333
from .validators import JSONSchemaValidator
3434

@@ -102,6 +102,15 @@ def filter_out_fields_that_cannot_be_updated(self, data, **kwargs):
102102
return data
103103

104104

105+
class SimplifiedSchemaSerializer(Schema):
106+
"""Simplified serializer for schema."""
107+
108+
name = fields.Str(dump_only=True, required=True)
109+
version = fields.Str(dump_only=True, required=True,
110+
validate=validate.Regexp(regex=r"(\d+).(\d+).(\d+)"))
111+
fullname = fields.Str(dump_only=True)
112+
113+
105114
class ResolvedSchemaSerializer(SchemaSerializer):
106115
"""Schema serializer with resolved jsonschemas."""
107116

@@ -125,5 +134,6 @@ def get_resolved_record_schema(self, obj):
125134

126135

127136
schema_serializer = SchemaSerializer()
137+
simplified_schema_serializer = SimplifiedSchemaSerializer()
128138
update_schema_serializer = UpdateSchemaSerializer()
129139
resolved_schemas_serializer = ResolvedSchemaSerializer()

0 commit comments

Comments
 (0)