3636import java .util .function .Predicate ;
3737import java .util .stream .Stream ;
3838
39+ import io .swagger .v3 .core .util .PrimitiveType ;
3940import io .swagger .v3 .oas .annotations .Parameter ;
4041import org .apache .commons .lang3 .ArrayUtils ;
4142
@@ -97,6 +98,11 @@ private static boolean isSimpleType(Class<?> clazz) {
9798 SIMPLE_TYPES .stream ().anyMatch (c -> c .isAssignableFrom (clazz ));
9899 }
99100
101+ private static boolean isSwaggerPrimitiveType (Class <?> clazz ) {
102+ PrimitiveType primitiveType = PrimitiveType .fromType (clazz );
103+ return primitiveType != null ;
104+ }
105+
100106 private static final Nullable NULLABLE_ANNOTATION = new Nullable () {
101107 @ Override
102108 public Class <? extends Annotation > annotationType () {
@@ -121,9 +127,6 @@ static void removeSimpleTypes(Class<?>... classes) {
121127 }
122128
123129 static {
124- SIMPLE_TYPES .add (Boolean .class );
125- SIMPLE_TYPES .add (Character .class );
126- SIMPLE_TYPES .add (Number .class );
127130 SIMPLE_TYPES .add (CharSequence .class );
128131 SIMPLE_TYPES .add (Optional .class );
129132 SIMPLE_TYPES .add (OptionalInt .class );
@@ -136,5 +139,6 @@ static void removeSimpleTypes(Class<?>... classes) {
136139 SIMPLE_TYPE_PREDICATES .add (Class ::isPrimitive );
137140 SIMPLE_TYPE_PREDICATES .add (Class ::isEnum );
138141 SIMPLE_TYPE_PREDICATES .add (Class ::isArray );
142+ SIMPLE_TYPE_PREDICATES .add (MethodParameterPojoExtractor ::isSwaggerPrimitiveType );
139143 }
140144}
0 commit comments