private void scan(String device) throws IOException { switch (device.toUpperCase()) { case "SONAR": device = "S"; break; case "LASER": device = "L"; break; default: throw new IllegalArgumentException("Invalid device " + device); } mobileRobot.sendCommand(device + "1.SCAN"); try { result = input.readLine(); } catch (InterruptedIOException e) { result = input.readLine(); } parseMeasure(result, measures); if (device.equals("S")) { occupancyMap.drawSonarScan(position, measures); } else if (device.equals("L")) { occupancyMap.drawLaserScan(position, measures); } }