// License: GPL. For details, see LICENSE file.
package org.openstreetmap.josm.data.osm.event;
/**
* Classes that do not wish to implement all methods of DataSetListener
* may use this class. Implement DatasetListenerAdapter.Listener and
* pass this adapter instead of class itself.
*
*/
public class DataSetListenerAdapter implements DataSetListener {
@FunctionalInterface
public interface Listener {
void processDatasetEvent(AbstractDatasetChangedEvent event);
}
private final Listener listener;
public DataSetListenerAdapter(Listener listener) {
this.listener = listener;
}
@Override
public void dataChanged(DataChangedEvent event) {
listener.processDatasetEvent(event);
}
@Override
public void nodeMoved(NodeMovedEvent event) {
listener.processDatasetEvent(event);
}
@Override
public void primitivesAdded(PrimitivesAddedEvent event) {
listener.processDatasetEvent(event);
}
@Override
public void primitivesRemoved(PrimitivesRemovedEvent event) {
listener.processDatasetEvent(event);
}
@Override
public void relationMembersChanged(RelationMembersChangedEvent event) {
listener.processDatasetEvent(event);
}
@Override
public void tagsChanged(TagsChangedEvent event) {
listener.processDatasetEvent(event);
}
@Override
public void wayNodesChanged(WayNodesChangedEvent event) {
listener.processDatasetEvent(event);
}
@Override
public void otherDatasetChange(AbstractDatasetChangedEvent event) {
listener.processDatasetEvent(event);
}
}