]> gitweb.fperrin.net Git - GpsPrune.git/blobdiff - tim/prune/function/gpsies/UploadGpsiesFunction.java
Version 18.5, July 2016
[GpsPrune.git] / tim / prune / function / gpsies / UploadGpsiesFunction.java
index 6bd762f56c637dbda7f8cb1eb54ba21049fa7a39..3cef9dbddde8677a29b1f960be7f13fb7f261219 100644 (file)
@@ -39,6 +39,7 @@ import tim.prune.I18nManager;
 import tim.prune.function.browser.BrowserLauncher;
 import tim.prune.gui.GuiGridLayout;
 import tim.prune.save.GpxExporter;
+import tim.prune.save.SettingsForExport;
 
 /**
  * Function to upload track information up to Gpsies.com
@@ -182,7 +183,8 @@ public class UploadGpsiesFunction extends GenericFunction
                                enableOK();
                        }
                };
-               GuiGridLayout actGrid = new GuiGridLayout(activityPanel, true);
+               // Why not a simple grid layout here?
+               GuiGridLayout actGrid = new GuiGridLayout(activityPanel, new double[] {1.0, 1.0}, new boolean[] {false, false});
                final int numActivities = ACTIVITY_KEYS.length;
                _activityCheckboxes = new JCheckBox[numActivities];
                for (int i=0; i<numActivities; i++)
@@ -250,6 +252,7 @@ public class UploadGpsiesFunction extends GenericFunction
         */
        private void startUpload()
        {
+               BufferedReader reader = null;
                try
                {
                        FormPoster poster = new FormPoster(new URL(GPSIES_URL));
@@ -277,12 +280,12 @@ public class UploadGpsiesFunction extends GenericFunction
                        _writer = new OutputStreamWriter(oStream);
                        new Thread(new Runnable() {
                                public void run() {
-                                       boolean[] saveFlags = {true, true, true, false, true}; // export everything
                                        try {
-                                               GpxExporter.exportData(_writer, _app.getTrackInfo(), _nameField.getText(), null, saveFlags, false);
-                                               _writer.close();
-                                       } catch (IOException e) {
-                                               e.printStackTrace();
+                                               GpxExporter.exportData(_writer, _app.getTrackInfo(), _nameField.getText(),
+                                                       null, new SettingsForExport(), null);
+                                       } catch (IOException e) {}
+                                       finally {
+                                               try {_writer.close();} catch (IOException e) {}
                                        }
                                }
                        }).start();
@@ -290,7 +293,7 @@ public class UploadGpsiesFunction extends GenericFunction
 
                        BufferedInputStream answer = new BufferedInputStream(poster.post());
                        int response = poster.getResponseCode();
-                       BufferedReader reader = new BufferedReader(new InputStreamReader(answer));
+                       reader = new BufferedReader(new InputStreamReader(answer));
                        String line = reader.readLine();
                        // Try to extract gpsies page url from the returned message
                        String pageUrl = null;
@@ -321,6 +324,9 @@ public class UploadGpsiesFunction extends GenericFunction
                        _app.showErrorMessageNoLookup(getNameKey(), I18nManager.getText("error.gpsies.uploadfailed") + ": "
                                + ioe.getClass().getName() + " : " + ioe.getMessage());
                }
+               finally {
+                       try {if (reader != null) reader.close();} catch (IOException e) {}
+               }
                _dialog.dispose();
        }
 }