Changeset 10774 in josm for trunk


Ignore:
Timestamp:
2016-08-10T13:47:34+02:00 (8 years ago)
Author:
simon04
Message:

see #11390, see #12890 - Drop Match.{existsMatch,forallMatch} in favour of stream API

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/actions/search/SearchCompiler.java

    r10662 r10774  
    271271        }
    272272
    273         /**
    274          * Tests whether one of the primitives matches.
    275          * @param primitives primitives
    276          * @return {@code true} if one of the primitives matches, {@code false} otherwise
    277          */
    278         protected boolean existsMatch(Collection<? extends OsmPrimitive> primitives) {
    279             for (OsmPrimitive p : primitives) {
    280                 if (match(p))
    281                     return true;
    282             }
    283             return false;
    284         }
    285 
    286         /**
    287          * Tests whether all primitives match.
    288          * @param primitives primitives
    289          * @return {@code true} if all primitives match, {@code false} otherwise
    290          */
    291         protected boolean forallMatch(Collection<? extends OsmPrimitive> primitives) {
    292             for (OsmPrimitive p : primitives) {
    293                 if (!match(p))
    294                     return false;
    295             }
    296             return true;
    297         }
    298 
    299273        @Override
    300274        public final boolean test(OsmPrimitive object) {
     
    14731447                return false;
    14741448            else if (osm instanceof Node) {
     1449                LatLon coordinate = ((Node) osm).getCoor();
    14751450                Collection<Bounds> allBounds = getBounds(osm);
    1476                 if (allBounds != null) {
    1477                     LatLon coor = ((Node) osm).getCoor();
    1478                     for (Bounds bounds: allBounds) {
    1479                         if (bounds.contains(coor)) {
    1480                             return true;
    1481                         }
    1482                     }
    1483                 }
    1484                 return false;
     1451                return allBounds != null && allBounds.stream().anyMatch(bounds -> bounds.contains(coordinate));
    14851452            } else if (osm instanceof Way) {
    14861453                Collection<Node> nodes = ((Way) osm).getNodes();
    1487                 return all ? forallMatch(nodes) : existsMatch(nodes);
     1454                return all ? nodes.stream().allMatch(this) : nodes.stream().anyMatch(this);
    14881455            } else if (osm instanceof Relation) {
    1489                 Collection<OsmPrimitive> primitives = ((Relation) osm).getMemberPrimitives();
    1490                 return all ? forallMatch(primitives) : existsMatch(primitives);
     1456                Collection<OsmPrimitive> primitives = ((Relation) osm).getMemberPrimitivesList();
     1457                return all ? primitives.stream().allMatch(this) : primitives.stream().anyMatch(this);
    14911458            } else
    14921459                return false;
Note: See TracChangeset for help on using the changeset viewer.