public void close() throws IRException { try { br.close(); } catch (IOException e) { throw new IRException(e); } }
// int limit = 0; public boolean hasNext() throws IRException { // if(limit++ >= 1200000) // return false; int size = fieldSettingList.size(); String key = null; String value = null; String line = null; document = new Document(size); count = 0; while (count < size) { try { FieldSetting fs = fieldSettingList.get(count); line = br.readLine(); // logger.debug("line = "+line); if (line == null) return false; // if(line.startsWith(DBReader.BACKUP_HEADER) || line.startsWith("insert_fastcat_id_")){ if (line.startsWith("insert_fastcat_id_")) { continue; } if (line.length() == 0) { continue; } int p = line.indexOf(":"); if (p > 0) { key = line.substring(0, p); value = line.substring(p + 1); } if (key.equalsIgnoreCase(fs.name)) { document.set(count, fs.createField(value)); count++; } else { logger.warn( "skip! " + key + "(" + fs.name + ")count=" + key.equalsIgnoreCase(fs.name) + ", fs.name=" + fs.name + ", value=" + value); } } catch (IOException e) { logger.error(e.getMessage(), e); } } return true; }