Ignore:
Timestamp:
2018-05-21T18:08:10+02:00 (6 years ago)
Author:
Don-vip
Message:

add IPrimitive.visitReferrers(PrimitiveVisitor)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/data/osm/OsmPrimitive.java

    r13764 r13806  
    1919import java.util.Objects;
    2020import java.util.Set;
     21import java.util.function.Consumer;
    2122
    2223import org.openstreetmap.josm.data.osm.search.SearchCompiler;
     
    2425import org.openstreetmap.josm.data.osm.search.SearchParseError;
    2526import org.openstreetmap.josm.data.osm.visitor.OsmPrimitiveVisitor;
     27import org.openstreetmap.josm.data.osm.visitor.PrimitiveVisitor;
    2628import org.openstreetmap.josm.gui.mappaint.StyleCache;
    2729import org.openstreetmap.josm.spi.preferences.Config;
     
    9981000     */
    9991001    public void visitReferrers(OsmPrimitiveVisitor visitor) {
    1000         if (visitor == null) return;
     1002        if (visitor != null)
     1003            doVisitReferrers(o -> o.accept(visitor));
     1004    }
     1005
     1006    @Override
     1007    public void visitReferrers(PrimitiveVisitor visitor) {
     1008        if (visitor != null)
     1009            doVisitReferrers(o -> o.accept(visitor));
     1010    }
     1011
     1012    private void doVisitReferrers(Consumer<OsmPrimitive> visitor) {
    10011013        if (this.referrers == null)
    10021014            return;
     
    10041016            OsmPrimitive ref = (OsmPrimitive) this.referrers;
    10051017            if (ref.dataSet == dataSet) {
    1006                 ref.accept(visitor);
     1018                visitor.accept(ref);
    10071019            }
    10081020        } else if (this.referrers instanceof OsmPrimitive[]) {
     
    10101022            for (OsmPrimitive ref: refs) {
    10111023                if (ref.dataSet == dataSet) {
    1012                     ref.accept(visitor);
     1024                    visitor.accept(ref);
    10131025                }
    10141026            }
Note: See TracChangeset for help on using the changeset viewer.