@@ -14,34 +14,34 @@ import io.swagger.v3.oas.models.media.Schema
1414class SwaggerEnumeratumModelConverter extends ModelResolver (Json .mapper()) {
1515 private val enumEntryClass = classOf [EnumEntry ]
1616
17+ def noneIfEmpty (s : String ): Option [String ] = Option (s).filter(_.trim.nonEmpty)
18+
1719 override def resolve (annotatedType : AnnotatedType , context : ModelConverterContext , chain : Iterator [ModelConverter ]): Schema [_] = {
1820 val javaType = _mapper.constructType(annotatedType.getType)
1921 val cls = javaType.getRawClass
2022 if (isEnum(cls)) {
2123 val sp : Schema [String ] = PrimitiveType .STRING .createProperty().asInstanceOf [Schema [String ]]
2224 setRequired(annotatedType)
23- getValues(cls).foreach { v =>
25+ getValues(cls).foreach { v : String =>
2426 sp.addEnumItemObject(v)
2527 }
2628 nullSafeList(annotatedType.getCtxAnnotations).foreach {
2729 case p : Parameter => {
28- Option (p.description).foreach(desc => sp.setDescription(desc))
30+ noneIfEmpty (p.description).foreach(desc => sp.setDescription(desc))
2931 sp.setDeprecated(p.deprecated)
30- Option (p.example).foreach(ex => sp.setExample(ex))
31- Option (p.name).foreach(name => sp.setName(name))
32+ noneIfEmpty (p.example).foreach(ex => sp.setExample(ex))
33+ noneIfEmpty (p.name).foreach(name => sp.setName(name))
3234 }
3335 case s : SchemaAnnotation => {
34- Option (s.description).foreach(desc => sp.setDescription(desc))
35- Option (s.defaultValue).foreach(df => sp.setDefault(df))
36+ noneIfEmpty (s.description).foreach(desc => sp.setDescription(desc))
37+ noneIfEmpty (s.defaultValue).foreach(df => sp.setDefault(df))
3638 sp.setDeprecated(s.deprecated)
37- Option (s.example).foreach(ex => sp.setExample(ex))
38- Option (s.name).foreach(name => sp.setName(name))
39- Option (s.accessMode).foreach { accessMode =>
40- accessMode match {
41- case AccessMode .READ_ONLY => sp.setReadOnly(true )
42- case AccessMode .WRITE_ONLY => sp.setWriteOnly(true )
43- case _ =>
44- }
39+ noneIfEmpty(s.example).foreach(ex => sp.setExample(ex))
40+ noneIfEmpty(s.name).foreach(name => sp.setName(name))
41+ Option (s.accessMode).foreach {
42+ case AccessMode .READ_ONLY => sp.setReadOnly(true )
43+ case AccessMode .WRITE_ONLY => sp.setWriteOnly(true )
44+ case _ =>
4545 }
4646 }
4747 case _ =>
0 commit comments