private int getIndex ( byte [ ] name ) { if ( length ( ) == 0 || name == null ) { return - 1 ; } int h = hash ( name ) ; int i = index ( h ) ; int index = - 1 ; for ( HeaderEntry e = headerFields [ i ] ; e != null ; e = e . next ) { if ( e . hash == h && HpackUtil . equals ( name , e . name ) ) { index = e . index ; break ; } } return getIndex ( index ) ; }
Returns the lowest index value for the header field name in the dynamic table . Returns - 1 if the header field name is not in the dynamic table .