package com.revolsys.gis.parallel;
import com.revolsys.parallel.channel.Channel;
import com.revolsys.parallel.process.BaseInOutProcess;
import com.revolsys.record.Record;
public class OutsideBoundaryInOutProcess extends BaseInOutProcess<Record, Record> {
private OutsideBoundaryObjects outsideBoundaryObjects;
public OutsideBoundaryObjects getOutsideBoundaryObjects() {
return this.outsideBoundaryObjects;
}
@Override
protected void process(final Channel<Record> in, final Channel<Record> out, final Record object) {
if (this.outsideBoundaryObjects.boundaryContains(object)) {
this.outsideBoundaryObjects.removeObject(object);
out.write(object);
} else {
this.outsideBoundaryObjects.addObject(object);
}
}
public void setOutsideBoundaryObjects(final OutsideBoundaryObjects outsideBoundaryObjects) {
this.outsideBoundaryObjects = outsideBoundaryObjects;
}
}