swagger-api/swagger-codegen

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

Aberta

#4.296 aberto em 30 de nov. de 2016

 (2 comentários) (0 reação) (0 responsável)HTML (5.474 forks)batch import
Issue: Bughelp wanted

Métricas do repositório

Stars
 (12.701 estrelas)
Métricas de merge de PR
 (Métricas PR pendentes)

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

Guia do colaborador