More use entrySet() rather than using keySet() and get(key)

This commit replaces some more occurrances of keySet() and get(key)
with more efficient usage of the map's entry set.

See gh-4813
pull/4641/merge
Andy Wilkinson 9 years ago
parent 8f1f8dd680
commit 93ef795159

@ -1,5 +1,5 @@
/*
* Copyright 2012-2014 the original author or authors.
* Copyright 2012-2016 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -36,6 +36,7 @@ import org.springframework.web.servlet.handler.AbstractUrlHandlerMapping;
* {@link Endpoint} to expose Spring MVC mappings.
*
* @author Dave Syer
* @author Andy Wilkinson
*/
@ConfigurationProperties(prefix = "endpoints.mappings", ignoreUnknownFields = false)
public class RequestMappingEndpoint extends AbstractEndpoint<Map<String, Object>>
@ -84,20 +85,19 @@ public class RequestMappingEndpoint extends AbstractEndpoint<Map<String, Object>
return result;
}
@SuppressWarnings("rawtypes")
protected void extractMethodMappings(ApplicationContext applicationContext,
Map<String, Object> result) {
if (applicationContext != null) {
for (String name : applicationContext
.getBeansOfType(AbstractHandlerMethodMapping.class).keySet()) {
for (Entry<String, AbstractHandlerMethodMapping> bean : applicationContext
.getBeansOfType(AbstractHandlerMethodMapping.class).entrySet()) {
@SuppressWarnings("unchecked")
Map<?, HandlerMethod> methods = applicationContext
.getBean(name, AbstractHandlerMethodMapping.class)
.getHandlerMethods();
Map<?, HandlerMethod> methods = bean.getValue().getHandlerMethods();
for (Entry<?, HandlerMethod> method : methods.entrySet()) {
Map<String, String> map = new LinkedHashMap<String, String>();
map.put("bean", name);
map.put("bean", bean.getKey());
map.put("method", method.getValue().toString());
result.put( method.getKey().toString(), map);
result.put(method.getKey().toString(), map);
}
}
}

@ -1,5 +1,5 @@
/*
* Copyright 2012-2015 the original author or authors.
* Copyright 2012-2016 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -23,11 +23,15 @@ import java.util.Comparator;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.SortedSet;
import java.util.TreeSet;
/**
* A helper class generating a report from the meta-data of a particular service.
*
* @author Stephane Nicoll
* @author Andy Wilkinson
* @since 1.2.0
*/
class ServiceCapabilitiesReportGenerator {
@ -104,11 +108,20 @@ class ServiceCapabilitiesReportGenerator {
StringBuilder report) {
report.append("Available project types:" + NEW_LINE);
report.append("------------------------" + NEW_LINE);
List<String> typeIds = new ArrayList<String>(metadata.getProjectTypes().keySet());
Collections.sort(typeIds);
for (String typeId : typeIds) {
ProjectType type = metadata.getProjectTypes().get(typeId);
report.append(typeId + " - " + type.getName());
SortedSet<Entry<String, ProjectType>> entries = new TreeSet<Entry<String, ProjectType>>(
new Comparator<Entry<String, ProjectType>>() {
@Override
public int compare(Entry<String, ProjectType> o1,
Entry<String, ProjectType> o2) {
return o1.getKey().compareTo(o2.getKey());
}
});
entries.addAll(metadata.getProjectTypes().entrySet());
for (Entry<String, ProjectType> entry : entries) {
ProjectType type = entry.getValue();
report.append(entry.getKey() + " - " + type.getName());
if (!type.getTags().isEmpty()) {
reportTags(report, type);
}

@ -1,5 +1,5 @@
/*
* Copyright 2012-2013 the original author or authors.
* Copyright 2012-2016 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -19,6 +19,7 @@ package org.springframework.boot.maven;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
import java.util.Map.Entry;
import java.util.Properties;
import java.util.jar.JarEntry;
import java.util.jar.JarOutputStream;
@ -32,6 +33,7 @@ import org.apache.maven.plugins.shade.resource.ResourceTransformer;
* to be merged without losing any information.
*
* @author Dave Syer
* @author Andy Wilkinson
*/
public class PropertiesMergingResourceTransformer implements ResourceTransformer {
@ -62,9 +64,9 @@ public class PropertiesMergingResourceTransformer implements ResourceTransformer
Properties properties = new Properties();
properties.load(is);
is.close();
for (Object key : properties.keySet()) {
String name = (String) key;
String value = properties.getProperty(name);
for (Entry<Object, Object> entry : properties.entrySet()) {
String name = (String) entry.getKey();
String value = (String) entry.getValue();
String existing = this.data.getProperty(name);
this.data.setProperty(name,
existing == null ? value : existing + "," + value);

Loading…
Cancel
Save