Ignore:
Timestamp:
2020-05-17T14:18:22+02:00 (4 years ago)
Author:
simon04
Message:

see #19251 - Java 8: use Stream

Location:
trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/ConditionFactory.java

    r16287 r16438  
    66import java.util.Arrays;
    77import java.util.EnumSet;
    8 import java.util.Map;
    98import java.util.Objects;
    109import java.util.Set;
     
    408407        @Override
    409408        protected boolean matches(Environment env) {
    410             for (Map.Entry<String, String> kv: env.osm.getKeys().entrySet()) {
    411                 if (keyPattern.matcher(kv.getKey()).find() && pattern.matcher(kv.getValue()).find()) {
    412                     return true;
    413                 }
    414             }
    415             return false;
     409            return env.osm.getKeys().entrySet().stream()
     410                    .anyMatch(kv -> keyPattern.matcher(kv.getKey()).find() && pattern.matcher(kv.getValue()).find());
    416411        }
    417412    }
  • trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/ExpressionFactory.java

    r15907 r16438  
    1515import java.util.Objects;
    1616import java.util.function.Function;
     17import java.util.stream.Collectors;
    1718
    1819import org.openstreetmap.josm.gui.mappaint.Cascade;
     
    444445        @Override
    445446        public String toString() {
    446             StringBuilder b = new StringBuilder("ArrayFunction~");
    447             b.append(m.getName()).append('(');
    448             for (int i = 0; i < args.size(); ++i) {
    449                 if (i > 0) b.append(',');
    450                 b.append(arrayComponentType).append(' ').append(args.get(i));
    451             }
    452             b.append(')');
    453             return b.toString();
     447            return args.stream()
     448                    .map(arg -> arrayComponentType + " " + arg)
     449                    .collect(Collectors.joining(",", "ArrayFunction~" + m.getName() + '(', ")"));
    454450        }
    455451    }
  • trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/Functions.java

    r16252 r16438  
    2424import org.openstreetmap.josm.data.osm.OsmPrimitive;
    2525import org.openstreetmap.josm.data.osm.Relation;
    26 import org.openstreetmap.josm.data.osm.RelationMember;
    2726import org.openstreetmap.josm.data.osm.Way;
    2827import org.openstreetmap.josm.data.osm.search.SearchCompiler;
     
    455454            if (env.osm != null) {
    456455                // we don't have a matched parent, so just search all referrers
    457                 for (IPrimitive parent : env.osm.getReferrers()) {
    458                     String value = parent.get(key);
    459                     if (value != null) {
    460                         return value;
    461                     }
    462                 }
     456                return env.osm.getReferrers().stream()
     457                        .map(parent -> parent.get(key))
     458                        .filter(Objects::nonNull)
     459                        .findFirst().orElse(null);
    463460            }
    464461            return null;
     
    617614            List<String> roleList = Arrays.asList(roles);
    618615            Relation rel = (Relation) env.osm;
    619             for (RelationMember member : rel.getMembers()) {
    620                 if (roleList.contains(member.getRole())) rValue++;
    621             }
     616            rValue = (int) rel.getMembers().stream()
     617                    .filter(member -> roleList.contains(member.getRole()))
     618                    .count();
    622619        }
    623620        return rValue;
     
    11621159     */
    11631160    public static boolean inside(Environment env, String codes) { // NO_UCD (unused code)
    1164         for (String code : codes.toUpperCase(Locale.ENGLISH).split(",")) {
    1165             if (Territories.isIso3166Code(code.trim(), center(env))) {
    1166                 return true;
    1167             }
    1168         }
    1169         return false;
     1161        return Arrays.stream(codes.toUpperCase(Locale.ENGLISH).split(","))
     1162                .anyMatch(code -> Territories.isIso3166Code(code.trim(), center(env)));
    11701163    }
    11711164
  • trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/Selector.java

    r16199 r16438  
    235235
    236236            private boolean firstAndLastOnly() {
    237                 for (Condition c : link.conds) {
    238                     if (!(c instanceof IndexCondition) || !((IndexCondition) c).isFirstOrLast) {
    239                         return false;
    240                     }
    241                 }
    242                 return true;
     237                return link.conds.stream().allMatch(c -> c instanceof IndexCondition && ((IndexCondition) c).isFirstOrLast);
    243238            }
    244239
Note: See TracChangeset for help on using the changeset viewer.