Skip to content

Commit 2822e67

Browse files
authored
Minor refactoring - move JSON validation after rules (#1388)
1 parent e0d266f commit 2822e67

File tree

1 file changed

+10
-16
lines changed

1 file changed

+10
-16
lines changed

schemaregistry/serde/jsonschema/json_schema.go

Lines changed: 10 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -193,22 +193,6 @@ func (s *Deserializer) deserialize(topic string, payload []byte, result interfac
193193
if err != nil {
194194
return nil, err
195195
}
196-
if s.validate {
197-
// Need to unmarshal to pure interface
198-
var obj interface{}
199-
err = json.Unmarshal(payload[5:], &obj)
200-
if err != nil {
201-
return nil, err
202-
}
203-
jschema, err := s.toJSONSchema(s.Client, info)
204-
if err != nil {
205-
return nil, err
206-
}
207-
err = jschema.Validate(obj)
208-
if err != nil {
209-
return nil, err
210-
}
211-
}
212196
subject, err := s.SubjectNameStrategy(topic, s.SerdeType, info)
213197
if err != nil {
214198
return nil, err
@@ -262,6 +246,16 @@ func (s *Deserializer) deserialize(topic string, payload []byte, result interfac
262246
if err != nil {
263247
return nil, err
264248
}
249+
if s.validate {
250+
jschema, err := s.toJSONSchema(s.Client, info)
251+
if err != nil {
252+
return nil, err
253+
}
254+
err = jschema.Validate(msg)
255+
if err != nil {
256+
return nil, err
257+
}
258+
}
265259
return msg, nil
266260
}
267261

0 commit comments

Comments
 (0)