001 // License: GPL. For details, see LICENSE file. 002 package org.openstreetmap.josm.io.remotecontrol.handler; 003 004 import static org.openstreetmap.josm.tools.I18n.tr; 005 006 import org.openstreetmap.josm.io.remotecontrol.PermissionPrefWithDefault; 007 import org.openstreetmap.josm.io.remotecontrol.RequestProcessor; 008 009 /** 010 * Handler for version request. 011 */ 012 public class VersionHandler extends RequestHandler { 013 014 public static final String command = "version"; 015 016 @Override 017 protected void handleRequest() throws RequestHandlerErrorException, 018 RequestHandlerBadRequestException { 019 content = RequestProcessor.PROTOCOLVERSION; 020 contentType = "application/json"; 021 if (args.containsKey("jsonp")) { 022 content = args.get("jsonp") + " && " + args.get("jsonp") + "(" + content + ")"; 023 } 024 } 025 026 @Override 027 public String getPermissionMessage() { 028 return tr("Remote Control has been asked to report its protocol version. This enables web sites to detect a running JOSM."); 029 } 030 031 @Override 032 public PermissionPrefWithDefault getPermissionPref() { 033 return PermissionPrefWithDefault.READ_PROTOCOL_VERSION; 034 } 035 036 @Override 037 public String[] getMandatoryParams() { 038 return null; 039 } 040 }