Changeset 16188 in josm for trunk/src/org


Ignore:
Timestamp:
2020-03-21T22:09:31+01:00 (5 years ago)
Author:
simon04
Message:

see #18954, see #18864 - fix SonarQube issues

Location:
trunk/src/org/openstreetmap/josm
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/gui/util/LruCache.java

    r16082 r16188  
    44import java.util.LinkedHashMap;
    55import java.util.Map;
     6import java.util.Objects;
    67
    78/**
    8  * LRU cache
     9 * LRU cache (least recently used)
     10 * @param <K> the type of keys maintained by this map
     11 * @param <V> the type of mapped values
    912 * @see <a href="http://java-planet.blogspot.com/2005/08/how-to-set-up-simple-lru-cache-using.html">
    1013 *     Java Planet: How to set up a simple LRU cache using LinkedHashMap</a>
     
    1417    private final int capacity;
    1518
     19    /**
     20     * Constructs an empty {@code LruCache} instance with the given capacity
     21     * @param capacity the capacity
     22     */
    1623    public LruCache(int capacity) {
    1724        super(capacity + 1, 1.1f, true);
     
    2330        return size() > capacity;
    2431    }
     32
     33    @Override
     34    public boolean equals(Object o) {
     35        if (this == o) return true;
     36        if (o == null || getClass() != o.getClass()) return false;
     37        if (!super.equals(o)) return false;
     38        LruCache<?, ?> lruCache = (LruCache<?, ?>) o;
     39        return capacity == lruCache.capacity;
     40    }
     41
     42    @Override
     43    public int hashCode() {
     44        return Objects.hash(super.hashCode(), capacity);
     45    }
    2546}
  • trunk/src/org/openstreetmap/josm/tools/GenericParser.java

    r16184 r16188  
    1010 * Utility class to parse various types from other values.
    1111 *
     12 * @param <U> the type of the objects to parse
    1213 * @since 16184
    1314 */
     
    1617    protected final Map<Class<?>, Function<U, ?>> parsers;
    1718
     19    /**
     20     * Creates an empty {@code GenericParser}
     21     */
    1822    public GenericParser() {
    1923        this(new LinkedHashMap<>());
     
    2933    }
    3034
     35    /**
     36     * Creates a new {@code GenericParser} with the same parsers as the specified map
     37     *
     38     * @param parsers the parsers
     39     */
    3140    protected GenericParser(Map<Class<?>, Function<U, ?>> parsers) {
    3241        this.parsers = parsers;
     
    8089     * or {@code Optional.empty()} (if parsing fails, or the type is not {@linkplain #supports supported})
    8190     */
    82     public <T> Optional<?> tryParse(Class<?> type, U value) {
     91    public <T> Optional<T> tryParse(Class<T> type, U value) {
    8392        try {
    8493            return Optional.ofNullable(parse(type, value));
  • trunk/src/org/openstreetmap/josm/tools/StringParser.java

    r16184 r16188  
    3636            .parsers));
    3737
     38    /**
     39     * Creates an empty {@code StringParser}
     40     */
    3841    public StringParser() {
    3942        super();
     
    4952    }
    5053
    51     protected StringParser(Map<Class<?>, Function<String, ?>> parsers) {
     54    private StringParser(Map<Class<?>, Function<String, ?>> parsers) {
    5255        super(parsers);
    5356    }
  • trunk/src/org/openstreetmap/josm/tools/XmlObjectParser.java

    r16181 r16188  
    126126        }
    127127
    128         private void setValue(Entry entry, String fieldName, String value) throws SAXException {
    129             if (value != null) {
    130                 value = value.intern();
    131             }
     128        private void setValue(Entry entry, String fieldName, String value0) throws SAXException {
     129            final String value = value0 != null ? value0.intern() : null;
    132130            CheckParameterUtil.ensureParameterNotNull(entry, "entry");
    133131            if ("class".equals(fieldName) || "default".equals(fieldName) || "throw".equals(fieldName) ||
     
    142140                    f = entry.getField("locale_" + fieldName.substring(lang.length()));
    143141                }
    144                 Optional<?> parsed;
    145                 if (f != null && Modifier.isPublic(f.getModifiers()) && (parsed = primitiveParsers.tryParse(f.getType(), value)).isPresent()) {
     142                Optional<?> parsed = Optional.ofNullable(f)
     143                        .filter(field -> Modifier.isPublic(field.getModifiers()))
     144                        .flatMap(field -> primitiveParsers.tryParse(field.getType(), value));
     145                if (parsed.isPresent()) {
    146146                    f.set(c, parsed.get());
    147147                } else {
Note: See TracChangeset for help on using the changeset viewer.