Reduce object creation in findMatchingItemMetadata()

Closes gh-13473
pull/13416/merge
Johnny Lim 7 years ago committed by Stephane Nicoll
parent 27bb4614a9
commit f34fb5f1ee

@ -145,10 +145,11 @@ public class ConfigurationMetadata {
}
private ItemMetadata findMatchingItemMetadata(ItemMetadata metadata) {
List<ItemMetadata> candidates = getCandidates(metadata.getName());
if (candidates.isEmpty()) {
List<ItemMetadata> candidates = this.items.get(metadata.getName());
if (candidates == null || candidates.isEmpty()) {
return null;
}
candidates = new ArrayList<>(candidates);
candidates.removeIf((itemMetadata) -> !itemMetadata.hasSameType(metadata));
if (candidates.size() > 1 && metadata.getType() != null) {
candidates.removeIf(
@ -165,11 +166,6 @@ public class ConfigurationMetadata {
return null;
}
private List<ItemMetadata> getCandidates(String name) {
List<ItemMetadata> candidates = this.items.get(name);
return (candidates != null ? new ArrayList<>(candidates) : new ArrayList<>());
}
private boolean nullSafeEquals(Object o1, Object o2) {
if (o1 == o2) {
return true;

Loading…
Cancel
Save