Changeset 15811 in josm for trunk/src/org/openstreetmap/josm/gui/io/UpdatePrimitivesTask.java
- Timestamp:
- 2020-02-03T06:35:22+01:00 (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/gui/io/UpdatePrimitivesTask.java
r10129 r15811 7 7 import java.util.Collections; 8 8 9 import org.openstreetmap.josm.data.osm.Node;10 9 import org.openstreetmap.josm.data.osm.OsmPrimitive; 11 import org.openstreetmap.josm.data.osm.Relation;12 import org.openstreetmap.josm.data.osm.Way;13 10 import org.openstreetmap.josm.gui.layer.OsmDataLayer; 14 11 import org.openstreetmap.josm.io.MultiFetchServerObjectReader; 12 import org.openstreetmap.josm.spi.preferences.Config; 15 13 16 14 /** … … 33 31 super(tr("Update objects"), layer); 34 32 this.toUpdate = toUpdate != null ? toUpdate : Collections.<OsmPrimitive>emptyList(); 35 } 36 37 protected void initMultiFetchReaderWithNodes(MultiFetchServerObjectReader reader) { 38 getProgressMonitor().indeterminateSubTask(tr("Initializing nodes to update ...")); 39 for (OsmPrimitive primitive : toUpdate) { 40 if (primitive instanceof Node && !primitive.isNew()) { 41 reader.append(primitive); 42 } 43 } 44 } 45 46 protected void initMultiFetchReaderWithWays(MultiFetchServerObjectReader reader) { 47 getProgressMonitor().indeterminateSubTask(tr("Initializing ways to update ...")); 48 for (OsmPrimitive primitive : toUpdate) { 49 if (primitive instanceof Way && !primitive.isNew()) { 50 // this also adds way nodes 51 reader.append(primitive); 52 } 53 } 54 } 55 56 protected void initMultiFetchReaderWithRelations(MultiFetchServerObjectReader reader) { 57 getProgressMonitor().indeterminateSubTask(tr("Initializing relations to update ...")); 58 for (OsmPrimitive primitive : toUpdate) { 59 if (primitive instanceof Relation && !primitive.isNew()) { 60 // this also adds relation members 61 reader.append(primitive); 62 } 63 } 33 setDownloadRelations(Config.getPref().getBoolean("update.selected.complete-relation", true)); 64 34 } 65 35 66 36 @Override 67 37 protected void initMultiFetchReader(MultiFetchServerObjectReader reader) { 68 initMultiFetchReaderWithNodes(reader); 69 initMultiFetchReaderWithWays(reader); 70 initMultiFetchReaderWithRelations(reader); 38 // don't update new primitives 39 toUpdate.stream().filter(p -> !p.isNew()).forEach(reader::append); 71 40 } 72 41 }
Note:
See TracChangeset
for help on using the changeset viewer.