forked from upstream-mirrors/OpenTracks
Track is now a record.
Create Track directly.
This commit is contained in:
@@ -129,23 +129,16 @@ public class ContentProviderUtils {
|
|||||||
null
|
null
|
||||||
);
|
);
|
||||||
|
|
||||||
TrackBuilder track = new TrackBuilder(ZoneOffset.ofTotalSeconds(cursor.getInt(startTimeOffsetIndex)), trackStatistics);
|
return new Track(
|
||||||
track.setId(new Track.Id(cursor.getLong(idIndex)));
|
new Track.Id(cursor.getLong(idIndex)),
|
||||||
track.setUuid(UUIDUtils.fromBytes(cursor.getBlob(uuidIndex)));
|
UUIDUtils.fromBytes(cursor.getBlob(uuidIndex)),
|
||||||
if (!cursor.isNull(nameIndex)) {
|
!cursor.isNull(nameIndex) ? cursor.getString(nameIndex) : "",
|
||||||
track.setName(cursor.getString(nameIndex));
|
!cursor.isNull(descriptionIndex) ? cursor.getString(descriptionIndex) : "",
|
||||||
}
|
!cursor.isNull(activityTypeLocalizedIndex) ? cursor.getString(activityTypeLocalizedIndex) : "",
|
||||||
if (!cursor.isNull(descriptionIndex)) {
|
!cursor.isNull(activityTypeIndex) ? ActivityType.findBy(cursor.getString(activityTypeIndex)) : ActivityType.findBy(null), //TODO Can this happen?
|
||||||
track.setDescription(cursor.getString(descriptionIndex));
|
ZoneOffset.ofTotalSeconds(cursor.getInt(startTimeOffsetIndex)),
|
||||||
}
|
trackStatistics
|
||||||
if (!cursor.isNull(activityTypeIndex)) {
|
);
|
||||||
track.setActivityType(ActivityType.findBy(cursor.getString(activityTypeIndex)));
|
|
||||||
}
|
|
||||||
if (!cursor.isNull(activityTypeLocalizedIndex)) {
|
|
||||||
track.setActivityTypeLocalized(cursor.getString(activityTypeLocalizedIndex));
|
|
||||||
}
|
|
||||||
|
|
||||||
return track.getTrack();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
|
|||||||
@@ -52,13 +52,8 @@ public class TrackBuilder {
|
|||||||
|
|
||||||
@Deprecated
|
@Deprecated
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
public TrackBuilder(Statistics statistics) {
|
public TrackBuilder(@NonNull Statistics trackStatistics) {
|
||||||
this(ZoneOffset.UTC, statistics);
|
this.zoneOffset = ZoneOffset.UTC;
|
||||||
}
|
|
||||||
|
|
||||||
@Deprecated
|
|
||||||
public TrackBuilder(@NonNull ZoneOffset zoneOffset, @NonNull Statistics trackStatistics) {
|
|
||||||
this.zoneOffset = zoneOffset;
|
|
||||||
this.trackStatistics = trackStatistics;
|
this.trackStatistics = trackStatistics;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ import androidx.annotation.VisibleForTesting;
|
|||||||
|
|
||||||
import java.time.Duration;
|
import java.time.Duration;
|
||||||
import java.time.ZoneOffset;
|
import java.time.ZoneOffset;
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
import de.dennisguse.opentracks.R;
|
import de.dennisguse.opentracks.R;
|
||||||
import de.dennisguse.opentracks.data.ContentProviderUtils;
|
import de.dennisguse.opentracks.data.ContentProviderUtils;
|
||||||
@@ -72,14 +73,20 @@ public class TrackRecordingManager implements SharedPreferences.OnSharedPreferen
|
|||||||
ZoneOffset zoneOffset = ZoneOffset.systemDefault().getRules().getOffset(segmentStartTrackPoint.getTime());
|
ZoneOffset zoneOffset = ZoneOffset.systemDefault().getRules().getOffset(segmentStartTrackPoint.getTime());
|
||||||
trackStatisticsUpdater = new TrackStatisticsUpdater(segmentStartTrackPoint);
|
trackStatisticsUpdater = new TrackStatisticsUpdater(segmentStartTrackPoint);
|
||||||
|
|
||||||
TrackBuilder track = new TrackBuilder(zoneOffset, trackStatisticsUpdater.getTrackStatistics());
|
Statistics initialStatistics = trackStatisticsUpdater.getTrackStatistics();
|
||||||
|
|
||||||
String activityTypeLocalized = PreferencesUtils.getDefaultActivityTypeLocalized();
|
String activityTypeLocalized = PreferencesUtils.getDefaultActivityTypeLocalized();
|
||||||
track.setActivityTypeLocalized(activityTypeLocalized);
|
Track track = new Track(
|
||||||
track.setActivityType(ActivityType.findByLocalizedString(context, activityTypeLocalized));
|
null,
|
||||||
track.setName(TrackNameUtils.getTrackName(context, trackId, track.getStartTime()));
|
UUID.randomUUID(), //TODO This is not really cool: should happen in ContentProviderUtils?
|
||||||
|
TrackNameUtils.getTrackName(context, trackId, initialStatistics.startTime().atOffset(zoneOffset)),
|
||||||
|
"",
|
||||||
|
activityTypeLocalized,
|
||||||
|
ActivityType.findByLocalizedString(context, activityTypeLocalized),
|
||||||
|
zoneOffset,
|
||||||
|
initialStatistics
|
||||||
|
);
|
||||||
|
|
||||||
trackId = contentProviderUtils.insertTrack(track.getTrack());
|
trackId = contentProviderUtils.insertTrack(track);
|
||||||
|
|
||||||
onNewTrackPoint(segmentStartTrackPoint);
|
onNewTrackPoint(segmentStartTrackPoint);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user