Skip to content

Commit 7ce0bf1

Browse files
author
bnasslahsen
committed
Support nested parameter objects. Fixes #605
1 parent c6089a6 commit 7ce0bf1

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

springdoc-openapi-common/src/main/java/org/springdoc/core/MethodParameterPojoExtractor.java

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636
import java.util.function.Predicate;
3737
import java.util.stream.Stream;
3838

39+
import io.swagger.v3.core.util.PrimitiveType;
3940
import io.swagger.v3.oas.annotations.Parameter;
4041
import 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

Comments
 (0)