package me.osm.gazetter.striper.builders;
import java.nio.ByteBuffer;
import java.util.Comparator;
import me.osm.gazetter.striper.readers.PointsReader.PointsHandler;
import me.osm.gazetter.striper.readers.RelationsReader.RelationsHandler;
import me.osm.gazetter.striper.readers.WaysReader.WaysHandler;
public interface Builder extends RelationsHandler, WaysHandler, PointsHandler {
public static final class FirstLongFieldComparator implements
Comparator<ByteBuffer> {
@Override
public int compare(ByteBuffer bb1, ByteBuffer bb2) {
long l1 = bb1.getLong(0);
long l2 = bb2.getLong(0);
if (l1 == l2)
return 0;
return l1 > l2 ? 1 : -1;
}
}
public static final class SecondLongFieldComparator implements
Comparator<ByteBuffer> {
@Override
public int compare(ByteBuffer bb1, ByteBuffer bb2) {
long l1 = bb1.getLong(8);
long l2 = bb2.getLong(8);
if (l1 == l2)
return 0;
return l1 > l2 ? 1 : -1;
}
}
public static final FirstLongFieldComparator FIRST_LONG_FIELD_COMPARATOR = new FirstLongFieldComparator();
public static final SecondLongFieldComparator SECOND_LONG_FIELD_COMPARATOR = new SecondLongFieldComparator();
public void secondRunDoneRelations();
public void secondRunDoneWays();
public void firstRunDoneNodes();
public void firstRunDoneWays();
public void firstRunDoneRelations();
}