001 package org.openstreetmap.josm.io.remotecontrol.handler;
002
003 import java.io.File;
004 import java.util.Arrays;
005 import org.openstreetmap.josm.actions.OpenFileAction;
006 import org.openstreetmap.josm.io.remotecontrol.PermissionPrefWithDefault;
007 import static org.openstreetmap.josm.tools.I18n.tr;
008
009 public class OpenFileHandler extends RequestHandler {
010
011 public static final String command = "open_file";
012
013 @Override
014 public String[] getMandatoryParams() {
015 return new String[]{"filename"};
016 }
017
018 @Override
019 public PermissionPrefWithDefault getPermissionPref() {
020 return PermissionPrefWithDefault.OPEN_FILES;
021 }
022
023 @Override
024 protected void handleRequest() throws RequestHandlerErrorException, RequestHandlerBadRequestException {
025 OpenFileAction.openFiles(Arrays.asList(new File(args.get("filename"))));
026 }
027
028 @Override
029 public String getPermissionMessage() {
030 return tr("Remote Control has been asked to open a local file.");
031 }
032 }