source: josm/trunk/src/org/openstreetmap/josm/io/remotecontrol/handler/ImportHandler.java@ 4834

Last change on this file since 4834 was 4834, checked in by simon04, 12 years ago

remotecontrol: primt more helpful Bad Request errors, i.e., list available commands, or show missing parameter

  • Property svn:eol-style set to native
File size: 1.6 KB
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.io.remotecontrol.handler;
3
4import static org.openstreetmap.josm.tools.I18n.tr;
5
6import java.net.URLDecoder;
7
8import org.openstreetmap.josm.actions.downloadtasks.DownloadOsmTask;
9import org.openstreetmap.josm.actions.downloadtasks.DownloadTask;
10import org.openstreetmap.josm.io.remotecontrol.PermissionPrefWithDefault;
11
12/**
13 * Handler for import request
14 */
15public class ImportHandler extends RequestHandler {
16
17 public static final String command = "import";
18 public static final String permissionKey = "remotecontrol.permission.import";
19 public static final boolean permissionDefault = true;
20
21 @Override
22 protected void handleRequest() throws RequestHandlerErrorException {
23 try {
24 DownloadTask osmTask = new DownloadOsmTask();
25 osmTask.loadUrl(false, URLDecoder.decode(args.get("url"), "UTF-8"), null);
26 } catch (Exception ex) {
27 System.out.println("RemoteControl: Error parsing import remote control request:");
28 ex.printStackTrace();
29 throw new RequestHandlerErrorException();
30 }
31 }
32
33 @Override
34 public String[] getMandatoryParams()
35 {
36 return new String[] { "url" };
37 }
38
39 @Override
40 public String getPermissionMessage() {
41 return tr("Remote Control has been asked to import data from the following URL:") +
42 "<br>" + request;
43 }
44
45 @Override
46 public PermissionPrefWithDefault getPermissionPref()
47 {
48 return new PermissionPrefWithDefault(permissionKey, permissionDefault,
49 "RemoteControl: import forbidden by preferences");
50 }
51}
Note: See TracBrowser for help on using the repository browser.