// License: GPL. For details, see LICENSE file. package org.openstreetmap.josm.plugins.opendata.modules.fr.datagouvfr.datasets.hydrologie; import java.net.MalformedURLException; import org.openstreetmap.josm.data.osm.DataSet; import org.openstreetmap.josm.data.osm.Node; import org.openstreetmap.josm.plugins.opendata.modules.fr.datagouvfr.datasets.DataGouvDataSetHandler; public class ROEHandler extends DataGouvDataSetHandler { public ROEHandler() { super("référentiel-des-obstacles-à-l'écoulement-30381987"); setName("Référentiel des Obstacles à l’Écoulement"); try { setDataURL("http://www.eaufrance.fr/docs/ROE/donnee_obstacles_ecoulement_v3.zip"); } catch (MalformedURLException e) { e.printStackTrace(); } } @Override public boolean acceptsFilename(String filename) { return acceptsMifTabFilename(filename, "roe_version._20......_wlatin1") || acceptsShpFilename(filename, "roe_version._20......_system_L93") || acceptsXlsFilename(filename, "roe_version._20......_wlatin1"); } @Override public void updateDataSet(DataSet ds) { for (Node n : ds.getNodes()) { replace(n, "Id_ROE", "ref:FR:ROE"); replace(n, "Nom", "name"); n.remove("XL2e"); n.remove("YL2e"); n.remove("XL93"); n.remove("YL93"); replace(n, "typeCd", "waterway", new String[]{"1.1", "1.2", "1.6"}, new String[]{"dam", "weir", "lock_gate"}); replace(n, "typeCd", "man_made", new String[]{"1.3", "1.5"}, new String[]{"dyke", "groyne"}); replace(n, "typeCd", "bridge", new String[]{"1.4"}, new String[]{"yes"}); n.remove("typeCd"); } } }