001    // License: GPL. For details, see LICENSE file.
002    package org.openstreetmap.josm.data.osm.event;
003    
004    import java.util.Collections;
005    import java.util.List;
006    
007    import org.openstreetmap.josm.data.osm.DataSet;
008    import org.openstreetmap.josm.data.osm.Node;
009    import org.openstreetmap.josm.data.osm.OsmPrimitive;
010    
011    public class NodeMovedEvent extends AbstractDatasetChangedEvent {
012    
013        private final Node node;
014    
015        public NodeMovedEvent(DataSet dataSet, Node node) {
016            super(dataSet);
017            this.node = node;
018        }
019    
020        @Override
021        public void fire(DataSetListener listener) {
022            listener.nodeMoved(this);
023        }
024    
025        public Node getNode() {
026            return node;
027        }
028    
029        @Override
030        public List<? extends OsmPrimitive> getPrimitives() {
031            return Collections.singletonList(node);
032        }
033    
034        @Override
035        public DatasetEventType getType() {
036            return DatasetEventType.NODE_MOVED;
037        }
038    
039    }