001// License: GPL. For details, see LICENSE file.
002package org.openstreetmap.josm.plugins.eventbus.data.osm;
003
004import java.util.EventObject;
005import java.util.Objects;
006
007import org.openstreetmap.josm.data.osm.NoteData;
008
009/**
010 * Superclass of note events.
011 */
012abstract class AbstractNoteDataEvent extends EventObject {
013
014    private static final long serialVersionUID = 1L;
015
016    private final NoteData noteData;
017
018    /**
019     * Constructs a new {@code AbstractNoteDataEvent}.
020     * @param source object on which the Event initially occurred
021     * @param noteData note data set
022     */
023    AbstractNoteDataEvent(Object source, NoteData noteData) {
024        super(source);
025        this.noteData = Objects.requireNonNull(noteData);
026    }
027
028    /**
029     * Returns note data set.
030     * @return note data set
031     */
032    public final NoteData getNoteData() {
033        return noteData;
034    }
035}