/**
* class to store simple information about a blocklet for less memory footprint. Since part number
* is always 0, so skip it.
*/
private static class SimpleBlockletInfo {
byte[] segmentId;
short blockNo;
short blockletNo;
SimpleBlockletInfo(byte[] segmentId, short blockNo, short blockletNo) {
this.segmentId = segmentId;
this.blockNo = blockNo;
this.blockletNo = blockletNo;
}
@Override
public int hashCode() {
int result = Arrays.hashCode(segmentId);
result = 31 * result + blockNo;
result = 31 * result + blockletNo;
return result;
}
@Override
public boolean equals(Object obj) {
return obj instanceof SimpleBlockletInfo
&& Arrays.equals(segmentId, ((SimpleBlockletInfo) obj).segmentId)
&& blockNo == (((SimpleBlockletInfo) obj).blockNo)
&& blockletNo == (((SimpleBlockletInfo) obj).blockletNo);
}
}