|
2 | 2 | from openapi_core.unmarshalling.schemas import ( |
3 | 3 | oas30_request_schema_unmarshallers_factory, |
4 | 4 | ) |
| 5 | +from openapi_core.unmarshalling.schemas import ( |
| 6 | + oas31_schema_unmarshallers_factory, |
| 7 | +) |
| 8 | +from openapi_core.validation.request.proxies import DetectRequestValidatorProxy |
5 | 9 | from openapi_core.validation.request.validators import RequestBodyValidator |
6 | 10 | from openapi_core.validation.request.validators import ( |
7 | 11 | RequestParametersValidator, |
|
14 | 18 | "openapi_v30_request_parameters_validator", |
15 | 19 | "openapi_v30_request_security_validator", |
16 | 20 | "openapi_v30_request_validator", |
| 21 | + "openapi_v31_request_body_validator", |
| 22 | + "openapi_v31_request_parameters_validator", |
| 23 | + "openapi_v31_request_security_validator", |
| 24 | + "openapi_v31_request_validator", |
17 | 25 | "openapi_request_body_validator", |
18 | 26 | "openapi_request_parameters_validator", |
19 | 27 | "openapi_request_security_validator", |
20 | 28 | "openapi_request_validator", |
| 29 | + "openapi_request_validator_proxy", |
21 | 30 | ] |
22 | 31 |
|
23 | 32 | openapi_v30_request_body_validator = RequestBodyValidator( |
|
33 | 42 | schema_unmarshallers_factory=oas30_request_schema_unmarshallers_factory, |
34 | 43 | ) |
35 | 44 |
|
| 45 | +openapi_v31_request_body_validator = RequestBodyValidator( |
| 46 | + schema_unmarshallers_factory=oas31_schema_unmarshallers_factory, |
| 47 | +) |
| 48 | +openapi_v31_request_parameters_validator = RequestParametersValidator( |
| 49 | + schema_unmarshallers_factory=oas31_schema_unmarshallers_factory, |
| 50 | +) |
| 51 | +openapi_v31_request_security_validator = RequestSecurityValidator( |
| 52 | + schema_unmarshallers_factory=oas31_schema_unmarshallers_factory, |
| 53 | +) |
| 54 | +openapi_v31_request_validator = RequestValidator( |
| 55 | + schema_unmarshallers_factory=oas31_schema_unmarshallers_factory, |
| 56 | +) |
| 57 | + |
36 | 58 | # alias to the latest v3 version |
37 | | -openapi_request_body_validator = openapi_v30_request_body_validator |
38 | | -openapi_request_parameters_validator = openapi_v30_request_parameters_validator |
39 | | -openapi_request_security_validator = openapi_v30_request_security_validator |
40 | | -openapi_request_validator = openapi_v30_request_validator |
| 59 | +openapi_request_body_validator = openapi_v31_request_body_validator |
| 60 | +openapi_request_parameters_validator = openapi_v31_request_parameters_validator |
| 61 | +openapi_request_security_validator = openapi_v31_request_security_validator |
| 62 | +openapi_request_validator = openapi_v31_request_validator |
| 63 | + |
| 64 | +# detect version spec |
| 65 | +openapi_request_validator_proxy = DetectRequestValidatorProxy( |
| 66 | + { |
| 67 | + ("openapi", "3.0"): openapi_v30_request_validator, |
| 68 | + ("openapi", "3.1"): openapi_v31_request_validator, |
| 69 | + }, |
| 70 | +) |
0 commit comments