001// License: GPL. For details, see LICENSE file. 002package 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 */ 010public 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 @Override 023 public void dataChanged(DataChangedEvent event) { 024 listener.processDatasetEvent(event); 025 } 026 027 @Override 028 public void nodeMoved(NodeMovedEvent event) { 029 listener.processDatasetEvent(event); 030 } 031 032 @Override 033 public void primitivesAdded(PrimitivesAddedEvent event) { 034 listener.processDatasetEvent(event); 035 } 036 037 @Override 038 public void primitivesRemoved(PrimitivesRemovedEvent event) { 039 listener.processDatasetEvent(event); 040 } 041 042 @Override 043 public void relationMembersChanged(RelationMembersChangedEvent event) { 044 listener.processDatasetEvent(event); 045 } 046 047 @Override 048 public void tagsChanged(TagsChangedEvent event) { 049 listener.processDatasetEvent(event); 050 } 051 052 @Override 053 public void wayNodesChanged(WayNodesChangedEvent event) { 054 listener.processDatasetEvent(event); 055 } 056 057 @Override 058 public void otherDatasetChange(AbstractDatasetChangedEvent event) { 059 listener.processDatasetEvent(event); 060 } 061 062}