forked from loafle/openapi-generator-original
[julia] fix enum default vals, add api validations (#20520)
- Fix enum default value generation. Default values were falling back to the default code generator and were being generated improperly for Julia. - Add more validations to client and server API call handlers. These validations were already being generated for models, but were missed out for API calls.
This commit is contained in:
parent
95a74c804c
commit
561a707afc
@ -437,6 +437,18 @@ public abstract class AbstractJuliaCodegen extends DefaultCodegen {
|
||||
return "nothing";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toEnumDefaultValue(String value, String datatype) {
|
||||
// we do not generate any separate enum structure in Julia
|
||||
return value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toEnumVarName(String value, String datatype) {
|
||||
// we do not generate any separate enum structure in Julia
|
||||
return value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String escapeUnsafeCharacters(String input) {
|
||||
return input.replace("#=", "#_=").replace("=#", "=_#");
|
||||
|
@ -43,6 +43,21 @@ function _oacinternal_{{operationId}}(_api::{{classname}}{{#allParams}}{{#requir
|
||||
{{#minItems}}
|
||||
OpenAPI.validate_param("{{paramName}}", "{{operationId}}", :minItems, {{paramName}}, {{minItems}})
|
||||
{{/minItems}}
|
||||
{{#uniqueItems}}
|
||||
OpenAPI.validate_param("{{paramName}}", "{{operationId}}", :uniqueItems, {{paramName}}, {{uniqueItems}})
|
||||
{{/uniqueItems}}
|
||||
{{#maxProperties}}
|
||||
OpenAPI.validate_param("{{paramName}}", "{{operationId}}", :maxProperties, {{paramName}}, {{maxProperties}})
|
||||
{{/maxProperties}}
|
||||
{{#minProperties}}
|
||||
OpenAPI.validate_param("{{paramName}}", "{{operationId}}", :minProperties, {{paramName}}, {{minProperties}})
|
||||
{{/minProperties}}
|
||||
{{#pattern}}
|
||||
OpenAPI.validate_param("{{paramName}}", "{{operationId}}", :pattern, {{paramName}}, r"{{{pattern}}}")
|
||||
{{/pattern}}
|
||||
{{#multipleOf}}
|
||||
OpenAPI.validate_param("{{paramName}}", "{{operationId}}", :multipleOf, {{paramName}}, {{multipleOf}})
|
||||
{{/multipleOf}}
|
||||
|
||||
{{/hasValidation}}
|
||||
{{/allParams}}
|
||||
|
@ -43,6 +43,21 @@ function {{operationId}}_validate(handler)
|
||||
{{#minItems}}
|
||||
OpenAPI.validate_param("{{#lambda.escapeDollar}}{{baseName}}{{/lambda.escapeDollar}}", "{{operationId}}", :minItems, openapi_params["{{#lambda.escapeDollar}}{{baseName}}{{/lambda.escapeDollar}}"], {{minItems}})
|
||||
{{/minItems}}
|
||||
{{#uniqueItems}}
|
||||
OpenAPI.validate_param("{{#lambda.escapeDollar}}{{baseName}}{{/lambda.escapeDollar}}", "{{operationId}}", :uniqueItems, openapi_params["{{#lambda.escapeDollar}}{{baseName}}{{/lambda.escapeDollar}}"], {{uniqueItems}})
|
||||
{{/uniqueItems}}
|
||||
{{#maxProperties}}
|
||||
OpenAPI.validate_param("{{#lambda.escapeDollar}}{{baseName}}{{/lambda.escapeDollar}}", "{{operationId}}", :maxProperties, openapi_params["{{#lambda.escapeDollar}}{{baseName}}{{/lambda.escapeDollar}}"], {{maxProperties}})
|
||||
{{/maxProperties}}
|
||||
{{#minProperties}}
|
||||
OpenAPI.validate_param("{{#lambda.escapeDollar}}{{baseName}}{{/lambda.escapeDollar}}", "{{operationId}}", :minProperties, openapi_params["{{#lambda.escapeDollar}}{{baseName}}{{/lambda.escapeDollar}}"], {{minProperties}})
|
||||
{{/minProperties}}
|
||||
{{#pattern}}
|
||||
OpenAPI.validate_param("{{#lambda.escapeDollar}}{{baseName}}{{/lambda.escapeDollar}}", "{{operationId}}", :pattern, openapi_params["{{#lambda.escapeDollar}}{{baseName}}{{/lambda.escapeDollar}}"], r"{{{pattern}}}")
|
||||
{{/pattern}}
|
||||
{{#multipleOf}}
|
||||
OpenAPI.validate_param("{{#lambda.escapeDollar}}{{baseName}}{{/lambda.escapeDollar}}", "{{operationId}}", :multipleOf, openapi_params["{{#lambda.escapeDollar}}{{baseName}}{{/lambda.escapeDollar}}"], {{multipleOf}})
|
||||
{{/multipleOf}}
|
||||
{{/hasValidation}}{{/allParams}}
|
||||
return handler(req)
|
||||
end
|
||||
|
@ -172,6 +172,7 @@ const _returntypes_login_user_UserApi = Dict{Regex,Type}(
|
||||
)
|
||||
|
||||
function _oacinternal_login_user(_api::UserApi, username::String, password::String; _mediaType=nothing)
|
||||
OpenAPI.validate_param("username", "login_user", :pattern, username, r"^[a-zA-Z0-9]+[a-zA-Z0-9\.\-_]*[a-zA-Z0-9]+$")
|
||||
|
||||
_ctx = OpenAPI.Clients.Ctx(_api.client, "GET", _returntypes_login_user_UserApi, "/user/login", [])
|
||||
OpenAPI.Clients.set_param(_ctx.query, "username", username; style="form", is_explode=true) # type String
|
||||
|
@ -155,6 +155,7 @@ function login_user_validate(handler)
|
||||
function login_user_validate_handler(req::HTTP.Request)
|
||||
openapi_params = req.context[:openapi_params]
|
||||
|
||||
OpenAPI.validate_param("username", "login_user", :pattern, openapi_params["username"], r"^[a-zA-Z0-9]+[a-zA-Z0-9\.\-_]*[a-zA-Z0-9]+$")
|
||||
|
||||
return handler(req)
|
||||
end
|
||||
|
Loading…
x
Reference in New Issue
Block a user