diff --git a/doc/data-exportimport.txt b/doc/data-exportimport.txt index 53a3937f1..c8310c7ff 100644 --- a/doc/data-exportimport.txt +++ b/doc/data-exportimport.txt @@ -2,17 +2,7 @@ interface TrackExporter { } class KmzTrackExporter implements TrackExporter -KmzTrackExporter o-- FileTrackExporter -class FileTrackExporter implements TrackExporter { -/' One track only '/ -} -FileTrackExporter o-- TrackWriter - -interface TrackWriter { -} -class GpxTrackWriter implements TrackWriter -class KmlTrackWriter implements TrackWriter - +class KmlTrackExporter implements TrackExporter interface TrackImporter { } diff --git a/src/main/java/de/dennisguse/opentracks/io/file/exporter/GPXTrackExporter.java b/src/main/java/de/dennisguse/opentracks/io/file/exporter/GPXTrackExporter.java index 9963f80a0..33cf6920d 100644 --- a/src/main/java/de/dennisguse/opentracks/io/file/exporter/GPXTrackExporter.java +++ b/src/main/java/de/dennisguse/opentracks/io/file/exporter/GPXTrackExporter.java @@ -91,15 +91,16 @@ public class GPXTrackExporter implements TrackExporter { @Override public boolean writeTrack(Track[] tracks, @NonNull OutputStream outputStream) { - Track mainTrack = tracks[0]; try { prepare(outputStream); - writeHeader(mainTrack); - - writeMarkers(mainTrack); + writeHeader(); for (Track track : tracks) { - writeLocations(track); + writeMarkers(track); + } + + for (Track track : tracks) { + writeTrackPoints(track); } writeFooter(); @@ -112,7 +113,7 @@ public class GPXTrackExporter implements TrackExporter { } } - private void writeLocations(Track track) throws InterruptedException { + private void writeTrackPoints(Track track) throws InterruptedException { boolean wroteTrack = false; boolean wroteSegment = false; @@ -183,7 +184,7 @@ public class GPXTrackExporter implements TrackExporter { } - public void writeHeader(Track track) { + public void writeHeader() { if (printWriter != null) { printWriter.println(""); printWriter.println(""); - - printWriter.println(""); - - printWriter.println("" + StringUtils.formatCData(track.getName()) + ""); - printWriter.println("" + StringUtils.formatCData(track.getDescription()) + ""); - printWriter.println(""); } }