Refactoring to marker: data class and ContentProviderUtils.

#389
This commit is contained in:
Dennis Guse
2020-09-05 10:13:01 +02:00
parent 6533e3e170
commit 74e09e1fa9
40 changed files with 421 additions and 453 deletions
@@ -39,9 +39,9 @@ import java.util.List;
import de.dennisguse.opentracks.R;
import de.dennisguse.opentracks.TrackListActivity;
import de.dennisguse.opentracks.TrackRecordingActivity;
import de.dennisguse.opentracks.content.data.Marker;
import de.dennisguse.opentracks.content.data.Track;
import de.dennisguse.opentracks.content.data.TrackPoint;
import de.dennisguse.opentracks.content.data.Waypoint;
import de.dennisguse.opentracks.content.provider.ContentProviderUtils;
import de.dennisguse.opentracks.content.provider.CustomContentProvider;
import de.dennisguse.opentracks.content.provider.TrackPointIterator;
@@ -230,13 +230,13 @@ public class TrackRecordingService extends Service implements HandlerServer.Hand
*
* @return the waypoint id
*/
public Waypoint.Id insertWaypoint(String name, String category, String description, String photoUrl) {
public Marker.Id insertWaypoint(String name, String category, String description, String photoUrl) {
if (!isRecording() || isPaused()) {
return null;
}
if (name == null) {
int nextWaypointNumber = contentProviderUtils.getNextWaypointNumber(recordingTrackId);
int nextWaypointNumber = contentProviderUtils.getNextMarkerNumber(recordingTrackId);
if (nextWaypointNumber == -1) {
nextWaypointNumber = 1;
}
@@ -259,9 +259,9 @@ public class TrackRecordingService extends Service implements HandlerServer.Hand
long duration = stats.getTotalTime();
// Insert waypoint
Waypoint waypoint = new Waypoint(name, description, category, icon, recordingTrackId, length, duration, trackPoint.getLocation(), photoUrl);
Uri uri = contentProviderUtils.insertWaypoint(waypoint);
return new Waypoint.Id(ContentUris.parseId(uri));
Marker waypoint = new Marker(name, description, category, icon, recordingTrackId, length, duration, trackPoint.getLocation(), photoUrl);
Uri uri = contentProviderUtils.insertMarker(waypoint);
return new Marker.Id(ContentUris.parseId(uri));
}
/**
@@ -2,9 +2,9 @@ package de.dennisguse.opentracks.services;
import androidx.annotation.VisibleForTesting;
import de.dennisguse.opentracks.content.data.Marker;
import de.dennisguse.opentracks.content.data.Track;
import de.dennisguse.opentracks.content.data.TrackPoint;
import de.dennisguse.opentracks.content.data.Waypoint;
import de.dennisguse.opentracks.content.sensor.SensorDataSet;
import de.dennisguse.opentracks.services.handlers.GpsStatusValue;
import de.dennisguse.opentracks.services.sensors.BluetoothRemoteSensorManager;
@@ -90,7 +90,7 @@ class TrackRecordingServiceBinder extends android.os.Binder implements TrackReco
}
@Override
public Waypoint.Id insertWaypoint(String name, String category, String description, String photoUrl) {
public Marker.Id insertWaypoint(String name, String category, String description, String photoUrl) {
return trackRecordingService.insertWaypoint(name, category, description, photoUrl);
}
@@ -31,8 +31,8 @@ import androidx.annotation.NonNull;
import de.dennisguse.opentracks.BuildConfig;
import de.dennisguse.opentracks.R;
import de.dennisguse.opentracks.TrackEditActivity;
import de.dennisguse.opentracks.content.data.Marker;
import de.dennisguse.opentracks.content.data.Track;
import de.dennisguse.opentracks.content.data.Waypoint;
import de.dennisguse.opentracks.util.IntentUtils;
import de.dennisguse.opentracks.util.PreferencesUtils;
@@ -181,13 +181,13 @@ public class TrackRecordingServiceConnection implements ServiceConnection, Death
*
* @return the id of the marker or null if none could be created.
*/
public Waypoint.Id addMarker(Context context, String name, String category, String description, String photoUrl) {
public Marker.Id addMarker(Context context, String name, String category, String description, String photoUrl) {
TrackRecordingServiceInterface trackRecordingService = getServiceIfBound();
if (trackRecordingService == null) {
Log.d(TAG, "Unable to add marker, no track recording service");
} else {
try {
Waypoint.Id waypoint = trackRecordingService.insertWaypoint(name, category, description, photoUrl);
Marker.Id waypoint = trackRecordingService.insertWaypoint(name, category, description, photoUrl);
if (waypoint != null) {
Toast.makeText(context, R.string.marker_add_success, Toast.LENGTH_SHORT).show();
return waypoint;
@@ -17,9 +17,9 @@ package de.dennisguse.opentracks.services;
import androidx.annotation.VisibleForTesting;
import de.dennisguse.opentracks.content.data.Marker;
import de.dennisguse.opentracks.content.data.Track;
import de.dennisguse.opentracks.content.data.TrackPoint;
import de.dennisguse.opentracks.content.data.Waypoint;
import de.dennisguse.opentracks.content.sensor.SensorDataSet;
import de.dennisguse.opentracks.services.handlers.GpsStatusValue;
import de.dennisguse.opentracks.services.sensors.BluetoothRemoteSensorManager;
@@ -93,7 +93,7 @@ public interface TrackRecordingServiceInterface {
*
* @return the ID of the inserted waypoint
*/
Waypoint.Id insertWaypoint(String name, String category, String description, String photoUrl);
Marker.Id insertWaypoint(String name, String category, String description, String photoUrl);
/**
* Gets the current sensor data. Returns null if there is no data.