Skip to content

Commit

Permalink
add support for null json literals
Browse files Browse the repository at this point in the history
  • Loading branch information
Guardiola31337 committed Sep 19, 2017
1 parent 2010446 commit e9f66f4
Showing 1 changed file with 14 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@
import com.mapbox.services.android.telemetry.constants.TelemetryConstants;
import com.mapbox.services.android.telemetry.utils.TelemetryUtils;

import org.json.JSONObject;

import java.util.Date;
import java.util.Hashtable;

Expand Down Expand Up @@ -226,7 +228,8 @@ public static Hashtable<String, Object> buildCancelEvent(
event.put(KEY_DISTANCE_COMPLETED, distanceCompleted);
event.put(KEY_DISTANCE_REMAINING, distanceRemaining);
event.put(KEY_DURATION_REMAINING, durationRemaining);
event.put(KEY_ARRIVAL_TIMESTAMP, arrivalTimestamp);
// arrivalTimestamp may be null
addArrivalTimestamp(event, arrivalTimestamp);
return event;
}

Expand Down Expand Up @@ -270,10 +273,18 @@ private static Hashtable<String, Object> getMetadata(
return event;
}

private static void addArrivalTimestamp(Hashtable<String, Object> event, Date arrivalTimestamp) {
if (arrivalTimestamp == null) {
event.put(KEY_ARRIVAL_TIMESTAMP, JSONObject.NULL);
} else {
event.put(KEY_ARRIVAL_TIMESTAMP, TelemetryUtils.generateCreateDateFormatted(arrivalTimestamp));
}
}

private static void addPairIntoEventIfNeeded(Hashtable<String, Object> event, String key, String value) {
// See NavigationMetricsWrapper.java in https://github.com/mapbox/mapbox-navigation-android
if (!value.equalsIgnoreCase("null")) {
event.put(key, value);
if (value == null || value.equalsIgnoreCase("null")) {
event.put(key, JSONObject.NULL);
}
}

Expand Down

0 comments on commit e9f66f4

Please sign in to comment.