]> gitweb.fperrin.net Git - GpsPrune.git/blobdiff - src/tim/prune/function/srtm/SrtmViewfinderSource.java
Refactor and add comments
[GpsPrune.git] / src / tim / prune / function / srtm / SrtmViewfinderSource.java
index a25e9c4e95b55b68341a520df62ad19f54aac00e..b1b7a544d11a45264b6599c445e5222a41c8aa74 100644 (file)
@@ -2,20 +2,16 @@ package tim.prune.function.srtm;
 
 import java.io.File;
 import java.io.FileInputStream;
-import java.io.FileReader;
-import java.io.FileOutputStream;
 import java.io.InputStream;
 import java.io.IOException;
 import java.io.BufferedReader;
 import java.io.InputStreamReader;
 import java.net.MalformedURLException;
 import java.net.URL;
-import java.net.HttpURLConnection;
 import java.util.HashMap;
 import java.util.zip.ZipEntry;
 import java.util.zip.ZipInputStream;
 
-import tim.prune.GpsPrune;
 import tim.prune.I18nManager;
 
 public class SrtmViewfinderSource extends SrtmSource {
@@ -130,36 +126,8 @@ public class SrtmViewfinderSource extends SrtmSource {
                throws SrtmSourceException
        {
                URL tileUrl = buildUrl(inTile);
-               System.out.println("Download: Need to download: " + tileUrl);
-               try
-               {
-                       HttpURLConnection conn = (HttpURLConnection) tileUrl.openConnection();
-
-                       // Define streams
-                       InputStream inStream = null;
-
-                       conn.setRequestProperty("User-Agent", "GpsPrune v" + GpsPrune.VERSION_NUMBER);
-
-                       int status = conn.getResponseCode();
-                       if (status == 200)
-                       {
-                               inStream = conn.getInputStream();
-                       }
-                       else if (status == 404)
-                       {
-                               throw new SrtmSourceException("Tile not found: "+conn.getURL());
-                       }
-                       else
-                       {
-                               throw new SrtmSourceException("Invalid response from server: " +status+conn.getContent());
-                       }
-
-                       return downloadToFile(inStream, getCacheFileName(inTile));
-               }
-               catch (IOException e)
-               {
-                       throw new SrtmSourceException("Error while downloading tile "+inTile.getTileName()+": "+e.getMessage());
-               }
+               InputStream inStream = getStreamToUrl(tileUrl);
+               return readToFile(inStream, getCacheFileName(inTile));
        }
 
        private ZipEntry advanceToEntry(ZipInputStream inStream, SrtmTile inTile)