Changeset 15784 in josm for trunk/src/org/openstreetmap/josm/io/GeoJSONServerReader.java
- Timestamp:
- 2020-01-27T02:35:43+01:00 (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/io/GeoJSONServerReader.java
r15452 r15784 5 5 6 6 import java.io.IOException; 7 import java. util.Objects;7 import java.io.InputStream; 8 8 9 9 import org.openstreetmap.josm.data.osm.DataSet; 10 import org.openstreetmap.josm.gui.io.importexport.GeoJSONImporter;11 10 import org.openstreetmap.josm.gui.progress.ProgressMonitor; 11 import org.xml.sax.SAXException; 12 12 13 13 /** … … 16 16 * @since 15424 17 17 */ 18 public class GeoJSONServerReader extends OsmServerReader { 19 20 private final String url; 18 public class GeoJSONServerReader extends OsmServerLocationReader { 21 19 22 20 /** … … 25 23 */ 26 24 public GeoJSONServerReader(String url) { 27 this.url = Objects.requireNonNull(url); 25 super(url); 26 } 27 28 protected class GeoJsonParser extends Parser<DataSet> { 29 protected GeoJsonParser(ProgressMonitor progressMonitor, Compression compression) { 30 super(progressMonitor, compression); 31 } 32 33 @Override 34 public DataSet parse() throws OsmTransferException, IllegalDataException, IOException, SAXException { 35 in = getInputStreamRaw(url, progressMonitor.createSubTaskMonitor(9, false)); 36 if (in == null) 37 return null; 38 progressMonitor.subTask(tr("Downloading OSM data...")); 39 InputStream uncompressedInputStream = compression.getUncompressedInputStream(in); // NOPMD 40 ProgressMonitor subTaskMonitor = progressMonitor.createSubTaskMonitor(1, false); 41 return GeoJSONReader.parseDataSet(uncompressedInputStream, subTaskMonitor); 42 } 28 43 } 29 44 30 45 @Override 31 46 public DataSet parseOsm(ProgressMonitor progressMonitor) throws OsmTransferException { 32 try { 33 progressMonitor.beginTask(tr("Contacting Server..."), 10); 34 return new GeoJSONImporter().parseDataSet(url); 35 } catch (IOException | IllegalDataException e) { 36 throw new OsmTransferException(e); 37 } finally { 38 progressMonitor.finishTask(); 39 } 47 return parseOsm(progressMonitor, Compression.NONE); 48 } 49 50 @Override 51 public DataSet parseOsm(ProgressMonitor progressMonitor, Compression compression) throws OsmTransferException { 52 return doParse(new GeoJsonParser(progressMonitor, compression), progressMonitor); 40 53 } 41 54 }
Note:
See TracChangeset
for help on using the changeset viewer.
