Skip to content

Commit b9dc5e7

Browse files
committed
fix for description with inner array
1 parent ced8cf7 commit b9dc5e7

File tree

1 file changed

+7
-11
lines changed

1 file changed

+7
-11
lines changed

modules/swagger-core/src/main/java/io/swagger/util/PropertyDeserializer.java

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,21 +8,14 @@
88
import java.util.List;
99
import java.util.Map;
1010

11+
import com.fasterxml.jackson.databind.node.*;
1112
import org.slf4j.Logger;
1213
import org.slf4j.LoggerFactory;
1314
import com.fasterxml.jackson.core.JsonParser;
1415
import com.fasterxml.jackson.core.JsonProcessingException;
1516
import com.fasterxml.jackson.databind.DeserializationContext;
1617
import com.fasterxml.jackson.databind.JsonDeserializer;
1718
import com.fasterxml.jackson.databind.JsonNode;
18-
import com.fasterxml.jackson.databind.node.ArrayNode;
19-
import com.fasterxml.jackson.databind.node.DoubleNode;
20-
import com.fasterxml.jackson.databind.node.FloatNode;
21-
import com.fasterxml.jackson.databind.node.IntNode;
22-
import com.fasterxml.jackson.databind.node.LongNode;
23-
import com.fasterxml.jackson.databind.node.NumericNode;
24-
import com.fasterxml.jackson.databind.node.ObjectNode;
25-
import com.fasterxml.jackson.databind.node.TextNode;
2619
import io.swagger.models.Xml;
2720
import io.swagger.models.properties.ArrayProperty;
2821
import io.swagger.models.properties.MapProperty;
@@ -142,9 +135,9 @@ public Xml getXml(JsonNode node) {
142135
Property propertyFromNode(JsonNode node) {
143136
final String type = getString(node, PropertyBuilder.PropertyId.TYPE);
144137
final String format = getString(node, PropertyBuilder.PropertyId.FORMAT);
145-
final String description = getString(node, PropertyBuilder.PropertyId.DESCRIPTION);
146138
final Xml xml = getXml(node);
147139

140+
String description = getString(node, PropertyBuilder.PropertyId.DESCRIPTION);
148141
JsonNode detailNode = node.get("$ref");
149142
if (detailNode != null) {
150143
return new RefProperty(detailNode.asText()).description(description);
@@ -174,20 +167,23 @@ Property propertyFromNode(JsonNode node) {
174167
if("type".equals(field.getKey()) && field.getValue() != null && "array".equals(field.getValue().asText())) {
175168
detailNodeType = "array";
176169
}
170+
if(("description").equals(field.getKey()) && field.getValue().getNodeType().equals(JsonNodeType.STRING)) {
171+
description = field.getValue().asText();
172+
}
177173
}
178174
}
179175
}
180176

181177
if("array".equals(detailNodeType)) {
182-
ArrayProperty ap = new ArrayProperty();
178+
ArrayProperty ap = new ArrayProperty().description(description);
183179
ap.setDescription(description);
184180

185181
if(properties.keySet().size() == 1) {
186182
String key = properties.keySet().iterator().next();
187183
ap.setItems(properties.get(key));
188184
}
189185
ap.setVendorExtensionMap(getVendorExtensions(node));
190-
return ap.description(description);
186+
return ap;
191187
}
192188
ObjectProperty objectProperty = new ObjectProperty(properties).description(description);
193189
objectProperty.setVendorExtensionMap(getVendorExtensions(node));

0 commit comments

Comments
 (0)