001// License: GPL. For details, see LICENSE file.
002package org.openstreetmap.josm.io.session;
003
004import java.io.IOException;
005import java.io.OutputStream;
006
007import org.openstreetmap.josm.gui.layer.NoteLayer;
008import org.openstreetmap.josm.io.NoteWriter;
009
010/**
011 * Session exporter for {@link NoteLayer}.
012 * @since 9746
013 */
014public class NoteSessionExporter extends GenericSessionExporter<NoteLayer> {
015
016    /**
017     * Constructs a new {@code NoteSessionExporter}.
018     * @param layer Note layer to export
019     */
020    public NoteSessionExporter(NoteLayer layer) {
021        super(layer, "osm-notes", "0.1", "osn");
022    }
023
024    @Override
025    protected void addDataFile(OutputStream out) throws IOException {
026        @SuppressWarnings("resource")
027        NoteWriter writer = new NoteWriter(out);
028        writer.write(layer.getNoteData());
029        writer.flush();
030    }
031}