2021.6
copied from openapi-processor-core
openapi-processor/openapi-processor-spring#133, improved error reporting
Sometimes parsing errors of the OpenAPI description were not be properly reported (e.g. by the maven plugin). Parsing/validation errors are now handled and reported at the processor level and reporting no longer depends on the plugin that calls the processor (gradle/maven).
openapi-processor/openapi-processor-spring#134, nested oneOf & anyOf
if an oneOf/anyOf was used in a schema property the processor generated code that used a non-existing class as java type for the property.
For example given the following OpenAPI description
openapi: 3.0.3
info:
title: nested composed schema
version: 1.0.0
paths:
/foo-nested-one-of:
get:
responses:
'200':
description: nested oneOf
content:
application/json:
schema:
$ref: '#/components/schemas/FooNestedOneOf'
components:
schemas:
FooNestedOneOf:
type: object
properties:
foo:
oneOf:
- $ref: '#/components/schemas/One'
- $ref: '#/components/schemas/Two'
- $ref: '#/components/schemas/Three'the processor generated the pojo as:
public class FooNestedOneOf {
@JsonProperty("foo")
private FooNestedOneOfFoo foo;
public FooNestedOneOfFoo getFoo() {
return foo;
}
public void setFoo(FooNestedOneOfFoo foo) {
this.foo = foo;
}
}where FooNestedOneOfFoo did not exist.
It is now using Object as type of ' foo` and generates:
public class FooNestedOneOf {
@JsonProperty("foo")
private Object foo;
public Object getFoo() {
return foo;
}
public void setFoo(Object foo) {
this.foo = foo;
}
}dependency updates
updated swagger parser to 2.0.28 (was 2.0.27)