source: josm/trunk/src/org/openstreetmap/josm/gui/io/UploadNoteLayerTask.java@ 10369

Last change on this file since 10369 was 8624, checked in by bastiK, 9 years ago

add missing svn:eol-style=native

  • Property svn:eol-style set to native
File size: 1.7 KB
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.gui.io;
3
4import static org.openstreetmap.josm.tools.I18n.tr;
5
6import org.openstreetmap.josm.actions.upload.UploadNotesTask;
7import org.openstreetmap.josm.gui.layer.NoteLayer;
8import org.openstreetmap.josm.gui.progress.NullProgressMonitor;
9import org.openstreetmap.josm.gui.progress.ProgressMonitor;
10import org.openstreetmap.josm.tools.CheckParameterUtil;
11
12/**
13 * UploadNoteLayerTask uploads the data managed by an {@link NoteLayer} asynchronously.
14 * @since 8474
15 */
16public class UploadNoteLayerTask extends AbstractIOTask {
17
18 private final NoteLayer layer;
19 private final ProgressMonitor monitor;
20
21 /**
22 * Creates the upload task.
23 *
24 * @param layer the layer. Must not be null.
25 * @param monitor a progress monitor. If monitor is null, uses {@link NullProgressMonitor#INSTANCE}
26 * @throws IllegalArgumentException if layer is null
27 * @throws IllegalArgumentException if strategy is null
28 */
29 public UploadNoteLayerTask(NoteLayer layer, ProgressMonitor monitor) {
30 CheckParameterUtil.ensureParameterNotNull(layer, "layer");
31 if (monitor == null) {
32 monitor = NullProgressMonitor.INSTANCE;
33 }
34 this.layer = layer;
35 this.monitor = monitor;
36 }
37
38 @Override
39 public void run() {
40 monitor.indeterminateSubTask(tr("Uploading notes to server"));
41 new UploadNotesTask().uploadNotes(layer.getNoteData(), monitor.createSubTaskMonitor(ProgressMonitor.ALL_TICKS, false));
42 if (isCanceled())
43 return;
44 layer.onPostUploadToServer();
45 }
46
47 @Override
48 public void cancel() {
49 setCanceled(true);
50 }
51}
Note: See TracBrowser for help on using the repository browser.