Package io.netty.handler.codec.http2
Class DefaultHttp2Headers
- java.lang.Object
-
- io.netty.handler.codec.DefaultHeaders<java.lang.CharSequence,java.lang.CharSequence,Http2Headers>
-
- io.netty.handler.codec.http2.DefaultHttp2Headers
-
- All Implemented Interfaces:
Headers<java.lang.CharSequence,java.lang.CharSequence,Http2Headers>
,Http2Headers
,java.lang.Iterable<java.util.Map.Entry<java.lang.CharSequence,java.lang.CharSequence>>
public class DefaultHttp2Headers extends DefaultHeaders<java.lang.CharSequence,java.lang.CharSequence,Http2Headers> implements Http2Headers
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class io.netty.handler.codec.DefaultHeaders
DefaultHeaders.HeaderEntry<K,V>, DefaultHeaders.NameValidator<K>, DefaultHeaders.ValueValidator<V>
-
Nested classes/interfaces inherited from interface io.netty.handler.codec.http2.Http2Headers
Http2Headers.PseudoHeaderName
-
-
Field Summary
-
Fields inherited from class io.netty.handler.codec.DefaultHeaders
head
-
-
Constructor Summary
Constructors Constructor Description DefaultHttp2Headers()
Create a new instance.DefaultHttp2Headers(boolean validate)
Create a new instance.DefaultHttp2Headers(boolean validate, boolean validateValues, int arraySizeHint)
Create a new instance.DefaultHttp2Headers(boolean validate, int arraySizeHint)
Create a new instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.CharSequence
authority()
Gets theHttp2Headers.PseudoHeaderName.AUTHORITY
header ornull
if there is no such headerHttp2Headers
authority(java.lang.CharSequence value)
Sets theHttp2Headers.PseudoHeaderName.AUTHORITY
headerHttp2Headers
clear()
Removes all headers.boolean
contains(java.lang.CharSequence name, java.lang.CharSequence value)
Returnstrue
if a header with thename
andvalue
exists,false
otherwise.boolean
contains(java.lang.CharSequence name, java.lang.CharSequence value, boolean caseInsensitive)
Returnstrue
if a header with thename
andvalue
exists,false
otherwise.boolean
equals(java.lang.Object o)
int
hashCode()
java.lang.CharSequence
method()
Gets theHttp2Headers.PseudoHeaderName.METHOD
header ornull
if there is no such headerHttp2Headers
method(java.lang.CharSequence value)
Sets theHttp2Headers.PseudoHeaderName.METHOD
headerprotected DefaultHeaders.HeaderEntry<java.lang.CharSequence,java.lang.CharSequence>
newHeaderEntry(int h, java.lang.CharSequence name, java.lang.CharSequence value, DefaultHeaders.HeaderEntry<java.lang.CharSequence,java.lang.CharSequence> next)
java.lang.CharSequence
path()
Gets theHttp2Headers.PseudoHeaderName.PATH
header ornull
if there is no such headerHttp2Headers
path(java.lang.CharSequence value)
Sets theHttp2Headers.PseudoHeaderName.PATH
headerjava.lang.CharSequence
scheme()
Gets theHttp2Headers.PseudoHeaderName.SCHEME
header ornull
if there is no such headerHttp2Headers
scheme(java.lang.CharSequence value)
Sets theHttp2Headers.PseudoHeaderName.SCHEME
headerjava.lang.CharSequence
status()
Gets theHttp2Headers.PseudoHeaderName.STATUS
header ornull
if there is no such headerHttp2Headers
status(java.lang.CharSequence value)
Sets theHttp2Headers.PseudoHeaderName.STATUS
headerprotected void
validateName(DefaultHeaders.NameValidator<java.lang.CharSequence> validator, boolean forAdd, java.lang.CharSequence name)
Call out to the givenDefaultHeaders.NameValidator
to validate the given name.protected void
validateValue(DefaultHeaders.ValueValidator<java.lang.CharSequence> validator, java.lang.CharSequence name, java.lang.CharSequence value)
-
Methods inherited from class io.netty.handler.codec.DefaultHeaders
add, add, add, add, addBoolean, addByte, addChar, addDouble, addFloat, addImpl, addInt, addLong, addObject, addObject, addObject, addShort, addTimeMillis, contains, contains, containsBoolean, containsByte, containsChar, containsDouble, containsFloat, containsInt, containsLong, containsObject, containsShort, containsTimeMillis, copy, equals, get, get, getAll, getAllAndRemove, getAndRemove, getAndRemove, getBoolean, getBoolean, getBooleanAndRemove, getBooleanAndRemove, getByte, getByte, getByteAndRemove, getByteAndRemove, getChar, getChar, getCharAndRemove, getCharAndRemove, getDouble, getDouble, getDoubleAndRemove, getDoubleAndRemove, getFloat, getFloat, getFloatAndRemove, getFloatAndRemove, getInt, getInt, getIntAndRemove, getIntAndRemove, getLong, getLong, getLongAndRemove, getLongAndRemove, getShort, getShort, getShortAndRemove, getShortAndRemove, getTimeMillis, getTimeMillis, getTimeMillisAndRemove, getTimeMillisAndRemove, hashCode, isEmpty, iterator, names, nameValidator, remove, set, set, set, set, setAll, setBoolean, setByte, setChar, setDouble, setFloat, setInt, setLong, setObject, setObject, setObject, setShort, setTimeMillis, size, toString, valueConverter, valueIterator, valueValidator
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface io.netty.handler.codec.Headers
add, add, add, add, addBoolean, addByte, addChar, addDouble, addFloat, addInt, addLong, addObject, addObject, addObject, addShort, addTimeMillis, contains, containsBoolean, containsByte, containsChar, containsDouble, containsFloat, containsInt, containsLong, containsObject, containsShort, containsTimeMillis, get, get, getAll, getAllAndRemove, getAndRemove, getAndRemove, getBoolean, getBoolean, getBooleanAndRemove, getBooleanAndRemove, getByte, getByte, getByteAndRemove, getByteAndRemove, getChar, getChar, getCharAndRemove, getCharAndRemove, getDouble, getDouble, getDoubleAndRemove, getDoubleAndRemove, getFloat, getFloat, getFloatAndRemove, getFloatAndRemove, getInt, getInt, getIntAndRemove, getIntAndRemove, getLong, getLong, getLongAndRemove, getLongAndRemove, getShort, getShort, getShortAndRemove, getShortAndRemove, getTimeMillis, getTimeMillis, getTimeMillisAndRemove, getTimeMillisAndRemove, isEmpty, names, remove, set, set, set, set, setAll, setBoolean, setByte, setChar, setDouble, setFloat, setInt, setLong, setObject, setObject, setObject, setShort, setTimeMillis, size
-
Methods inherited from interface io.netty.handler.codec.http2.Http2Headers
iterator, valueIterator
-
-
-
-
Constructor Detail
-
DefaultHttp2Headers
public DefaultHttp2Headers()
Create a new instance.Header names will be validated according to rfc7540.
-
DefaultHttp2Headers
public DefaultHttp2Headers(boolean validate)
Create a new instance.- Parameters:
validate
-true
to validate header names according to rfc7540.false
to not validate header names.
-
DefaultHttp2Headers
public DefaultHttp2Headers(boolean validate, int arraySizeHint)
Create a new instance.- Parameters:
validate
-true
to validate header names according to rfc7540.false
to not validate header names.arraySizeHint
- A hint as to how large the hash data structure should be. The next positive power of two will be used. An upper bound may be enforced.- See Also:
DefaultHttp2Headers(boolean, boolean, int)
-
DefaultHttp2Headers
public DefaultHttp2Headers(boolean validate, boolean validateValues, int arraySizeHint)
Create a new instance.- Parameters:
validate
-true
to validate header names according to rfc7540.false
to not validate header names.validateValues
-true
to validate header values according to rfc7230 and rfc5234. Otherwise,false
(the default) to not validate values.arraySizeHint
- A hint as to how large the hash data structure should be. The next positive power of two will be used. An upper bound may be enforced.
-
-
Method Detail
-
validateName
protected void validateName(DefaultHeaders.NameValidator<java.lang.CharSequence> validator, boolean forAdd, java.lang.CharSequence name)
Description copied from class:DefaultHeaders
Call out to the givenDefaultHeaders.NameValidator
to validate the given name.- Overrides:
validateName
in classDefaultHeaders<java.lang.CharSequence,java.lang.CharSequence,Http2Headers>
- Parameters:
validator
- the validator to useforAdd
-true
if this validation is for adding to the headers, orfalse
if this is for setting (overwriting) the given header.name
- the name to validate.
-
validateValue
protected void validateValue(DefaultHeaders.ValueValidator<java.lang.CharSequence> validator, java.lang.CharSequence name, java.lang.CharSequence value)
- Overrides:
validateValue
in classDefaultHeaders<java.lang.CharSequence,java.lang.CharSequence,Http2Headers>
-
clear
public Http2Headers clear()
Description copied from interface:Headers
Removes all headers. After a call to this methodHeaders.size()
equals0
.- Specified by:
clear
in interfaceHeaders<java.lang.CharSequence,java.lang.CharSequence,Http2Headers>
- Overrides:
clear
in classDefaultHeaders<java.lang.CharSequence,java.lang.CharSequence,Http2Headers>
- Returns:
this
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equals
in classDefaultHeaders<java.lang.CharSequence,java.lang.CharSequence,Http2Headers>
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classDefaultHeaders<java.lang.CharSequence,java.lang.CharSequence,Http2Headers>
-
method
public Http2Headers method(java.lang.CharSequence value)
Description copied from interface:Http2Headers
Sets theHttp2Headers.PseudoHeaderName.METHOD
header- Specified by:
method
in interfaceHttp2Headers
-
scheme
public Http2Headers scheme(java.lang.CharSequence value)
Description copied from interface:Http2Headers
Sets theHttp2Headers.PseudoHeaderName.SCHEME
header- Specified by:
scheme
in interfaceHttp2Headers
-
authority
public Http2Headers authority(java.lang.CharSequence value)
Description copied from interface:Http2Headers
Sets theHttp2Headers.PseudoHeaderName.AUTHORITY
header- Specified by:
authority
in interfaceHttp2Headers
-
path
public Http2Headers path(java.lang.CharSequence value)
Description copied from interface:Http2Headers
Sets theHttp2Headers.PseudoHeaderName.PATH
header- Specified by:
path
in interfaceHttp2Headers
-
status
public Http2Headers status(java.lang.CharSequence value)
Description copied from interface:Http2Headers
Sets theHttp2Headers.PseudoHeaderName.STATUS
header- Specified by:
status
in interfaceHttp2Headers
-
method
public java.lang.CharSequence method()
Description copied from interface:Http2Headers
Gets theHttp2Headers.PseudoHeaderName.METHOD
header ornull
if there is no such header- Specified by:
method
in interfaceHttp2Headers
-
scheme
public java.lang.CharSequence scheme()
Description copied from interface:Http2Headers
Gets theHttp2Headers.PseudoHeaderName.SCHEME
header ornull
if there is no such header- Specified by:
scheme
in interfaceHttp2Headers
-
authority
public java.lang.CharSequence authority()
Description copied from interface:Http2Headers
Gets theHttp2Headers.PseudoHeaderName.AUTHORITY
header ornull
if there is no such header- Specified by:
authority
in interfaceHttp2Headers
-
path
public java.lang.CharSequence path()
Description copied from interface:Http2Headers
Gets theHttp2Headers.PseudoHeaderName.PATH
header ornull
if there is no such header- Specified by:
path
in interfaceHttp2Headers
-
status
public java.lang.CharSequence status()
Description copied from interface:Http2Headers
Gets theHttp2Headers.PseudoHeaderName.STATUS
header ornull
if there is no such header- Specified by:
status
in interfaceHttp2Headers
-
contains
public boolean contains(java.lang.CharSequence name, java.lang.CharSequence value)
Description copied from interface:Headers
Returnstrue
if a header with thename
andvalue
exists,false
otherwise.The
Object.equals(Object)
method is used to test for equality ofvalue
.- Specified by:
contains
in interfaceHeaders<java.lang.CharSequence,java.lang.CharSequence,Http2Headers>
- Overrides:
contains
in classDefaultHeaders<java.lang.CharSequence,java.lang.CharSequence,Http2Headers>
- Parameters:
name
- the header namevalue
- the header value of the header to find
-
contains
public boolean contains(java.lang.CharSequence name, java.lang.CharSequence value, boolean caseInsensitive)
Description copied from interface:Http2Headers
Returnstrue
if a header with thename
andvalue
exists,false
otherwise.If
caseInsensitive
istrue
then a case insensitive compare is done on the value.- Specified by:
contains
in interfaceHttp2Headers
- Parameters:
name
- the name of the header to findvalue
- the value of the header to findcaseInsensitive
-true
then a case insensitive compare is run to compare values. otherwise a case sensitive compare is run to compare values.
-
newHeaderEntry
protected final DefaultHeaders.HeaderEntry<java.lang.CharSequence,java.lang.CharSequence> newHeaderEntry(int h, java.lang.CharSequence name, java.lang.CharSequence value, DefaultHeaders.HeaderEntry<java.lang.CharSequence,java.lang.CharSequence> next)
- Overrides:
newHeaderEntry
in classDefaultHeaders<java.lang.CharSequence,java.lang.CharSequence,Http2Headers>
-
-