// License: GPL. For details, see LICENSE file. package org.openstreetmap.josm.plugins.opendata.modules.fr.toulouse.datasets.transport; import org.apache.commons.lang3.text.WordUtils; import org.openstreetmap.josm.data.osm.DataSet; import org.openstreetmap.josm.data.osm.Node; import org.openstreetmap.josm.plugins.opendata.modules.fr.toulouse.datasets.ToulouseDataSetHandler; public class VeloToulouseHandler extends ToulouseDataSetHandler { public VeloToulouseHandler() { super(12546, "amenity=bicycle_rental"); setWikiPage("Vélô Toulouse"); setCategory(CAT_TRANSPORT); } @Override public boolean acceptsFilename(String filename) { return acceptsCsvKmzTabFilename(filename, "Velo_Toulouse"); } @Override public void updateDataSet(DataSet ds) { for (Node n : ds.getNodes()) { n.put("amenity", "bicycle_rental"); n.put("network", "VélôToulouse"); n.put("operator", "JCDecaux"); if (n.hasKey("M_en_S_16_nov_07") && n.get("M_en_S_16_nov_07").equals("O")) { n.put("start_date", "2007-11-16"); } n.remove("M_en_S_16_nov_07"); n.remove("Mot_Directeur"); n.remove("No"); n.remove("Nrivoli"); n.remove("street"); replace(n, "nb_bornettes", "capacity"); replace(n, "num_station", "ref"); replace(n, "nom", "name"); n.put("name", WordUtils.capitalizeFully(n.get("name"))); n.remove("code_insee"); n.remove("commune"); n.remove("color"); if (n.hasKey("En_service") && n.get("En_service").equals("N")) { n.put("fixme", "Station pas en service"); } n.remove("En_service"); } } }