forked from upstream-mirrors/OpenTracks
Create SegmentStatisticUpdater by passing Statistics (2/2).
This commit is contained in:
+3
-2
@@ -9,6 +9,7 @@ import java.util.Collection;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
||||||
|
import de.dennisguse.opentracks.data.models.Statistics;
|
||||||
import de.dennisguse.opentracks.data.models.Track;
|
import de.dennisguse.opentracks.data.models.Track;
|
||||||
|
|
||||||
//TODO Merge with TrackFilenameGeneratorTest whenever Junit5 gets available.
|
//TODO Merge with TrackFilenameGeneratorTest whenever Junit5 gets available.
|
||||||
@@ -36,9 +37,9 @@ public class TrackFilenameGenerator2Test {
|
|||||||
Track track = new Track();
|
Track track = new Track();
|
||||||
track.setName("Best Track");
|
track.setName("Best Track");
|
||||||
track.setUuid(UUID.fromString("f81d4fae-7dec-11d0-a765-00a0c91e6bf6"));
|
track.setUuid(UUID.fromString("f81d4fae-7dec-11d0-a765-00a0c91e6bf6"));
|
||||||
track.getTrackStatistics().setStartTime(Instant.parse("2020-02-02T02:02:02Z"));
|
track.setStatistics(new Statistics(Instant.parse("2020-02-02T02:02:02Z"), null, null, null, null, false, null, null, null, null, null));
|
||||||
|
|
||||||
// when
|
// when
|
||||||
String filename = subject.format(track, TrackFileFormat.GPX);
|
subject.format(track, TrackFileFormat.GPX);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
+2
-1
@@ -17,6 +17,7 @@ import java.util.UUID;
|
|||||||
|
|
||||||
import de.dennisguse.opentracks.R;
|
import de.dennisguse.opentracks.R;
|
||||||
import de.dennisguse.opentracks.TimezoneRule;
|
import de.dennisguse.opentracks.TimezoneRule;
|
||||||
|
import de.dennisguse.opentracks.data.models.Statistics;
|
||||||
import de.dennisguse.opentracks.data.models.Track;
|
import de.dennisguse.opentracks.data.models.Track;
|
||||||
|
|
||||||
@RunWith(Parameterized.class)
|
@RunWith(Parameterized.class)
|
||||||
@@ -50,7 +51,7 @@ public class TrackFilenameGeneratorTest {
|
|||||||
Track track = new Track();
|
Track track = new Track();
|
||||||
track.setName("Best Track");
|
track.setName("Best Track");
|
||||||
track.setUuid(UUID.fromString("0000fee0-0000-1000-8000-00805f9b34fb"));
|
track.setUuid(UUID.fromString("0000fee0-0000-1000-8000-00805f9b34fb"));
|
||||||
track.getTrackStatistics().setStartTime(Instant.parse("2020-02-02T02:02:02Z"));
|
track.setStatistics(new Statistics(Instant.parse("2020-02-02T02:02:02Z"), null, null, null, null, false, null, null, null, null, null));
|
||||||
|
|
||||||
// when
|
// when
|
||||||
String filename = subject.format(track, TrackFileFormat.GPX);
|
String filename = subject.format(track, TrackFileFormat.GPX);
|
||||||
|
|||||||
+1
-1
@@ -610,7 +610,7 @@ public class TrackRecordingServiceRecordingTest {
|
|||||||
service.endCurrentTrack();
|
service.endCurrentTrack();
|
||||||
|
|
||||||
// then
|
// then
|
||||||
assertEquals(new Statistics(Instant.parse(startTime), Instant.parse(stopTime), Duration.ofSeconds(4), Duration.ofSeconds(4), Distance.of(11113.275390625), false, Speed.of(1111.3275390625), new AltitudeExtremities(0.0, 0.0), new AltitudeGainLoss(0, 0), null, null)
|
assertEquals(new Statistics(Instant.parse(startTime), Instant.parse(stopTime), Duration.ofSeconds(10), Duration.ofSeconds(10), Distance.of(11113.275390625), false, Speed.of(1111.3275146484375), new AltitudeExtremities(0.0, 0.0), new AltitudeGainLoss(0, 0), null, null)
|
||||||
, contentProviderUtils.getTrack(trackId).getStatistics());
|
, contentProviderUtils.getTrack(trackId).getStatistics());
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -142,8 +142,9 @@ public class Track {
|
|||||||
return trackStatistics.getStatistics();
|
return trackStatistics.getStatistics();
|
||||||
}
|
}
|
||||||
|
|
||||||
public Statistics setStatistics() {
|
public void setStatistics(Statistics statistics) {
|
||||||
throw new RuntimeException("TODO");
|
//TODO Implementation is used for refactoring: this.statistics = statistics;
|
||||||
|
setTrackStatistics(new SegmentStatisticUpdater(statistics));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Deprecated
|
@Deprecated
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ import java.util.UUID;
|
|||||||
import java.util.regex.Matcher;
|
import java.util.regex.Matcher;
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
|
|
||||||
|
import de.dennisguse.opentracks.data.models.Statistics;
|
||||||
import de.dennisguse.opentracks.data.models.Track;
|
import de.dennisguse.opentracks.data.models.Track;
|
||||||
import de.dennisguse.opentracks.util.FileUtils;
|
import de.dennisguse.opentracks.util.FileUtils;
|
||||||
|
|
||||||
@@ -91,7 +92,7 @@ public class TrackFilenameGenerator {
|
|||||||
Track track = new Track();
|
Track track = new Track();
|
||||||
track.setName("Berlin");
|
track.setName("Berlin");
|
||||||
track.setUuid(UUID.fromString("f81d4fae-7dec-11d0-a765-00a0c91e6bf6"));
|
track.setUuid(UUID.fromString("f81d4fae-7dec-11d0-a765-00a0c91e6bf6"));
|
||||||
track.getTrackStatistics().setStartTime(Instant.ofEpochMilli(0));
|
track.setStatistics(new Statistics(Instant.MIN, null, null, null, null, false, null, null, null, null, null));
|
||||||
|
|
||||||
return format(track, TrackFileFormat.KMZ_WITH_TRACKDETAIL_AND_SENSORDATA_AND_PICTURES);
|
return format(track, TrackFileFormat.KMZ_WITH_TRACKDETAIL_AND_SENSORDATA_AND_PICTURES);
|
||||||
}
|
}
|
||||||
|
|||||||
+7
-6
@@ -8,6 +8,7 @@ import java.util.HashMap;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
import de.dennisguse.opentracks.data.models.Statistics;
|
||||||
import de.dennisguse.opentracks.data.models.Track;
|
import de.dennisguse.opentracks.data.models.Track;
|
||||||
import de.dennisguse.opentracks.stats.SegmentStatisticUpdater;
|
import de.dennisguse.opentracks.stats.SegmentStatisticUpdater;
|
||||||
|
|
||||||
@@ -35,9 +36,9 @@ public class AggregatedStatistics {
|
|||||||
public void aggregate(@NonNull Track track) {
|
public void aggregate(@NonNull Track track) {
|
||||||
String activityTypeLocalized = track.getActivityTypeLocalized();
|
String activityTypeLocalized = track.getActivityTypeLocalized();
|
||||||
if (dataMap.containsKey(activityTypeLocalized)) {
|
if (dataMap.containsKey(activityTypeLocalized)) {
|
||||||
dataMap.get(activityTypeLocalized).add(track.getTrackStatistics());
|
dataMap.get(activityTypeLocalized).add(track.getStatistics());
|
||||||
} else {
|
} else {
|
||||||
dataMap.put(activityTypeLocalized, new AggregatedStatistic(activityTypeLocalized, track.getTrackStatistics()));
|
dataMap.put(activityTypeLocalized, new AggregatedStatistic(activityTypeLocalized, track.getStatistics()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -58,9 +59,9 @@ public class AggregatedStatistics {
|
|||||||
private final SegmentStatisticUpdater trackStatistics;
|
private final SegmentStatisticUpdater trackStatistics;
|
||||||
private int countTracks = 1;
|
private int countTracks = 1;
|
||||||
|
|
||||||
public AggregatedStatistic(String activityTypeLocalized, SegmentStatisticUpdater trackStatistics) {
|
public AggregatedStatistic(String activityTypeLocalized, Statistics trackStatistics) {
|
||||||
this.activityTypeLocalized = activityTypeLocalized;
|
this.activityTypeLocalized = activityTypeLocalized;
|
||||||
this.trackStatistics = trackStatistics;
|
this.trackStatistics = new SegmentStatisticUpdater(trackStatistics);
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getActivityTypeLocalized() {
|
public String getActivityTypeLocalized() {
|
||||||
@@ -75,8 +76,8 @@ public class AggregatedStatistics {
|
|||||||
return countTracks;
|
return countTracks;
|
||||||
}
|
}
|
||||||
|
|
||||||
void add(SegmentStatisticUpdater statistics) {
|
void add(Statistics statistics) {
|
||||||
trackStatistics.merge(statistics);
|
trackStatistics.merge(new SegmentStatisticUpdater(statistics));
|
||||||
countTracks++;
|
countTracks++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user