Skip to content

Commit 92f4d8e

Browse files
committed
update support for boolean additionalProperties
1 parent cce13ff commit 92f4d8e

File tree

2 files changed

+11
-2
lines changed

2 files changed

+11
-2
lines changed

modules/swagger-parser/src/main/java/io/swagger/parser/util/SwaggerDeserializer.java

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import io.swagger.models.auth.*;
77
import io.swagger.models.parameters.*;
88
import io.swagger.models.properties.ArrayProperty;
9+
import io.swagger.models.properties.BooleanValueProperty;
910
import io.swagger.models.properties.Property;
1011
import io.swagger.models.properties.PropertyBuilder;
1112
import io.swagger.util.Json;
@@ -769,6 +770,9 @@ public Model definition(ObjectNode node, String location, ParseResult result) {
769770
result.missing(location, "empty schema");
770771
return null;
771772
}
773+
if (node.isBoolean()) {
774+
return new BooleanValueModel(node.asBoolean());
775+
}
772776
if (node.get("$ref") != null) {
773777
return refModel(node, location, result);
774778
}
@@ -804,7 +808,7 @@ public Model definition(ObjectNode node, String location, ParseResult result) {
804808
am.setUniqueItems(uniqueItems);
805809
}
806810

807-
// add xml specific information if available
811+
// add xml specific information if available
808812
JsonNode xml = node.get("xml");
809813
if (xml != null) {
810814
am.setXml(Json.mapper().convertValue(xml, Xml.class));
@@ -826,6 +830,8 @@ public Model definition(ObjectNode node, String location, ParseResult result) {
826830
JsonNode ap = node.get("additionalProperties");
827831
if (ap != null && ap.getNodeType().equals(JsonNodeType.OBJECT)) {
828832
impl.setAdditionalProperties(Json.mapper().convertValue(ap, Property.class));
833+
} else if (ap != null && ap.isBoolean()) {
834+
impl.setAdditionalProperties(new BooleanValueProperty(ap.asBoolean()));
829835
}
830836

831837
value = getString("default", node, false, location, result);
@@ -1092,6 +1098,9 @@ public Map<String, Property> properties(ObjectNode node, String location, ParseR
10921098

10931099
public Property property(ObjectNode node, String location, ParseResult result) {
10941100
if (node != null) {
1101+
if (node.isBoolean()) {
1102+
return new BooleanValueProperty(node.asBoolean());
1103+
}
10951104
if (node.get("type") == null) {
10961105
// may have an enum where type can be inferred
10971106
JsonNode enumNode = node.get("enum");

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -394,7 +394,7 @@
394394
<commons-io-version>2.11.0</commons-io-version>
395395
<snakeyaml-version>1.33</snakeyaml-version>
396396
<slf4j-version>1.7.28</slf4j-version>
397-
<swagger-core-version>1.6.8</swagger-core-version>
397+
<swagger-core-version>1.6.9</swagger-core-version>
398398
<junit-version>4.13.1</junit-version>
399399
<testng-version>6.9.6</testng-version>
400400
<jmockit-version>1.19</jmockit-version>

0 commit comments

Comments
 (0)