// License: GPL. For details, see LICENSE file.
package org.openstreetmap.josm.io.session;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.io.Writer;
import java.nio.charset.StandardCharsets;
import org.openstreetmap.josm.gui.layer.GpxLayer;
import org.openstreetmap.josm.io.GpxWriter;
/**
* Session exporter for {@link GpxLayer}.
* @since 5501
*/
public class GpxTracksSessionExporter extends GenericSessionExporter<GpxLayer> {
/**
* Constructs a new {@code GpxTracksSessionExporter}.
* @param layer GPX layer to export
*/
public GpxTracksSessionExporter(GpxLayer layer) { // NO_UCD (test only)
super(layer, "tracks", "0.1", "gpx");
}
@Override
@SuppressWarnings("resource")
protected void addDataFile(OutputStream out) {
Writer writer = new OutputStreamWriter(out, StandardCharsets.UTF_8);
GpxWriter w = new GpxWriter(new PrintWriter(writer));
w.write(layer.data);
w.flush();
}
}