@Override
 public String toString() {
   return new ToStringBuilder(this, ToStringStyle.SHORT_PREFIX_STYLE)
       .append("getter", getter.toString())
       .toString();
 }
 @Override
 public void seek(ShardPosition position) throws InvalidSeekPositionException {
   getter.seek(position);
   buffer = null;
   it = null;
 }
 @Override
 public String getAssociatedShard() {
   return getter.getAssociatedShard();
 }
 // Post : buffer != null && it != null
 private void rebuffer() {
   buffer = getter.getNext(maxBufferSize);
   it = buffer.getRecords().iterator();
 }