Skip to content

Commit e260f6c

Browse files
authored
Merge pull request #3507 from croudet/coreCleanU
Minor code clean-up
2 parents 95d2522 + 8138180 commit e260f6c

34 files changed

+161
-225
lines changed

modules/swagger-core/src/main/java/io/swagger/v3/core/converter/AnnotatedType.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -236,9 +236,9 @@ public int hashCode() {
236236
int result = 1;
237237
result = 31 * result + (type == null ? 0 : Objects.hash(type, "fixed"));
238238
if (hasDifference) {
239-
result = 31 * result + (meaningfulAnnotations == null ? 0 : Arrays.hashCode(meaningfulAnnotations.toArray(new Annotation[meaningfulAnnotations.size()])));
239+
result = 31 * result + meaningfulAnnotations.hashCode();
240240
} else {
241-
result = 31 * result + (ctxAnnotations == null ? 0 : Arrays.hashCode(ctxAnnotations));
241+
result = 31 * result + Arrays.hashCode(ctxAnnotations);
242242
}
243243
return result;
244244
}

modules/swagger-core/src/main/java/io/swagger/v3/core/converter/ModelConverterContextImpl.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ public ModelConverterContextImpl(ModelConverter converter) {
3636
converters.add(converter);
3737
}
3838

39+
@Override
3940
public Iterator<ModelConverter> getConverters() {
4041
return converters.iterator();
4142
}
@@ -86,7 +87,7 @@ public Schema resolve(AnnotatedType type) {
8687
Schema resolved = null;
8788
if (converters.hasNext()) {
8889
ModelConverter converter = converters.next();
89-
LOGGER.trace("trying extension " + converter);
90+
LOGGER.trace("trying extension {}", converter);
9091
resolved = converter.resolve(type, this, converters);
9192
}
9293
if (resolved != null) {

modules/swagger-core/src/main/java/io/swagger/v3/core/converter/ModelConverters.java

+8-8
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,8 @@ public class ModelConverters {
2323
private static final ModelConverters SINGLETON = new ModelConverters();
2424
static Logger LOGGER = LoggerFactory.getLogger(ModelConverters.class);
2525
private final List<ModelConverter> converters;
26-
private final Set<String> skippedPackages = new HashSet<String>();
27-
private final Set<String> skippedClasses = new HashSet<String>();
26+
private final Set<String> skippedPackages = new HashSet<>();
27+
private final Set<String> skippedClasses = new HashSet<>();
2828

2929
public ModelConverters() {
3030
converters = new CopyOnWriteArrayList<>();
@@ -52,7 +52,7 @@ public void addPackageToSkip(String pkg) {
5252
}
5353

5454
public void addClassToSkip(String cls) {
55-
LOGGER.warn("skipping class " + cls);
55+
LOGGER.warn("skipping class {}", cls);
5656
this.skippedClasses.add(cls);
5757
}
5858

@@ -61,7 +61,7 @@ public Map<String, Schema> read(Type type) {
6161
}
6262

6363
public Map<String, Schema> read(AnnotatedType type) {
64-
Map<String, Schema> modelMap = new HashMap<String, Schema>();
64+
Map<String, Schema> modelMap = new HashMap<>();
6565
if (shouldProcess(type.getType())) {
6666
ModelConverterContextImpl context = new ModelConverterContextImpl(
6767
converters);
@@ -85,11 +85,11 @@ public Map<String, Schema> readAll(AnnotatedType type) {
8585
ModelConverterContextImpl context = new ModelConverterContextImpl(
8686
converters);
8787

88-
LOGGER.debug("ModelConverters readAll from " + type);
88+
LOGGER.debug("ModelConverters readAll from {}", type);
8989
context.resolve(type);
9090
return context.getDefinedModels();
9191
}
92-
return new HashMap<String, Schema>();
92+
return new HashMap<>();
9393
}
9494

9595
public ResolvedSchema readAllAsResolvedSchema(Type type) {
@@ -146,10 +146,10 @@ private boolean shouldProcess(Type type) {
146146
while (itr.hasNext()) {
147147
ModelConverter ext = itr.next();
148148
if (ext == null) {
149-
LOGGER.error("failed to load extension " + ext);
149+
LOGGER.error("failed to load extension {}", ext);
150150
} else {
151151
SINGLETON.addConverter(ext);
152-
LOGGER.debug("adding ModelConverter: " + ext);
152+
LOGGER.debug("adding ModelConverter: {}", ext);
153153
}
154154
}
155155
}

modules/swagger-core/src/main/java/io/swagger/v3/core/filter/SpecFilter.java

+13-17
Original file line numberDiff line numberDiff line change
@@ -74,8 +74,9 @@ public OpenAPI filter(OpenAPI openAPI, OpenAPISpecFilter filter, Map<String, Lis
7474

7575
Map<PathItem.HttpMethod, Operation> ops = filteredPathItem.readOperationsMap();
7676

77-
for (PathItem.HttpMethod key : ops.keySet()) {
78-
Operation op = ops.get(key);
77+
for (Map.Entry<PathItem.HttpMethod, Operation> entry : ops.entrySet()) {
78+
PathItem.HttpMethod key = entry.getKey();
79+
Operation op = entry.getValue();
7980
List<String> opTagsBeforeFilter = null;
8081
if (op.getTags() != null) {
8182
opTagsBeforeFilter = new ArrayList<>(op.getTags());
@@ -257,16 +258,15 @@ protected Map<String, Schema> filterComponentsSchema(OpenAPISpecFilter filter, M
257258
}
258259
Map<String, Schema> clonedComponentsSchema = new LinkedHashMap<>();
259260

260-
for (String key : schemasMap.keySet()) {
261-
Schema definition = schemasMap.get(key);
261+
for (Map.Entry<String, Schema> entry : schemasMap.entrySet()) {
262+
String key = entry.getKey();
263+
Schema definition = entry.getValue();
262264
Optional<Schema> filteredDefinition = filter.filterSchema(definition, params, cookies, headers);
263-
if (!filteredDefinition.isPresent()) {
264-
continue;
265-
} else {
265+
if (filteredDefinition.isPresent()) {
266266
Map<String, Schema> clonedProperties = new LinkedHashMap<>();
267267
if (filteredDefinition.get().getProperties() != null) {
268268
for (Object propName : filteredDefinition.get().getProperties().keySet()) {
269-
Schema property = (Schema) filteredDefinition.get().getProperties().get((String) propName);
269+
Schema property = (Schema) filteredDefinition.get().getProperties().get(propName);
270270
if (property != null) {
271271
Optional<Schema> filteredProperty = filter.filterSchemaProperty(property, definition, (String) propName, params, cookies, headers);
272272
if (filteredProperty.isPresent()) {
@@ -288,7 +288,6 @@ protected Map<String, Schema> filterComponentsSchema(OpenAPISpecFilter filter, M
288288
clonedComponentsSchema.put(key, clonedModel);
289289

290290
} catch (IOException e) {
291-
continue;
292291
}
293292
}
294293
}
@@ -312,12 +311,12 @@ private void addSchemaRef(Schema schema, Set<String> referencedDefinitions) {
312311

313312
if (schema.getProperties() != null) {
314313
for (Object propName : schema.getProperties().keySet()) {
315-
Schema property = (Schema) schema.getProperties().get((String) propName);
314+
Schema property = (Schema) schema.getProperties().get(propName);
316315
addSchemaRef(property, referencedDefinitions);
317316
}
318317
}
319318

320-
if (schema.getAdditionalProperties() != null && (schema.getAdditionalProperties() instanceof Schema)) {
319+
if (schema.getAdditionalProperties() instanceof Schema) {
321320
addSchemaRef((Schema)schema.getAdditionalProperties(), referencedDefinitions);
322321
}
323322

@@ -346,8 +345,7 @@ private void addSchemaRef(Schema schema, Set<String> referencedDefinitions) {
346345

347346
private void addContentSchemaRef(Content content, Set<String> referencedDefinitions) {
348347
if (content != null) {
349-
for (String keyBodyContent : content.keySet()) {
350-
MediaType mediaType = content.get(keyBodyContent);
348+
for (MediaType mediaType : content.values()) {
351349
addSchemaRef(mediaType.getSchema(), referencedDefinitions);
352350
}
353351
}
@@ -361,8 +359,7 @@ private void addPathItemSchemaRef(PathItem pathItem, Set<String> referencedDefin
361359
}
362360
}
363361
Map<PathItem.HttpMethod, Operation> ops = pathItem.readOperationsMap();
364-
for (PathItem.HttpMethod key : ops.keySet()) {
365-
Operation op = ops.get(key);
362+
for (Operation op : ops.values()) {
366363
if (op.getRequestBody() != null) {
367364
addContentSchemaRef(op.getRequestBody().getContent(), referencedDefinitions);
368365
}
@@ -388,8 +385,7 @@ private void addPathItemSchemaRef(PathItem pathItem, Set<String> referencedDefin
388385
if (op.getCallbacks() != null) {
389386
for (String keyCallback : op.getCallbacks().keySet()) {
390387
Callback callback = op.getCallbacks().get(keyCallback);
391-
for (String keyCallbackPathItem : callback.keySet()) {
392-
PathItem callbackPathItem = callback.get(keyCallbackPathItem);
388+
for (PathItem callbackPathItem : callback.values()) {
393389
addPathItemSchemaRef(callbackPathItem, referencedDefinitions);
394390
}
395391
}

modules/swagger-core/src/main/java/io/swagger/v3/core/jackson/AbstractModelConverter.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public abstract class AbstractModelConverter implements ModelConverter {
2727
* Minor optimization: no need to keep on resolving same types over and over
2828
* again.
2929
*/
30-
protected Map<JavaType, String> _resolvedTypeNames = new ConcurrentHashMap<JavaType, String>();
30+
protected Map<JavaType, String> _resolvedTypeNames = new ConcurrentHashMap<>();
3131

3232
protected AbstractModelConverter(ObjectMapper mapper) {
3333
this (mapper, TypeNameResolver.std);

modules/swagger-core/src/main/java/io/swagger/v3/core/jackson/ApiResponsesSerializer.java

+8-10
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,32 @@
11
package io.swagger.v3.core.jackson;
22

33
import com.fasterxml.jackson.core.JsonGenerator;
4-
import com.fasterxml.jackson.core.JsonProcessingException;
54
import com.fasterxml.jackson.databind.JsonSerializer;
65
import com.fasterxml.jackson.databind.SerializerProvider;
6+
77
import io.swagger.v3.oas.models.responses.ApiResponses;
88

99
import java.io.IOException;
10+
import java.util.Map;
11+
import java.util.Map.Entry;
1012

1113
public class ApiResponsesSerializer extends JsonSerializer<ApiResponses> {
1214

13-
private JsonSerializer<Object> defaultSerializer;
14-
15-
public ApiResponsesSerializer() {}
16-
1715
@Override
1816
public void serialize(
1917
ApiResponses value, JsonGenerator jgen, SerializerProvider provider)
20-
throws IOException, JsonProcessingException {
18+
throws IOException {
2119

2220
if (value != null && value.getExtensions() != null && !value.getExtensions().isEmpty()) {
2321
jgen.writeStartObject();
2422

2523
if (!value.isEmpty()) {
26-
for (String key: value.keySet()) {
27-
jgen.writeObjectField(key , value.get(key));
24+
for (Entry<String, io.swagger.v3.oas.models.responses.ApiResponse> entry: value.entrySet()) {
25+
jgen.writeObjectField(entry.getKey() , entry.getValue());
2826
}
2927
}
30-
for (String ext: value.getExtensions().keySet()) {
31-
jgen.writeObjectField(ext , value.getExtensions().get(ext));
28+
for (Map.Entry<String, Object> entry: value.getExtensions().entrySet()) {
29+
jgen.writeObjectField(entry.getKey(), entry.getValue());
3230
}
3331
jgen.writeEndObject();
3432
} else {

modules/swagger-core/src/main/java/io/swagger/v3/core/jackson/CallbackSerializer.java

+7-8
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,30 @@
11
package io.swagger.v3.core.jackson;
22

33
import com.fasterxml.jackson.core.JsonGenerator;
4-
import com.fasterxml.jackson.core.JsonProcessingException;
54
import com.fasterxml.jackson.databind.JsonSerializer;
65
import com.fasterxml.jackson.databind.SerializerProvider;
6+
7+
import io.swagger.v3.oas.models.PathItem;
78
import io.swagger.v3.oas.models.callbacks.Callback;
89
import org.apache.commons.lang3.StringUtils;
910

1011
import java.io.IOException;
12+
import java.util.Map.Entry;
1113

1214
public class CallbackSerializer extends JsonSerializer<Callback> {
1315

14-
public CallbackSerializer() {
15-
}
16-
1716
@Override
1817
public void serialize(
1918
Callback value, JsonGenerator jgen, SerializerProvider provider)
20-
throws IOException, JsonProcessingException {
19+
throws IOException {
2120

2221
if (value != null && value.getExtensions() != null && !value.getExtensions().isEmpty()) {
2322
jgen.writeStartObject();
2423

2524
if (StringUtils.isBlank(value.get$ref())) {
2625
if (!value.isEmpty()) {
27-
for (String key: value.keySet()) {
28-
jgen.writeObjectField(key , value.get(key));
26+
for (Entry<String, PathItem> entry: value.entrySet()) {
27+
jgen.writeObjectField(entry.getKey() , entry.getValue());
2928
}
3029
}
3130
} else { // handle ref schema serialization skipping all other props
@@ -36,7 +35,7 @@ public void serialize(
3635
}
3736
jgen.writeEndObject();
3837
} else {
39-
if (StringUtils.isBlank(value.get$ref())) {
38+
if (value == null || StringUtils.isBlank(value.get$ref())) {
4039
provider.defaultSerializeValue(value, jgen);
4140
} else { // handle ref schema serialization skipping all other props
4241
jgen.writeStartObject();

modules/swagger-core/src/main/java/io/swagger/v3/core/jackson/JAXBAnnotationsHelper.java

+3-6
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
* applying JAXB annotations to property definitions.
2020
*/
2121
class JAXBAnnotationsHelper {
22-
private static final String JAXB_DEFAULT = "##default";
22+
public static final String JAXB_DEFAULT = "##default";
2323

2424
private JAXBAnnotationsHelper() {
2525
}
@@ -65,7 +65,7 @@ private static void applyElement(XmlElementWrapper wrapper, Schema property) {
6565
final XML xml = getXml(property);
6666
xml.setWrapped(true);
6767
// No need to set the xml name if the name provided by xmlelementwrapper annotation is ##default or equal to the property name | https://github.com/swagger-api/swagger-core/pull/2050
68-
if (!"##default".equals(wrapper.name()) && !wrapper.name().isEmpty() && !wrapper.name().equals(property.getName())) {
68+
if (!JAXB_DEFAULT.equals(wrapper.name()) && !wrapper.name().isEmpty() && !wrapper.name().equals(property.getName())) {
6969
xml.setName(wrapper.name());
7070
}
7171
}
@@ -153,10 +153,7 @@ private static boolean isAttributeAllowed(Schema property) {
153153
return false;
154154
}
155155
}
156-
if (!StringUtils.isBlank(property.get$ref())) {
157-
return false;
158-
}
159-
return true;
156+
return StringUtils.isBlank(property.get$ref());
160157
}
161158

162159
private static boolean isEmpty(String name) {

0 commit comments

Comments
 (0)