From fb67a72208b02d8365181ad68d5df8a1713eea17 Mon Sep 17 00:00:00 2001 From: Bennet Brunsen Date: Mon, 29 Jun 2015 16:37:53 +0200 Subject: [PATCH] Removed redudant database call --- .../app/ui/fragments/BuoyFragment.java | 29 ++++++++----------- .../buoy/positioning/app/util/PingHelper.java | 13 +++++---- 2 files changed, 19 insertions(+), 23 deletions(-) diff --git a/mobile/com.sap.sailing.buoy.positioning/src/com/sap/sailing/android/buoy/positioning/app/ui/fragments/BuoyFragment.java b/mobile/com.sap.sailing.buoy.positioning/src/com/sap/sailing/android/buoy/positioning/app/ui/fragments/BuoyFragment.java index 2afb12f5dda..0e2954b40cf 100644 --- a/mobile/com.sap.sailing.buoy.positioning/src/com/sap/sailing/android/buoy/positioning/app/ui/fragments/BuoyFragment.java +++ b/mobile/com.sap.sailing.buoy.positioning/src/com/sap/sailing/android/buoy/positioning/app/ui/fragments/BuoyFragment.java @@ -279,23 +279,18 @@ public class BuoyFragment extends BaseFragment implements LocationListener { int id = v.getId(); if (id == R.id.marker_set_position_button) { PingHelper helper = new PingHelper(); - try { - if (lastKnownLocation != null) { - MarkInfo mark = positioningActivity.getMarkInfo(); - LeaderboardInfo leaderBoard = positioningActivity.getLeaderBoard(); - helper.storePingInDatabase(getActivity(), lastKnownLocation, mark); - helper.sendPingToServer(getActivity(), lastKnownLocation, leaderBoard, mark, PingServerReplyCallback.class); - //Toast.makeText(getActivity(), getString(R.string.position_set), Toast.LENGTH_SHORT).show(); - ((PositioningActivity) getActivity()).updatePing(); - savedPosition = new LatLng(lastKnownLocation.getLatitude(), lastKnownLocation.getLongitude()); - pingListener.updatePing(); - setUpTextUI(lastKnownLocation); - updateMap(); - } else { - Toast.makeText(getActivity(), "Location is not available yet", Toast.LENGTH_LONG).show(); - } - } catch (GeneralDatabaseHelperException e) { - e.printStackTrace(); + if (lastKnownLocation != null) { + MarkInfo mark = positioningActivity.getMarkInfo(); + LeaderboardInfo leaderBoard = positioningActivity.getLeaderBoard(); + helper.storePingInDatabase(getActivity(), lastKnownLocation, mark); + helper.sendPingToServer(getActivity(), lastKnownLocation, leaderBoard, mark, PingServerReplyCallback.class); + ((PositioningActivity) getActivity()).updatePing(); + savedPosition = new LatLng(lastKnownLocation.getLatitude(), lastKnownLocation.getLongitude()); + pingListener.updatePing(); + setUpTextUI(lastKnownLocation); + updateMap(); + } else { + Toast.makeText(getActivity(), "Location is not available yet", Toast.LENGTH_LONG).show(); } } else if (id == R.id.marker_reset_position_button) { // Reset position diff --git a/mobile/com.sap.sailing.buoy.positioning/src/com/sap/sailing/android/buoy/positioning/app/util/PingHelper.java b/mobile/com.sap.sailing.buoy.positioning/src/com/sap/sailing/android/buoy/positioning/app/util/PingHelper.java index 8fa36d3de65..e47a084d7bd 100644 --- a/mobile/com.sap.sailing.buoy.positioning/src/com/sap/sailing/android/buoy/positioning/app/util/PingHelper.java +++ b/mobile/com.sap.sailing.buoy.positioning/src/com/sap/sailing/android/buoy/positioning/app/util/PingHelper.java @@ -26,7 +26,6 @@ public class PingHelper { fixJson.put("timestamp", location.getTime()); fixJson.put("longitude", location.getLongitude()); fixJson.put("latitude", location.getLatitude()); - storePingInDatabase(context, location, mark); String postUrlStr = leaderBoard.serverUrl + prefs.getServerMarkPingPath(leaderBoard.name, mark.getId()); @@ -35,19 +34,21 @@ public class PingHelper { } catch (JSONException ex) { ExLog.i(context, TAG, "Error while building ping json " + ex.getMessage()); - } catch (GeneralDatabaseHelperException e) { - e.printStackTrace(); } } - public void storePingInDatabase(Context context, Location location, MarkInfo mark) - throws GeneralDatabaseHelperException { + public Boolean storePingInDatabase(Context context, Location location, MarkInfo mark) { MarkPingInfo pingInfo = new MarkPingInfo(); pingInfo.setMarkId(mark.getId()); pingInfo.setLatitude("" + location.getLatitude()); pingInfo.setLongitude("" + location.getLongitude()); pingInfo.setAccuracy(location.getAccuracy()); pingInfo.setTimestamp((int) location.getTime()); - DatabaseHelper.getInstance().storeMarkPing(context, pingInfo); + try { + DatabaseHelper.getInstance().storeMarkPing(context, pingInfo); + } catch (GeneralDatabaseHelperException e) { + return false; + } + return true; } }