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