From 80208e3188e2f8c1a38d343d7e1a39ea7893f068 Mon Sep 17 00:00:00 2001 From: thrillfall Date: Tue, 11 Aug 2020 13:51:19 +0200 Subject: [PATCH] move condition for writing multitrack begin and end outside of methods --- .../opentracks/io/file/TrackFileFormat.java | 16 ++++++++-------- .../io/file/exporter/FileTrackExporter.java | 9 +++++++-- .../io/file/exporter/GpxTrackWriter.java | 4 ++-- .../io/file/exporter/KmlTrackWriter.java | 15 +++++---------- .../opentracks/io/file/exporter/TrackWriter.java | 8 ++++---- 5 files changed, 26 insertions(+), 26 deletions(-) diff --git a/src/main/java/de/dennisguse/opentracks/io/file/TrackFileFormat.java b/src/main/java/de/dennisguse/opentracks/io/file/TrackFileFormat.java index 69f9b7a2c..ea51fd60c 100644 --- a/src/main/java/de/dennisguse/opentracks/io/file/TrackFileFormat.java +++ b/src/main/java/de/dennisguse/opentracks/io/file/TrackFileFormat.java @@ -22,7 +22,7 @@ public enum TrackFileFormat { KML_ONLY_TRACK { @Override public TrackWriter newTrackWriter(Context context, boolean multiple) { - return new KmlTrackWriter(context, multiple, false, false, false); + return new KmlTrackWriter(context,false, false, false); } @Override @@ -37,7 +37,7 @@ public enum TrackFileFormat { KML_WITH_TRACKDETAIL { @Override public TrackWriter newTrackWriter(Context context, boolean multiple) { - return new KmlTrackWriter(context, multiple, true, false, false); + return new KmlTrackWriter(context,true, false, false); } @Override @@ -52,7 +52,7 @@ public enum TrackFileFormat { KML_WITH_TRACKDETAIL_AND_SENSORDATA { @Override public TrackWriter newTrackWriter(Context context, boolean multiple) { - return new KmlTrackWriter(context, multiple, true, true, false); + return new KmlTrackWriter(context,true, true, false); } @Override @@ -70,7 +70,7 @@ public enum TrackFileFormat { @Override public TrackWriter newTrackWriter(Context context, boolean multiple) { - return new KmlTrackWriter(context, multiple, false, false, exportPhotos); + return new KmlTrackWriter(context,false, false, exportPhotos); } public TrackExporter newTrackExporter(Context context, Track[] tracks) { @@ -97,7 +97,7 @@ public enum TrackFileFormat { @Override public TrackWriter newTrackWriter(Context context, boolean multiple) { - return new KmlTrackWriter(context, multiple, true, false, exportPhotos); + return new KmlTrackWriter(context,true, false, exportPhotos); } public TrackExporter newTrackExporter(Context context, Track[] tracks) { @@ -125,7 +125,7 @@ public enum TrackFileFormat { @Override public TrackWriter newTrackWriter(Context context, boolean multiple) { - return new KmlTrackWriter(context, multiple, true, true, exportPhotos); + return new KmlTrackWriter(context,true, true, exportPhotos); } @Override @@ -154,7 +154,7 @@ public enum TrackFileFormat { @Override public TrackWriter newTrackWriter(Context context, boolean multiple) { - return new KmlTrackWriter(context, multiple, true, true, exportPhotos); + return new KmlTrackWriter(context,true, true, exportPhotos); } @Override @@ -201,7 +201,7 @@ public enum TrackFileFormat { FileTrackExporter fileTrackExporter = new FileTrackExporter(contentProviderUtils, trackWriter, tracks); - return new KmzTrackExporter(context, contentProviderUtils, fileTrackExporter, tracks, exportPhotos); + return new KmzTrackExporter(context, contentProviderUtils, fileTrackExporter, exportPhotos); } /** diff --git a/src/main/java/de/dennisguse/opentracks/io/file/exporter/FileTrackExporter.java b/src/main/java/de/dennisguse/opentracks/io/file/exporter/FileTrackExporter.java index 36dc2caaf..a9ecd6f3d 100644 --- a/src/main/java/de/dennisguse/opentracks/io/file/exporter/FileTrackExporter.java +++ b/src/main/java/de/dennisguse/opentracks/io/file/exporter/FileTrackExporter.java @@ -66,13 +66,18 @@ public class FileTrackExporter implements TrackExporter { for (Track track1 : tracks) { writeWaypoints(track1); } - trackWriter.writeBeginTracks(); + boolean hasMultipleTracks = tracks.length > 1; + if (hasMultipleTracks) { + trackWriter.writeMultiTrackBegin(); + } long startTime = tracks[0].getTrackStatistics().getStartTime_ms(); for (Track track : tracks) { long offset = track.getTrackStatistics().getStartTime_ms() - startTime; writeLocations(track, offset); } - trackWriter.writeEndTracks(); + if (hasMultipleTracks) { + trackWriter.writeMultiTrackEnd(); + } trackWriter.writeFooter(); trackWriter.close(); diff --git a/src/main/java/de/dennisguse/opentracks/io/file/exporter/GpxTrackWriter.java b/src/main/java/de/dennisguse/opentracks/io/file/exporter/GpxTrackWriter.java index 8756fd831..178142e51 100644 --- a/src/main/java/de/dennisguse/opentracks/io/file/exporter/GpxTrackWriter.java +++ b/src/main/java/de/dennisguse/opentracks/io/file/exporter/GpxTrackWriter.java @@ -146,12 +146,12 @@ public class GpxTrackWriter implements TrackWriter { } @Override - public void writeBeginTracks() { + public void writeMultiTrackBegin() { // Do nothing } @Override - public void writeEndTracks() { + public void writeMultiTrackEnd() { // Do nothing } diff --git a/src/main/java/de/dennisguse/opentracks/io/file/exporter/KmlTrackWriter.java b/src/main/java/de/dennisguse/opentracks/io/file/exporter/KmlTrackWriter.java index 385dd28c4..aeaf301c4 100644 --- a/src/main/java/de/dennisguse/opentracks/io/file/exporter/KmlTrackWriter.java +++ b/src/main/java/de/dennisguse/opentracks/io/file/exporter/KmlTrackWriter.java @@ -57,7 +57,6 @@ public class KmlTrackWriter implements TrackWriter { private static final String TRACK_ICON = "http://earth.google.com/images/kml-icons/track-directional/track-0.png"; private final Context context; - private final boolean hasMultipleTracks; private final boolean exportPhotos; private final boolean exportTrackDetail; private final boolean exportSensorData; @@ -74,14 +73,12 @@ public class KmlTrackWriter implements TrackWriter { /** * @param context the context - * @param hasMultipleTracks should encode multiple tracks into one file? * @param exportTrackDetail should detailed information about the track be exported (e.g., title, description, waypoints, timing)? * @param exportSensorData should {@link TrackPoint}'s sensor data be exported? * @param exportPhotos should pictures be exported (if true: exports to KMZ)? */ - public KmlTrackWriter(Context context, boolean hasMultipleTracks, boolean exportTrackDetail, boolean exportSensorData, boolean exportPhotos) { + public KmlTrackWriter(Context context, boolean exportTrackDetail, boolean exportSensorData, boolean exportPhotos) { this.context = context; - this.hasMultipleTracks = hasMultipleTracks; this.exportTrackDetail = exportTrackDetail; this.exportSensorData = exportSensorData; this.exportPhotos = exportPhotos; @@ -178,18 +175,16 @@ public class KmlTrackWriter implements TrackWriter { } } - @Override - public void writeBeginTracks() { - if (printWriter != null && hasMultipleTracks) { + public void writeMultiTrackBegin() { + if (printWriter != null) { printWriter.println(""); printWriter.println("" + context.getString(R.string.generic_tracks) + ""); printWriter.println("1"); } } - @Override - public void writeEndTracks() { - if (printWriter != null && hasMultipleTracks) { + public void writeMultiTrackEnd() { + if (printWriter != null) { printWriter.println(""); } } diff --git a/src/main/java/de/dennisguse/opentracks/io/file/exporter/TrackWriter.java b/src/main/java/de/dennisguse/opentracks/io/file/exporter/TrackWriter.java index 27ef89179..930408174 100644 --- a/src/main/java/de/dennisguse/opentracks/io/file/exporter/TrackWriter.java +++ b/src/main/java/de/dennisguse/opentracks/io/file/exporter/TrackWriter.java @@ -32,7 +32,7 @@ import de.dennisguse.opentracks.content.data.Waypoint; * For each waypoint: * {@link #writeWaypoint(Waypoint)} * {@link #writeEndWaypoints()} - * {@link #writeBeginTracks()} + * {@link #writeMultiTrackBegin()} * For each track: * {@link #writeBeginTrack(Track, TrackPoint)} * For each segment: @@ -41,7 +41,7 @@ import de.dennisguse.opentracks.content.data.Waypoint; * {@link #writeTrackPoint(TrackPoint)} * {@link #writeCloseSegment()} * {@link #writeEndTrack(Track, TrackPoint)} - * {@link #writeEndTracks()} + * {@link #writeMultiTrackEnd()} * {@link #writeFooter()} * {@link #close()} * @@ -96,12 +96,12 @@ public interface TrackWriter { /** * Writes the beginning of the tracks. */ - void writeBeginTracks(); + void writeMultiTrackBegin(); /** * Writes the end of the tracks, */ - void writeEndTracks(); + void writeMultiTrackEnd(); /** * Writes the beginning of a track.