// License: GPL. For details, see LICENSE file.
package org.openstreetmap.josm.data.osm.event;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
import org.openstreetmap.josm.data.osm.DataSet;
import org.openstreetmap.josm.data.osm.OsmPrimitive;
public class PrimitivesAddedEvent extends AbstractDatasetChangedEvent {
private final List<? extends OsmPrimitive> primitives;
private final boolean wasIncomplete;
public PrimitivesAddedEvent(DataSet dataSet, Collection<? extends OsmPrimitive> primitives, boolean wasIncomplete) {
super(dataSet);
this.primitives = Collections.unmodifiableList(new ArrayList<>(primitives));
this.wasIncomplete = wasIncomplete;
}
@Override
public void fire(DataSetListener listener) {
listener.primitivesAdded(this);
}
@Override
public List<? extends OsmPrimitive> getPrimitives() {
return primitives;
}
/**
*
* @return True if primitive was in dataset before (so it's not really added), but it was incomplete
*/
public boolean wasIncomplete() {
return wasIncomplete;
}
@Override
public DatasetEventType getType() {
return DatasetEventType.PRIMITIVES_ADDED;
}
}