swagger-api/swagger-codegen

[codegen] InlineModelResolver doesn't copy `required` parameter to new reference property

Open

#4,296 opened on Nov 30, 2016

View on GitHub
 (2 comments) (0 reactions) (0 assignees)HTML (5,474 forks)batch import
Issue: Bughelp wanted

Repository metrics

Stars
 (12,701 stars)
PR merge metrics
 (No merged PRs in 30d)

Description

Description

https://github.com/swagger-api/swagger-codegen/blob/v2.2.1/modules/swagger-codegen/src/main/java/io/swagger/codegen/InlineModelResolver.java#L249 Here new reference property is created instead on inline object property. But flag required is not copied to newly created property definition. It leads that generated model is not relevant to swagger description.

Also in ModelImpl - https://github.com/swagger-api/swagger-core/blob/v1.5.10/modules/swagger-models/src/main/java/io/swagger/models/ModelImpl.java#L176 the list of required fields is calculated according to properties, not appropriate variable - https://github.com/swagger-api/swagger-core/blob/v1.5.10/modules/swagger-models/src/main/java/io/swagger/models/ModelImpl.java#L22 It looks like data duplication (list and value in properties), I would remove the list.

Swagger-codegen version

2.2.1 and current master

Contributor guide