// This software is released into the Public Domain. See copying.txt for details.
package org.openstreetmap.osmosis.tagtransform.v0_6;
import org.openstreetmap.osmosis.core.container.v0_6.ChangeContainer;
import org.openstreetmap.osmosis.core.container.v0_6.EntityContainer;
import org.openstreetmap.osmosis.core.task.common.ChangeAction;
import org.openstreetmap.osmosis.core.task.v0_6.ChangeSink;
import org.openstreetmap.osmosis.core.task.v0_6.ChangeSinkChangeSource;
import org.openstreetmap.osmosis.tagtransform.impl.TransformHelper;
public class TransformChangeTask extends TransformHelper<ChangeSink> implements ChangeSinkChangeSource {
public TransformChangeTask(String configFile, String statsFile) {
super(configFile, statsFile);
}
@Override
public void process(ChangeContainer changeContainer) {
if (!ChangeAction.Delete.equals(changeContainer.getAction())) {
EntityContainer output = super.processEntityContainer(changeContainer.getEntityContainer());
if (output != null) {
sink.process(new ChangeContainer(output, changeContainer.getAction()));
}
} else {
sink.process(changeContainer);
}
}
@Override
public void setChangeSink(ChangeSink changeSink) {
this.setSink(changeSink);
}
}