protected final void doSetNorm(int doc, String field, byte value) throws IOException { Norm norm = (Norm) norms.get(field); if (norm == null) // not an indexed field return; norm.dirty = true; // mark it dirty normsDirty = true; norms(field)[doc] = value; // set the value }
public synchronized byte[] norms(String field) throws IOException { Norm norm = (Norm) norms.get(field); if (norm == null) // not an indexed field return null; if (norm.bytes == null) { // value not yet read byte[] bytes = new byte[maxDoc()]; norms(field, bytes, 0); norm.bytes = bytes; // cache it } return norm.bytes; }
protected final void doCommit() throws IOException { if (deletedDocsDirty) { // re-write deleted deletedDocs.write(directory(), segment + ".tmp"); directory().renameFile(segment + ".tmp", segment + ".del"); } if (undeleteAll && directory().fileExists(segment + ".del")) { directory().deleteFile(segment + ".del"); } if (normsDirty) { // re-write norms Enumeration values = norms.elements(); while (values.hasMoreElements()) { Norm norm = (Norm) values.nextElement(); if (norm.dirty) { norm.reWrite(); } } } deletedDocsDirty = false; normsDirty = false; undeleteAll = false; }
public void setEps(double val) { er = Norm.EnsureInRange(val, minEps, maxEps); }
public void setH(double val) { h = Norm.EnsureInRange(val, minH, maxH); }
public void setW(double val) { w = Norm.EnsureInRange(val, minW, maxW); }
public void setT(double val) { t = Norm.EnsureInRange(val, minT, maxT); }