001 // License: GPL. For details, see LICENSE file.
002 package org.openstreetmap.josm.data.osm.event;
003
004 /**
005 * Classes that do not wish to implement all methods of DataSetListener
006 * may use this class. Implement DatasetListenerAdapter.Listener and
007 * pass this adapter instead of class itself.
008 *
009 */
010 public class DataSetListenerAdapter implements DataSetListener {
011
012 public interface Listener {
013 void processDatasetEvent(AbstractDatasetChangedEvent event);
014 }
015
016 private final Listener listener;
017
018 public DataSetListenerAdapter(Listener listener) {
019 this.listener = listener;
020 }
021
022 public void dataChanged(DataChangedEvent event) {
023 listener.processDatasetEvent(event);
024 }
025
026 public void nodeMoved(NodeMovedEvent event) {
027 listener.processDatasetEvent(event);
028 }
029
030 public void primitivesAdded(PrimitivesAddedEvent event) {
031 listener.processDatasetEvent(event);
032 }
033
034 public void primitivesRemoved(PrimitivesRemovedEvent event) {
035 listener.processDatasetEvent(event);
036 }
037
038 public void relationMembersChanged(RelationMembersChangedEvent event) {
039 listener.processDatasetEvent(event);
040 }
041
042 public void tagsChanged(TagsChangedEvent event) {
043 listener.processDatasetEvent(event);
044 }
045
046 public void wayNodesChanged(WayNodesChangedEvent event) {
047 listener.processDatasetEvent(event);
048 }
049
050 public void otherDatasetChange(AbstractDatasetChangedEvent event) {
051 listener.processDatasetEvent(event);
052 }
053
054 }