@Override
 public void close() {
   if (!closed) {
     try {
       if (index != null) {
         index.close();
       }
     } catch (IOException e) {
       log.error("error closing index", e);
     }
     try {
       file.close();
     } catch (IOException e) {
       log.error("error closing file", e);
     }
     closed = true;
   }
 }