Skip to content

Commit a539b90

Browse files
committed
refactor: Remove GeneralPolicyValidationError
1 parent ffdb228 commit a539b90

File tree

8 files changed

+91
-50
lines changed

8 files changed

+91
-50
lines changed

ext/hivemq-edge-openapi-2025.9.yaml

Lines changed: 57 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -4909,6 +4909,30 @@ components:
49094909
title: Behavior Policy Creation Failed
49104910
detail: 'Behavior policy creation failed: The policy was rejected.'
49114911
type: https://hivemq.com/edge/api/model/BehaviorPolicyCreationFailureError
4912+
AtLeastOneFieldMissingValidationError:
4913+
allOf:
4914+
- $ref: '#/components/schemas/ValidationError'
4915+
- type: object
4916+
properties:
4917+
paths:
4918+
type: array
4919+
description: The missing json paths.
4920+
items:
4921+
type: string
4922+
format: json-path
4923+
description: The json path.
4924+
example:
4925+
- $.field1
4926+
- $.field2
4927+
required:
4928+
- paths
4929+
example:
4930+
general:
4931+
detail: 'At least one of the fields must be present: ''$.field1'', ''$.field2''.'
4932+
paths:
4933+
- $.field1
4934+
- $.field2
4935+
type: https://hivemq.com/edge/api/model/AtLeastOneFieldMissingValidationError
49124936
ValidationError:
49134937
type: object
49144938
properties:
@@ -4929,40 +4953,16 @@ components:
49294953
https://hivemq.com/edge/api/model/AtMostOneFunctionValidationError: '#/components/schemas/AtMostOneFunctionValidationError'
49304954
https://hivemq.com/edge/api/model/EmptyFieldValidationError: '#/components/schemas/EmptyFieldValidationError'
49314955
https://hivemq.com/edge/api/model/FunctionMustBePairedValidationError: '#/components/schemas/FunctionMustBePairedValidationError'
4932-
https://hivemq.com/edge/api/model/GeneralPolicyValidationError: '#/components/schemas/GeneralPolicyValidationError'
49334956
https://hivemq.com/edge/api/model/IllegalEventTransitionValidationError: '#/components/schemas/IllegalEventTransitionValidationError'
49344957
https://hivemq.com/edge/api/model/IllegalFunctionValidationError: '#/components/schemas/IllegalFunctionValidationError'
49354958
https://hivemq.com/edge/api/model/InvalidFieldLengthValidationError: '#/components/schemas/InvalidFieldLengthValidationError'
49364959
https://hivemq.com/edge/api/model/InvalidFieldValueValidationError: '#/components/schemas/InvalidFieldValueValidationError'
49374960
https://hivemq.com/edge/api/model/InvalidFunctionOrderValidationError: '#/components/schemas/InvalidFunctionOrderValidationError'
49384961
https://hivemq.com/edge/api/model/InvalidIdentifierValidationError: '#/components/schemas/InvalidIdentifierValidationError'
4962+
https://hivemq.com/edge/api/model/InvalidSchemaVersionValidationError: '#/components/schemas/InvalidSchemaVersionValidationError'
49394963
https://hivemq.com/edge/api/model/MissingFieldValidationError: '#/components/schemas/MissingFieldValidationError'
49404964
https://hivemq.com/edge/api/model/UnknownVariableValidationError: '#/components/schemas/UnknownVariableValidationError'
49414965
https://hivemq.com/edge/api/model/UnsupportedFieldValidationError: '#/components/schemas/UnsupportedFieldValidationError'
4942-
AtLeastOneFieldMissingValidationError:
4943-
allOf:
4944-
- $ref: '#/components/schemas/ValidationError'
4945-
- type: object
4946-
properties:
4947-
paths:
4948-
type: array
4949-
description: The missing json paths.
4950-
items:
4951-
type: string
4952-
format: json-path
4953-
description: The json path.
4954-
example:
4955-
- $.field1
4956-
- $.field2
4957-
required:
4958-
- paths
4959-
example:
4960-
general:
4961-
detail: 'At least one of the fields must be present: ''$.field1'', ''$.field2''.'
4962-
paths:
4963-
- $.field1
4964-
- $.field2
4965-
type: https://hivemq.com/edge/api/model/AtLeastOneFieldMissingValidationError
49664966
AtMostOneFunctionValidationError:
49674967
allOf:
49684968
- $ref: '#/components/schemas/ValidationError'
@@ -5041,9 +5041,6 @@ components:
50415041
existingFunction: function1
50425042
missingFunction: function2
50435043
type: https://hivemq.com/edge/api/model/FunctionMustBePairedValidationError
5044-
GeneralPolicyValidationError:
5045-
allOf:
5046-
- $ref: '#/components/schemas/ValidationError'
50475044
IllegalEventTransitionValidationError:
50485045
allOf:
50495046
- $ref: '#/components/schemas/ValidationError'
@@ -5175,7 +5172,6 @@ components:
51755172
example: functionDoesNotExist
51765173
required:
51775174
- path
5178-
- value
51795175
example:
51805176
general:
51815177
detail: Referenced function does not exist.
@@ -5234,6 +5230,28 @@ components:
52345230
path: $.id
52355231
value: invalidId
52365232
type: https://hivemq.com/edge/api/model/InvalidIdentifierValidationError
5233+
InvalidSchemaVersionValidationError:
5234+
allOf:
5235+
- $ref: '#/components/schemas/ValidationError'
5236+
- type: object
5237+
properties:
5238+
id:
5239+
type: string
5240+
description: The schema id.
5241+
example: abc
5242+
version:
5243+
type: string
5244+
description: The schema version.
5245+
example: '2'
5246+
required:
5247+
- id
5248+
- version
5249+
example:
5250+
general:
5251+
detail: The referenced schema with id 'abc' and version '2' was not found.
5252+
id: abc
5253+
version: '2'
5254+
type: https://hivemq.com/edge/api/model/InvalidSchemaVersionValidationError
52375255
MissingFieldValidationError:
52385256
allOf:
52395257
- $ref: '#/components/schemas/ValidationError'
@@ -5312,9 +5330,9 @@ components:
53125330
allOf:
53135331
- $ref: '#/components/schemas/ValidationError'
53145332
- oneOf:
5315-
- $ref: '#/components/schemas/GeneralPolicyValidationError'
5316-
- $ref: '#/components/schemas/IllegalFunctionValidationError'
53175333
- $ref: '#/components/schemas/IllegalEventTransitionValidationError'
5334+
- $ref: '#/components/schemas/IllegalFunctionValidationError'
5335+
- $ref: '#/components/schemas/InvalidSchemaVersionValidationError'
53185336
- $ref: '#/components/schemas/AtLeastOneFieldMissingValidationError'
53195337
- $ref: '#/components/schemas/EmptyFieldValidationError'
53205338
- $ref: '#/components/schemas/InvalidFieldLengthValidationError'
@@ -5325,14 +5343,14 @@ components:
53255343
discriminator:
53265344
propertyName: type
53275345
mapping:
5328-
https://hivemq.com/edge/api/model/GeneralPolicyValidationError: '#/components/schemas/GeneralPolicyValidationError'
5329-
https://hivemq.com/edge/api/model/IllegalEventTransitionValidationError: '#/components/schemas/IllegalEventTransitionValidationError'
5330-
https://hivemq.com/edge/api/model/IllegalFunctionValidationError: '#/components/schemas/IllegalFunctionValidationError'
53315346
https://hivemq.com/edge/api/model/AtLeastOneFieldMissingValidationError: '#/components/schemas/AtLeastOneFieldMissingValidationError'
53325347
https://hivemq.com/edge/api/model/EmptyFieldValidationError: '#/components/schemas/EmptyFieldValidationError'
5348+
https://hivemq.com/edge/api/model/IllegalEventTransitionValidationError: '#/components/schemas/IllegalEventTransitionValidationError'
5349+
https://hivemq.com/edge/api/model/IllegalFunctionValidationError: '#/components/schemas/IllegalFunctionValidationError'
53335350
https://hivemq.com/edge/api/model/InvalidFieldLengthValidationError: '#/components/schemas/InvalidFieldLengthValidationError'
53345351
https://hivemq.com/edge/api/model/InvalidFieldValueValidationError: '#/components/schemas/InvalidFieldValueValidationError'
53355352
https://hivemq.com/edge/api/model/InvalidIdentifierValidationError: '#/components/schemas/InvalidIdentifierValidationError'
5353+
https://hivemq.com/edge/api/model/InvalidSchemaVersionValidationError: '#/components/schemas/InvalidSchemaVersionValidationError'
53365354
https://hivemq.com/edge/api/model/MissingFieldValidationError: '#/components/schemas/MissingFieldValidationError'
53375355
https://hivemq.com/edge/api/model/UnsupportedFieldValidationError: '#/components/schemas/UnsupportedFieldValidationError'
53385356
BehaviorPolicyInvalidErrors:
@@ -5475,6 +5493,7 @@ components:
54755493
- $ref: '#/components/schemas/AtMostOneFunctionValidationError'
54765494
- $ref: '#/components/schemas/FunctionMustBePairedValidationError'
54775495
- $ref: '#/components/schemas/InvalidFunctionOrderValidationError'
5496+
- $ref: '#/components/schemas/InvalidSchemaVersionValidationError'
54785497
- $ref: '#/components/schemas/UnknownVariableValidationError'
54795498
- $ref: '#/components/schemas/EmptyFieldValidationError'
54805499
- $ref: '#/components/schemas/InvalidFieldLengthValidationError'
@@ -5486,14 +5505,15 @@ components:
54865505
propertyName: type
54875506
mapping:
54885507
https://hivemq.com/edge/api/model/AtMostOneFunctionValidationError: '#/components/schemas/AtMostOneFunctionValidationError'
5489-
https://hivemq.com/edge/api/model/FunctionMustBePairedValidationError: '#/components/schemas/FunctionMustBePairedValidationError'
5490-
https://hivemq.com/edge/api/model/InvalidFunctionOrderValidationError: '#/components/schemas/InvalidFunctionOrderValidationError'
5491-
https://hivemq.com/edge/api/model/UnknownVariableValidationError: '#/components/schemas/UnknownVariableValidationError'
54925508
https://hivemq.com/edge/api/model/EmptyFieldValidationError: '#/components/schemas/EmptyFieldValidationError'
5509+
https://hivemq.com/edge/api/model/FunctionMustBePairedValidationError: '#/components/schemas/FunctionMustBePairedValidationError'
54935510
https://hivemq.com/edge/api/model/InvalidFieldLengthValidationError: '#/components/schemas/InvalidFieldLengthValidationError'
54945511
https://hivemq.com/edge/api/model/InvalidFieldValueValidationError: '#/components/schemas/InvalidFieldValueValidationError'
5512+
https://hivemq.com/edge/api/model/InvalidFunctionOrderValidationError: '#/components/schemas/InvalidFunctionOrderValidationError'
54955513
https://hivemq.com/edge/api/model/InvalidIdentifierValidationError: '#/components/schemas/InvalidIdentifierValidationError'
5514+
https://hivemq.com/edge/api/model/InvalidSchemaVersionValidationError: '#/components/schemas/InvalidSchemaVersionValidationError'
54965515
https://hivemq.com/edge/api/model/MissingFieldValidationError: '#/components/schemas/MissingFieldValidationError'
5516+
https://hivemq.com/edge/api/model/UnknownVariableValidationError: '#/components/schemas/UnknownVariableValidationError'
54975517
https://hivemq.com/edge/api/model/UnsupportedFieldValidationError: '#/components/schemas/UnsupportedFieldValidationError'
54985518
DataPolicyInvalidErrors:
54995519
allOf:
Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
allOf:
22
- $ref: "../validation/ValidationError.yaml"
33
- oneOf:
4-
- $ref: "./GeneralPolicyValidationError.yaml"
5-
- $ref: "./IllegalFunctionValidationError.yaml"
64
- $ref: "./IllegalEventTransitionValidationError.yaml"
5+
- $ref: "./IllegalFunctionValidationError.yaml"
6+
- $ref: "./InvalidSchemaVersionValidationError.yaml"
77
- $ref: "../validation/AtLeastOneFieldMissingValidationError.yaml"
88
- $ref: "../validation/EmptyFieldValidationError.yaml"
99
- $ref: "../validation/InvalidFieldLengthValidationError.yaml"
@@ -14,13 +14,13 @@ allOf:
1414
discriminator:
1515
propertyName: type
1616
mapping:
17-
https://hivemq.com/edge/api/model/GeneralPolicyValidationError: "./GeneralPolicyValidationError.yaml"
18-
https://hivemq.com/edge/api/model/IllegalEventTransitionValidationError: "./IllegalEventTransitionValidationError.yaml"
19-
https://hivemq.com/edge/api/model/IllegalFunctionValidationError: "./IllegalFunctionValidationError.yaml"
2017
https://hivemq.com/edge/api/model/AtLeastOneFieldMissingValidationError: "../validation/AtLeastOneFieldMissingValidationError.yaml"
2118
https://hivemq.com/edge/api/model/EmptyFieldValidationError: "../validation/EmptyFieldValidationError.yaml"
19+
https://hivemq.com/edge/api/model/IllegalEventTransitionValidationError: "./IllegalEventTransitionValidationError.yaml"
20+
https://hivemq.com/edge/api/model/IllegalFunctionValidationError: "./IllegalFunctionValidationError.yaml"
2221
https://hivemq.com/edge/api/model/InvalidFieldLengthValidationError: "../validation/InvalidFieldLengthValidationError.yaml"
2322
https://hivemq.com/edge/api/model/InvalidFieldValueValidationError: "../validation/InvalidFieldValueValidationError.yaml"
2423
https://hivemq.com/edge/api/model/InvalidIdentifierValidationError: "../validation/InvalidIdentifierValidationError.yaml"
24+
https://hivemq.com/edge/api/model/InvalidSchemaVersionValidationError: "./InvalidSchemaVersionValidationError.yaml"
2525
https://hivemq.com/edge/api/model/MissingFieldValidationError: "../validation/MissingFieldValidationError.yaml"
2626
https://hivemq.com/edge/api/model/UnsupportedFieldValidationError: "../validation/UnsupportedFieldValidationError.yaml"

ext/openAPI/components/schemas/errors/datahub/DataPolicyValidationError.yaml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ allOf:
44
- $ref: "./AtMostOneFunctionValidationError.yaml"
55
- $ref: "./FunctionMustBePairedValidationError.yaml"
66
- $ref: "./InvalidFunctionOrderValidationError.yaml"
7+
- $ref: "./InvalidSchemaVersionValidationError.yaml"
78
- $ref: "./UnknownVariableValidationError.yaml"
89
- $ref: "../validation/EmptyFieldValidationError.yaml"
910
- $ref: "../validation/InvalidFieldLengthValidationError.yaml"
@@ -15,12 +16,13 @@ discriminator:
1516
propertyName: type
1617
mapping:
1718
https://hivemq.com/edge/api/model/AtMostOneFunctionValidationError: "./AtMostOneFunctionValidationError.yaml"
18-
https://hivemq.com/edge/api/model/FunctionMustBePairedValidationError: "./FunctionMustBePairedValidationError.yaml"
19-
https://hivemq.com/edge/api/model/InvalidFunctionOrderValidationError: "./InvalidFunctionOrderValidationError.yaml"
20-
https://hivemq.com/edge/api/model/UnknownVariableValidationError: "./UnknownVariableValidationError.yaml"
2119
https://hivemq.com/edge/api/model/EmptyFieldValidationError: "../validation/EmptyFieldValidationError.yaml"
20+
https://hivemq.com/edge/api/model/FunctionMustBePairedValidationError: "./FunctionMustBePairedValidationError.yaml"
2221
https://hivemq.com/edge/api/model/InvalidFieldLengthValidationError: "../validation/InvalidFieldLengthValidationError.yaml"
2322
https://hivemq.com/edge/api/model/InvalidFieldValueValidationError: "../validation/InvalidFieldValueValidationError.yaml"
23+
https://hivemq.com/edge/api/model/InvalidFunctionOrderValidationError: "./InvalidFunctionOrderValidationError.yaml"
2424
https://hivemq.com/edge/api/model/InvalidIdentifierValidationError: "../validation/InvalidIdentifierValidationError.yaml"
25+
https://hivemq.com/edge/api/model/InvalidSchemaVersionValidationError: "./InvalidSchemaVersionValidationError.yaml"
2526
https://hivemq.com/edge/api/model/MissingFieldValidationError: "../validation/MissingFieldValidationError.yaml"
27+
https://hivemq.com/edge/api/model/UnknownVariableValidationError: "./UnknownVariableValidationError.yaml"
2628
https://hivemq.com/edge/api/model/UnsupportedFieldValidationError: "../validation/UnsupportedFieldValidationError.yaml"

ext/openAPI/components/schemas/errors/datahub/GeneralPolicyValidationError.yaml

Lines changed: 0 additions & 2 deletions
This file was deleted.
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
allOf:
2+
- $ref: "../validation/ValidationError.yaml"
3+
- type: object
4+
properties:
5+
id:
6+
type: string
7+
description: The schema id.
8+
example: "abc"
9+
version:
10+
type: string
11+
description: The schema version.
12+
example: "2"
13+
required:
14+
- id
15+
- version
16+
example:
17+
general:
18+
detail: "The referenced schema with id 'abc' and version '2' was not found."
19+
id: "abc"
20+
version: "2"
21+
type: "https://hivemq.com/edge/api/model/InvalidSchemaVersionValidationError"

ext/openAPI/components/schemas/errors/validation/InvalidFieldValueValidationError.yaml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ allOf:
1313
example: "functionDoesNotExist"
1414
required:
1515
- path
16-
- value
1716
example:
1817
general:
1918
detail: "Referenced function does not exist."

ext/openAPI/components/schemas/errors/validation/ValidationError.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,13 @@ discriminator:
1717
https://hivemq.com/edge/api/model/AtMostOneFunctionValidationError: "../datahub/AtMostOneFunctionValidationError.yaml"
1818
https://hivemq.com/edge/api/model/EmptyFieldValidationError: "./EmptyFieldValidationError.yaml"
1919
https://hivemq.com/edge/api/model/FunctionMustBePairedValidationError: "../datahub/FunctionMustBePairedValidationError.yaml"
20-
https://hivemq.com/edge/api/model/GeneralPolicyValidationError: "../datahub/GeneralPolicyValidationError.yaml"
2120
https://hivemq.com/edge/api/model/IllegalEventTransitionValidationError: "../datahub/IllegalEventTransitionValidationError.yaml"
2221
https://hivemq.com/edge/api/model/IllegalFunctionValidationError: "../datahub/IllegalFunctionValidationError.yaml"
2322
https://hivemq.com/edge/api/model/InvalidFieldLengthValidationError: "./InvalidFieldLengthValidationError.yaml"
2423
https://hivemq.com/edge/api/model/InvalidFieldValueValidationError: "./InvalidFieldValueValidationError.yaml"
2524
https://hivemq.com/edge/api/model/InvalidFunctionOrderValidationError: "../datahub/InvalidFunctionOrderValidationError.yaml"
2625
https://hivemq.com/edge/api/model/InvalidIdentifierValidationError: "./InvalidIdentifierValidationError.yaml"
26+
https://hivemq.com/edge/api/model/InvalidSchemaVersionValidationError: "../datahub/InvalidSchemaVersionValidationError.yaml"
2727
https://hivemq.com/edge/api/model/MissingFieldValidationError: "./MissingFieldValidationError.yaml"
2828
https://hivemq.com/edge/api/model/UnknownVariableValidationError: "../datahub/UnknownVariableValidationError.yaml"
2929
https://hivemq.com/edge/api/model/UnsupportedFieldValidationError: "./UnsupportedFieldValidationError.yaml"

hivemq-edge/src/main/java/com/hivemq/api/errors/ValidationErrorFactory.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import com.hivemq.edge.api.model.MissingFieldValidationError;
2525
import com.hivemq.edge.api.model.UnsupportedFieldValidationError;
2626
import org.jetbrains.annotations.NotNull;
27+
import org.jetbrains.annotations.Nullable;
2728

2829
import java.util.List;
2930
import java.util.stream.Collectors;
@@ -80,7 +81,7 @@ private ValidationErrorFactory() {
8081
public static @NotNull InvalidFieldValueValidationError invalidFieldValueValidationError(
8182
final @NotNull String detail,
8283
final @NotNull String path,
83-
final @NotNull String value) {
84+
final @Nullable String value) {
8485
return InvalidFieldValueValidationError.builder()
8586
.type(type(InvalidFieldValueValidationError.class))
8687
.detail(detail)

0 commit comments

Comments
 (0)