Skip to content

Commit d965c03

Browse files
committed
cleanup error codes
1 parent e2825e8 commit d965c03

File tree

3 files changed

+30
-12
lines changed

3 files changed

+30
-12
lines changed

src/main/xar-resources/api.xqm

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -640,8 +640,7 @@ function api:query($range-header, $body) {
640640
"reason": "Missing request body"
641641
},
642642
map {
643-
"code": 1,
644-
"description": "Missing request body"
643+
"error": $perr:AP001
645644
}
646645
)
647646
else if (ut:is-guest())
@@ -673,8 +672,7 @@ function api:query($range-header, $body) {
673672
"reason": "Stored query: " || $query-data?query-uri || " does not exist!"
674673
},
675674
map {
676-
"code": 2,
677-
"description": "Stored query: " || $query-data?query-uri || " does not exist!"
675+
"error": $perr:XQ001
678676
}
679677
)
680678
else
@@ -695,8 +693,7 @@ function api:query($range-header, $body) {
695693
}
696694
return
697695
map {
698-
"code": 3,
699-
"description": "An error occurred whilst evaluating the query",
696+
"error": $perr:XQ002,
700697
"xquery-error": ut:filter-map($error-map, ut:filter-entry-value-empty-sequence#2)
701698
}
702699
}

src/main/xar-resources/modules/error.xqm

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,21 @@ declare variable $perr:PD003 := map {
3434
"description": "Source Document URI, does not exist"
3535
};
3636

37+
declare variable $perr:AP001 := map {
38+
"code": fn:QName("http://fusiondb.com/ns/studio/api/error", "AP001"),
39+
"description": "Missing request body"
40+
};
41+
42+
declare variable $perr:XQ001 := map {
43+
"code": fn:QName("http://fusiondb.com/ns/studio/api/error", "XQ001"),
44+
"description": "Stored query does not exist"
45+
};
46+
47+
declare variable $perr:XQ002 := map {
48+
"code": fn:QName("http://fusiondb.com/ns/studio/api/error", "XQ002"),
49+
"description": "An error occurred whilst evaluating the query"
50+
};
51+
3752
declare function perr:error($error as map(xs:string, item())) {
3853
perr:error($error, (), ())
3954
};

src/test/resources/query-error-schema.json

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,19 @@
22
"$schema": "http://json-schema.org/draft-07/schema#",
33
"title": "Document",
44
"type": "object",
5-
"required" : [ "code", "description" ],
5+
"required" : [ "error" ],
66
"properties": {
7-
"code": {
8-
"type": "integer"
9-
},
10-
"description": {
11-
"type": "string"
7+
"error": {
8+
"type": "object",
9+
"required" : [ "code", "description" ],
10+
"properties": {
11+
"code": {
12+
"type": "string"
13+
},
14+
"description": {
15+
"type": "string"
16+
}
17+
}
1218
},
1319
"xquery-error": {
1420
"type": "object",

0 commit comments

Comments
 (0)