private int getNameIndex(byte[] name) { int index = StaticTable.getIndex(name); if (index == -1) { index = getIndex(name); if (index >= 0) { index += StaticTable.length; } } return index; }
private int getNameIndex(byte[] name) { int index = StaticTable.getIndex(name); if (index == -1) { index = getIndex(name); if (index >= 0) { index += StaticTable.length; } } return index; }
/** * Returns the index value for the given header field in the static table. * Returns -1 if the header field is not in the static table. */ static int getIndex(byte[] name, byte[] value) { int index = getIndex(name); if (index == -1) { return -1; } // Note this assumes all entries for a given header field are sequential. while (index <= length) { HeaderField entry = getEntry(index); if (!HpackUtil.equals(name, entry.name)) { break; } if (HpackUtil.equals(value, entry.value)) { return index; } index++; } return -1; }
/** * Returns the index value for the given header field in the static table. * Returns -1 if the header field is not in the static table. */ static int getIndex(byte[] name, byte[] value) { int index = getIndex(name); if (index == -1) { return -1; } // Note this assumes all entries for a given header field are sequential. while (index <= length) { HeaderField entry = getEntry(index); if (!HpackUtil.equals(name, entry.name)) { break; } if (HpackUtil.equals(value, entry.value)) { return index; } index++; } return -1; }