Interface HeaderFields<C extends Cookie,B extends HeaderFields<C,B>>

Type Parameters:
C - the generic type
B - the generic type
All Superinterfaces:
HttpFields<B>, Map<String,List<String>>
All Known Implementing Classes:
AbstractHeaderFields, RequestHeaderFields, ResponseHeaderFields

public interface HeaderFields<C extends Cookie,B extends HeaderFields<C,B>> extends HttpFields<B>
The HeaderFields reflect the structure of a HTTP header and may be used to represent a HTTP header.
  • Field Details

  • Method Details

    • getAllowMethods

      default List<HttpMethod> getAllowMethods()
      Gets the Allow entity-Header-Field HeaderField.ALLOW: "... The Allow entity-Header-Field lists the set of methods supported by the resource ... The purpose of this field is strictly to inform the recipient of valid methods associated with the resource. An Allow header field MUST be present in a 405 (Method Not Allowed) response ..."
      Returns:
      The HTTP-Methods allowed for the resource.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • putAllowMethods

      default List<HttpMethod> putAllowMethods(HttpMethod... aHttpMethods)
      Sets the Allow entity-Header-Field HeaderField.ALLOW: "... The Allow entity-Header-Field lists the set of methods supported by the resource ... The purpose of this field is strictly to inform the recipient of valid methods associated with the resource. An Allow header field MUST be present in a 405 (Method Not Allowed) response ..."
      Parameters:
      aHttpMethods - The HTTP-Methods allowed for the resource.
      Returns:
      The replaced element (if any, else null).
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • putAllowMethods

      default List<HttpMethod> putAllowMethods(List<HttpMethod> aHttpMethods)
      Sets the Allow entity-Header-Field HeaderField.ALLOW: "... The Allow entity-Header-Field lists the set of methods supported by the resource ... The purpose of this field is strictly to inform the recipient of valid methods associated with the resource. An Allow header field MUST be present in a 405 (Method Not Allowed) response ..."
      Parameters:
      aHttpMethods - The HTTP-Methods allowed for the resource.
      Returns:
      The replaced element (if any, else null).
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • withAllowMethods

      default B withAllowMethods(HttpMethod... aHttpMethods)
      Sets the Allow entity-Header-Field HeaderField.ALLOW: "... The Allow entity-Header-Field lists the set of methods supported by the resource ... The purpose of this field is strictly to inform the recipient of valid methods associated with the resource. An Allow header field MUST be present in a 405 (Method Not Allowed) response ..."
      Parameters:
      aHttpMethods - The HTTP-Methods allowed for the resource.
      Returns:
      This object as of the Builder-Pattern.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • withAllowMethods

      default B withAllowMethods(List<HttpMethod> aHttpMethods)
      Sets the Allow entity-Header-Field HeaderField.ALLOW: "... The Allow entity-Header-Field lists the set of methods supported by the resource ... The purpose of this field is strictly to inform the recipient of valid methods associated with the resource. An Allow header field MUST be present in a 405 (Method Not Allowed) response ..."
      Parameters:
      aHttpMethods - The HTTP-Methods allowed for the resource.
      Returns:
      This object as of the Builder-Pattern.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • removeAllowMethods

      default List<HttpMethod> removeAllowMethods()
      Removes the Allow entity-Header-Field HeaderField.ALLOW: "... The Allow entity-Header-Field lists the set of methods supported by the resource ... The purpose of this field is strictly to inform the recipient of valid methods associated with the resource. An Allow header field MUST be present in a 405 (Method Not Allowed) response ..."
      Returns:
      The value being removed (or null if none was set).
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • getContentLength

      default Integer getContentLength()
      Gets the Content-Length request-Header-Field HeaderField.CONTENT_LENGTH: "... The Content-Length request-Header-Field contains information about the user agent originating the request. This is for statistical purposes, the tracing of protocol violations, and automated recognition of user agents for the sake of tailoring responses to avoid particular user agent limitations. User agents SHOULD include this field with requests ..."
      Returns:
      The according user agent.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • putContentLength

      default Integer putContentLength(Integer aContentLength)
      Sets the Content-Length request-Header-Field HeaderField.CONTENT_LENGTH: "... The Content-Length request-Header-Field contains information about the user agent originating the request. This is for statistical purposes, the tracing of protocol violations, and automated recognition of user agents for the sake of tailoring responses to avoid particular user agent limitations. User agents SHOULD include this field with requests ..."
      Parameters:
      aContentLength - The according user agent.
      Returns:
      the string
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • withContentLength

      default B withContentLength(Integer aContentLength)
      Sets he Content-Length request-Header-Field HeaderField.CONTENT_LENGTH: "... The Content-Length request-Header-Field contains information about the user agent originating the request. This is for statistical purposes, the tracing of protocol violations, and automated recognition of user agents for the sake of tailoring responses to avoid particular user agent limitations. User agents SHOULD include this field with requests ..."
      Parameters:
      aContentLength - The according user agent.
      Returns:
      This object as of the Builder-Pattern.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • removeContentLength

      default Integer removeContentLength()
      Removes he Content-Length request-Header-Field HeaderField.CONTENT_LENGTH : "... The Content-Length request-Header-Field contains information about the user agent originating the request. This is for statistical purposes, the tracing of protocol violations, and automated recognition of user agents for the sake of tailoring responses to avoid particular user agent limitations. User agents SHOULD include this field with requests ..."
      Returns:
      The value being removed (or null if none was set).
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • getContentType

      default ContentType getContentType()
      Gets the Content-Type entity-Header-Field HeaderField.CONTENT_TYPE: "... The Content-Type entity-Header-Field indicates the media type of the entity-body sent to the recipient ..."
      Returns:
      The media type being used for the body.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • getUnknownContentTypes

      default List<String> getUnknownContentTypes()
      Gets the unresolvable (unknown) Content-Type request-Header-Field HeaderField.CONTENT_TYPE. E.g. the ones which cannot be mapped by the enumeration MediaType.
      Returns:
      the unknown content types
      See Also:
    • putContentType

      default ContentType putContentType(HttpMediaType aHttpMediaType)
      Sets the Content-Type entity-Header-Field HeaderField.CONTENT_TYPE. You may pass a MediaType or a ContentType instance as them both implement the HttpMediaTypeAccessor.HttpMediaTypeProvider interface: "... The Content-Type entity-Header-Field indicates the media type of the entity-body sent to the recipient ..."
      Parameters:
      aHttpMediaType - The media type used for the body.
      Returns:
      The replaced element (if any, else null).
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • putContentType

      default ContentType putContentType(MediaType aMediaType, Map<String,String> aParameters)
      Sets the Content-Type entity-Header-Field HeaderField.CONTENT_TYPE. : "... The Content-Type entity-Header-Field indicates the media type of the entity-body sent to the recipient ..."
      Parameters:
      aMediaType - The media type used for the body.
      aParameters - The Content-Type's parameters.
      Returns:
      The replaced element (if any, else null).
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • withContentType

      default B withContentType(HttpMediaType aHttpMediaType)
      Sets the Content-Type entity-Header-Field HeaderField.CONTENT_TYPE. You may pass a MediaType or a ContentType instance as them both implement the HttpMediaTypeAccessor.HttpMediaTypeProvider interface: "... The Content-Type entity-Header-Field indicates the media type of the entity-body sent to the recipient ..."
      Parameters:
      aHttpMediaType - The media type used for the body.
      Returns:
      This object as of the Builder-Pattern.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • withContentType

      default B withContentType(MediaType aMediaType, Map<String,String> aParameters)
      Sets the Content-Type's MediaType and the parameters for the HTTP body.
      Parameters:
      aMediaType - The media type used for the body.
      aParameters - The Content-Type's parameters.
      Returns:
      This object as of the Builder-Pattern.
    • removeContentType

      default ContentType removeContentType()
      Removes the Content-Type entity-Header-Field HeaderField.CONTENT_TYPE. : "... The Content-Type entity-Header-Field indicates the media type of the entity-body sent to the recipient ..."
      Returns:
      The value being removed (or null if none was set).
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • getAcceptTypes

      default List<ContentType> getAcceptTypes()
      Gets the Accept request-Header-Field HeaderField.ACCEPT: "... The Accept request-Header-Field can be used to specify certain media types which are acceptable for the response. Accept headers can be used to indicate that the request is specifically limited to a small set of desired ..."
      Returns:
      The expected (supported) kinds of MediaType and the according parameters (being actually instances of the ContentType type).
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • getUnknownAcceptTypes

      default List<String> getUnknownAcceptTypes()
      Gets the unresolvable (unknown) Accept request-Header-Field HeaderField.ACCEPT. E.g. the ones which cannot be mapped by the enumeration MediaType.
      Returns:
      the unknown accept types
      See Also:
    • putAcceptTypes

      default List<ContentType> putAcceptTypes(HttpMediaType... aHttpMediaType)
      Sets the Accept request-Header-Field HeaderField.ACCEPT. You may pass a MediaType or a ContentType instance as them both implement the HttpMediaTypeAccessor.HttpMediaTypeProvider interface: "... The Accept request-Header-Field can be used to specify certain media types which are acceptable for the response. Accept headers can be used to indicate that the request is specifically limited to a small set of desired types ..."
      Parameters:
      aHttpMediaType - The according HttpMediaTypeAccessor.HttpMediaTypeProvider.
      Returns:
      The replaced element (if any, else null).
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • putAcceptTypes

      default List<ContentType> putAcceptTypes(List<? extends HttpMediaType> aHttpMediaTypes)
      Sets the Accept request-Header-Field HeaderField.ACCEPT. You may pass a MediaType or a ContentType instance as them both implement the HttpMediaTypeAccessor.HttpMediaTypeProvider interface: "... The Accept request-Header-Field can be used to specify certain media types which are acceptable for the response. Accept headers can be used to indicate that the request is specifically limited to a small set of desired types ..."
      Parameters:
      aHttpMediaTypes - The according HttpMediaTypeAccessor.HttpMediaTypeProvider.
      Returns:
      The replaced element (if any, else null).
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • withAcceptTypes

      default B withAcceptTypes(HttpMediaType... aHttpMediaType)
      Sets the Accept request-Header-Field HeaderField.ACCEPT. You may pass a MediaType or a ContentType instance as them both implement the HttpMediaTypeAccessor.HttpMediaTypeProvider interface: "... The Accept request-Header-Field can be used to specify certain media types which are acceptable for the response. Accept headers can be used to indicate that the request is specifically limited to a small set of desired types ..."
      Parameters:
      aHttpMediaType - The according HttpMediaTypeAccessor.HttpMediaTypeProvider.
      Returns:
      This object as of the Builder-Pattern.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • withAcceptTypes

      default B withAcceptTypes(List<? extends HttpMediaType> aHttpMediaType)
      Sets the Accept request-Header-Field HeaderField.ACCEPT. You may pass a MediaType or a ContentType instance as them both implement the HttpMediaTypeAccessor.HttpMediaTypeProvider interface: "... The Accept request-Header-Field can be used to specify certain media types which are acceptable for the response. Accept headers can be used to indicate that the request is specifically limited to a small set of desired types ..."
      Parameters:
      aHttpMediaType - The according HttpMediaTypeAccessor.HttpMediaTypeProvider.
      Returns:
      This object as of the Builder-Pattern.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • removeAcceptTypes

      default List<ContentType> removeAcceptTypes()
      Removes the Accept request-Header-Field HeaderField.ACCEPT: "... The Accept request-Header-Field can be used to specify certain media types which are acceptable for the response. Accept headers can be used to indicate that the request is specifically limited to a small set of desired types ..."
      Returns:
      The value being removed (or null if none was set).
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • getAcceptCharsets

      default List<String> getAcceptCharsets()
      Gets the Accept-Charset request-Header-Field HeaderField.ACCEPT_CHARSET. "... The Accept-Charset request-Header-Field can be used to indicate what character sets are acceptable for the response. This field allows clients capable of understanding more comprehensive or https://www.metacodes.pro- purpose character sets to signal that capability to a server which is capable of representing documents in those character sets ..."
      Returns:
      The Accept-Charset expected by a client from a server.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • putAcceptCharsets

      default List<String> putAcceptCharsets(String... aAcceptCharsets)
      Sets the Accept-Charset request-Header-Field HeaderField.ACCEPT_CHARSET. "... The Accept-Charset request-Header-Field can be used to indicate what character sets are acceptable for the response. This field allows clients capable of understanding more comprehensive or https://www.metacodes.pro- purpose character sets to signal that capability to a server which is capable of representing documents in those character sets ..."
      Parameters:
      aAcceptCharsets - The Accept-Charset expected by a client from a server.
      Returns:
      The replaced elements (if any, else null).
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • putAcceptCharsets

      default List<String> putAcceptCharsets(List<String> aAcceptCharsets)
      Sets the Accept-Charset request-Header-Field HeaderField.ACCEPT_CHARSET. "... The Accept-Charset request-Header-Field can be used to indicate what character sets are acceptable for the response. This field allows clients capable of understanding more comprehensive or https://www.metacodes.pro- purpose character sets to signal that capability to a server which is capable of representing documents in those character sets ..."
      Parameters:
      aAcceptCharsets - The Accept-Charset expected by a client from a server.
      Returns:
      The replaced elements (if any, else null).
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • withAcceptCharsets

      default B withAcceptCharsets(List<String> aAcceptCharsets)
      Sets the the Accept-Charset request-Header-Field HeaderField.ACCEPT_CHARSET. "... The Accept-Charset request-Header-Field can be used to indicate what character sets are acceptable for the response. This field allows clients capable of understanding more comprehensive or https://www.metacodes.pro- purpose character sets to signal that capability to a server which is capable of representing documents in those character sets ..."
      Parameters:
      aAcceptCharsets - The Accept-Charset expected by a client from a server.
      Returns:
      This object as of the Builder-Pattern.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • withAcceptCharsets

      default B withAcceptCharsets(String... aAcceptCharsets)
      Sets the Accept-Charset request-Header-Field HeaderField.ACCEPT_CHARSET. "... The Accept-Charset request-Header-Field can be used to indicate what character sets are acceptable for the response. This field allows clients capable of understanding more comprehensive or https://www.metacodes.pro- purpose character sets to signal that capability to a server which is capable of representing documents in those character sets ..."
      Parameters:
      aAcceptCharsets - The Accept-Charset expected by a client from a server.
      Returns:
      This object as of the Builder-Pattern.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • removeAcceptCharsets

      default List<String> removeAcceptCharsets()
      Removes the Accept-Charset request-Header-Field HeaderField.ACCEPT_CHARSET. "... The Accept-Charset request-Header-Field can be used to indicate what character sets are acceptable for the response. This field allows clients capable of understanding more comprehensive or https://www.metacodes.pro- purpose character sets to signal that capability to a server which is capable of representing documents in those character sets ..."
      Returns:
      The value being removed (or null if none was set).
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • getAcceptEncodings

      default List<ContentEncoding> getAcceptEncodings()
      Gets the the Content-Encoding entity-Header-Field HeaderField.CONTENT_ENCODING: "... The Content-Encoding entity-Header-Field is used as a modifier to the media-type. When present, its value indicates what additional content codings have been applied to the entity-body, and thus what decoding mechanisms must be applied in order to obtain the media-type referenced by the Content-Type Header-Field. Content-Encoding is primarily used to allow a document to be compressed without losing the identity of its underlying media type ..."
      Returns:
      The expected (supported) kinds of encodings.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
      • "https://developer.mozilla.org/de/docs/Web/HTTP/Headers/Content-Encoding"
    • putAcceptEncodings

      default List<ContentEncoding> putAcceptEncodings(ContentEncoding... aEncodings)
      Sets the the Content-Encoding entity-Header-Field HeaderField.CONTENT_ENCODING: "... The Content-Encoding entity-Header-Field is used as a modifier to the media-type. When present, its value indicates what additional content codings have been applied to the entity-body, and thus what decoding mechanisms must be applied in order to obtain the media-type referenced by the Content-Type Header-Field. Content-Encoding is primarily used to allow a document to be compressed without losing the identity of its underlying media type ..."
      Parameters:
      aEncodings - The according encodings.
      Returns:
      the list
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
      • "https://developer.mozilla.org/de/docs/Web/HTTP/Headers/Content-Encoding"
    • putAcceptEncodings

      default List<ContentEncoding> putAcceptEncodings(List<ContentEncoding> aEncodings)
      Sets the the Content-Encoding entity-Header-Field HeaderField.CONTENT_ENCODING: "... The Content-Encoding entity-Header-Field is used as a modifier to the media-type. When present, its value indicates what additional content codings have been applied to the entity-body, and thus what decoding mechanisms must be applied in order to obtain the media-type referenced by the Content-Type Header-Field. Content-Encoding is primarily used to allow a document to be compressed without losing the identity of its underlying media type ..."
      Parameters:
      aEncodings - The according encodings.
      Returns:
      the list
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
      • "https://developer.mozilla.org/de/docs/Web/HTTP/Headers/Content-Encoding"
    • withAcceptEncodings

      default B withAcceptEncodings(ContentEncoding... aEncodings)
      Sets the the Content-Encoding entity-Header-Field HeaderField.CONTENT_ENCODING: "... The Content-Encoding entity-Header-Field is used as a modifier to the media-type. When present, its value indicates what additional content codings have been applied to the entity-body, and thus what decoding mechanisms must be applied in order to obtain the media-type referenced by the Content-Type Header-Field. Content-Encoding is primarily used to allow a document to be compressed without losing the identity of its underlying media type ..."
      Parameters:
      aEncodings - The according encodings.
      Returns:
      This object as of the Builder-Pattern.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
      • "https://developer.mozilla.org/de/docs/Web/HTTP/Headers/Content-Encoding"
    • withAcceptEncodings

      default B withAcceptEncodings(List<ContentEncoding> aEncodings)
      Sets the the Content-Encoding entity-Header-Field HeaderField.CONTENT_ENCODING: "... The Content-Encoding entity-Header-Field is used as a modifier to the media-type. When present, its value indicates what additional content codings have been applied to the entity-body, and thus what decoding mechanisms must be applied in order to obtain the media-type referenced by the Content-Type Header-Field. Content-Encoding is primarily used to allow a document to be compressed without losing the identity of its underlying media type ..."
      Parameters:
      aEncodings - The according encodings.
      Returns:
      This object as of the Builder-Pattern.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
      • "https://developer.mozilla.org/de/docs/Web/HTTP/Headers/Content-Encoding"
    • removeAcceptEncodings

      default List<ContentEncoding> removeAcceptEncodings()
      Removes the the Content-Encoding entity-Header-Field HeaderField.CONTENT_ENCODING: "... The Content-Encoding entity-Header-Field is used as a modifier to the media-type. When present, its value indicates what additional content codings have been applied to the entity-body, and thus what decoding mechanisms must be applied in order to obtain the media-type referenced by the Content-Type Header-Field. Content-Encoding is primarily used to allow a document to be compressed without losing the identity of its underlying media type ..."
      Returns:
      The value being removed (or null if none was set).
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • getAcceptLanguages

      default List<Locale> getAcceptLanguages()
      Gets the the Content-Encoding entity-Header-Field HeaderField.ACCEPT_LANGUAGE:
      Returns:
      The expected (supported) kinds of languages.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • putAcceptLanguages

      default List<Locale> putAcceptLanguages(Locale... aLanguages)
      Sets the the Content-Encoding entity-Header-Field HeaderField.ACCEPT_LANGUAGE:
      Parameters:
      aLanguages - The according languages.
      Returns:
      the list
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • putAcceptLanguages

      default List<Locale> putAcceptLanguages(List<Locale> aLanguages)
      Sets the the Content-Encoding entity-Header-Field HeaderField.ACCEPT_LANGUAGE:
      Parameters:
      aLanguages - The according languages.
      Returns:
      the list
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • withAcceptLanguages

      default B withAcceptLanguages(Locale... aLanguages)
      Sets the the Content-Encoding entity-Header-Field HeaderField.ACCEPT_LANGUAGE:
      Parameters:
      aLanguages - The according languages.
      Returns:
      This object as of the Builder-Pattern.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • withAcceptLanguages

      default B withAcceptLanguages(List<Locale> aLanguages)
      Sets the the Content-Encoding entity-Header-Field HeaderField.ACCEPT_LANGUAGE: "... The Accept-Language request HTTP header advertises which languages the client is able to understand, and which locale variant is preferred ..."
      Parameters:
      aLanguages - The according languages.
      Returns:
      This object as of the Builder-Pattern.
      See Also:
      • "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Language"
    • removeAcceptLanguages

      default List<Locale> removeAcceptLanguages()
      Removes the the Content-Encoding entity-Header-Field HeaderField.ACCEPT_LANGUAGE: "... The Accept-Language request HTTP header advertises which languages the client is able to understand, and which locale variant is preferred ..."
      Returns:
      The value being removed (or null if none was set).
      See Also:
      • "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Language"
    • getContentEncoding

      default ContentEncoding getContentEncoding()
      Gets the Content-Encoding entity-Header-Field HeaderField.CONTENT_ENCODING: "... The Content-Encoding entity-Header-Field is used as a modifier to the media-type. When present, its value indicates what additional content codings have been applied to the entity-body, and thus what decoding mechanisms must be applied in order to obtain the media-type referenced by the Content-Type Header-Field. Content-Encoding is primarily used to allow a document to be compressed without losing the identity of its underlying media type ..."
      Returns:
      The communication partner's HTTP body's encoding.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • putContentEncoding

      default ContentEncoding putContentEncoding(ContentEncoding aEncoding)
      Sets the Content-Encoding entity-Header-Field HeaderField.CONTENT_ENCODING: "... The Content-Encoding entity-Header-Field is used as a modifier to the media-type. When present, its value indicates what additional content codings have been applied to the entity-body, and thus what decoding mechanisms must be applied in order to obtain the media-type referenced by the Content-Type Header-Field. Content-Encoding is primarily used to allow a document to be compressed without losing the identity of its underlying media type ..."
      Parameters:
      aEncoding - The HTTP body's content encoding.
      Returns:
      the content encoding
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • withContentEncoding

      default B withContentEncoding(ContentEncoding aEncoding)
      Sets the Content-Encoding entity-Header-Field HeaderField.CONTENT_ENCODING: "... The Content-Encoding entity-Header-Field is used as a modifier to the media-type. When present, its value indicates what additional content codings have been applied to the entity-body, and thus what decoding mechanisms must be applied in order to obtain the media-type referenced by the Content-Type Header-Field. Content-Encoding is primarily used to allow a document to be compressed without losing the identity of its underlying media type ..."
      Parameters:
      aEncoding - The HTTP body's content encoding.
      Returns:
      This object as of the Builder-Pattern.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • removeContentEncoding

      default ContentEncoding removeContentEncoding()
      Removes the Content-Encoding entity-Header-Field HeaderField.CONTENT_ENCODING: "... The Content-Encoding entity-Header-Field is used as a modifier to the media-type. When present, its value indicates what additional content codings have been applied to the entity-body, and thus what decoding mechanisms must be applied in order to obtain the media-type referenced by the Content-Type Header-Field. Content-Encoding is primarily used to allow a document to be compressed without losing the identity of its underlying media type ..."
      Returns:
      The value being removed (or null if none was set).
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • getUserAgent

      default String getUserAgent()
      Gets the User-Agent request-Header-Field HeaderField.USER_AGENT: "... The User-Agent request-Header-Field contains information about the user agent originating the request. This is for statistical purposes, the tracing of protocol violations, and automated recognition of user agents for the sake of tailoring responses to avoid particular user agent limitations. User agents SHOULD include this field with requests ..."
      Returns:
      The according user agent.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • putUserAgent

      default String putUserAgent(String aUserAgent)
      Sets the User-Agent request-Header-Field HeaderField.USER_AGENT: "... The User-Agent request-Header-Field contains information about the user agent originating the request. This is for statistical purposes, the tracing of protocol violations, and automated recognition of user agents for the sake of tailoring responses to avoid particular user agent limitations. User agents SHOULD include this field with requests ..."
      Parameters:
      aUserAgent - The according user agent.
      Returns:
      the string
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • withUserAgent

      default B withUserAgent(String aUserAgent)
      Sets he User-Agent request-Header-Field HeaderField.USER_AGENT: "... The User-Agent request-Header-Field contains information about the user agent originating the request. This is for statistical purposes, the tracing of protocol violations, and automated recognition of user agents for the sake of tailoring responses to avoid particular user agent limitations. User agents SHOULD include this field with requests ..."
      Parameters:
      aUserAgent - The according user agent.
      Returns:
      This object as of the Builder-Pattern.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • removeUserAgent

      default String removeUserAgent()
      Removes he User-Agent request-Header-Field HeaderField.USER_AGENT : "... The User-Agent request-Header-Field contains information about the user agent originating the request. This is for statistical purposes, the tracing of protocol violations, and automated recognition of user agents for the sake of tailoring responses to avoid particular user agent limitations. User agents SHOULD include this field with requests ..."
      Returns:
      The value being removed (or null if none was set).
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • getHost

      default String getHost()
      Gets the Host request-Header-Field HeaderField.HOST: "... The Host request-Header-Field specifies the Internet host and port number of the resource being requested, as obtained from the original URI given by the user or referring resource ..."
      Returns:
      The according host.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • putHost

      default String putHost(String aHost)
      Sets the Host request-Header-Field HeaderField.HOST: "... The Host request-Header-Field specifies the Internet host and port number of the resource being requested, as obtained from the original URI given by the user or referring resource ..."
      Parameters:
      aHost - The according host.
      Returns:
      the string
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • withHost

      default B withHost(String aHost)
      Sets the Host request-Header-Field HeaderField.HOST: "... The Host request-Header-Field specifies the Internet host and port number of the resource being requested, as obtained from the original URI given by the user or referring resource ..."
      Parameters:
      aHost - The according host.
      Returns:
      This object as of the Builder-Pattern.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • removeHost

      default String removeHost()
      Removes the Host request-Header-Field HeaderField.HOST: "... The Host request-Header-Field specifies the Internet host and port number of the resource being requested, as obtained from the original URI given by the user or referring resource ..."
      Returns:
      The value being removed (or null if none was set).
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • getRequestId

      default String getRequestId()
      Gets the (interprocess) Request-Correlation TID field HeaderField.REQUEST_ID: A Request-Correlation TID is an TID to uniquely identify an entity (request) across multiple systems.
      Returns:
      The according Request-Correlation TID.
    • putRequestId

      default String putRequestId(String aRequestId)
      Sets the (interprocess) Request-Correlation TID field HeaderField.REQUEST_ID: A Request-Correlation TID is an TID to uniquely identify an entity (request) across multiple systems.
      Parameters:
      aRequestId - The according Request-Correlation TID.
      Returns:
      The value being removed (or null if none was set).
    • withRequestId

      default B withRequestId(String aRequestId)
      Sets the (interprocess) Request-Correlation TID field HeaderField.REQUEST_ID: A Request-Correlation TID is an TID to uniquely identify an entity (request) across multiple systems.
      Parameters:
      aRequestId - The according Request-Correlation TID.
      Returns:
      This object as of the Builder-Pattern.
    • removeRequestId

      default String removeRequestId()
      Removes the (interprocess) Request-Correlation TID field HeaderField.REQUEST_ID: A Request-Correlation TID is an TID to uniquely identify an entity (request) across multiple systems.
      Returns:
      The value being removed (or null if none was set).
    • getSessionId

      default String getSessionId()
      Gets the (interprocess) Session-Correlation TID field HeaderField.SESSION_ID: A Session-Correlation TID is an TID to uniquely identify an entity (session) across multiple systems.
      Returns:
      The according Session-Correlation TID.
    • putSessionId

      default String putSessionId(String aSessionId)
      Sets the (interprocess) Session-Correlation TID field HeaderField.SESSION_ID: A Session-Correlation TID is an TID to uniquely identify an entity (session) across multiple systems.
      Parameters:
      aSessionId - The according Session-Correlation TID.
      Returns:
      The value being removed (or null if none was set).
    • withSessionId

      default B withSessionId(String aSessionId)
      Sets the (interprocess) Session-Correlation TID field HeaderField.SESSION_ID: A Session-Correlation TID is an TID to uniquely identify an entity (session) across multiple systems.
      Parameters:
      aSessionId - The according Session-Correlation TID.
      Returns:
      This object as of the Builder-Pattern.
    • removeSessionId

      default String removeSessionId()
      Removes the (interprocess) Session-Correlation TID field HeaderField.SESSION_ID: A Session-Correlation TID is an TID to uniquely identify an entity (session) across multiple systems.
      Returns:
      The value being removed (or null if none was set).
    • getAuthenticate

      default String getAuthenticate()
      Gets the WWW-Authenticate Response-Header-Field HeaderField.WWW_AUTHENTICATE: "... The WWW-Authenticate Response-Header-Field MUST be included in 401 (Unauthorized) response messages. The field value consists of at least one challenge that indicates the authentication scheme(s) and parameters applicable to the Request-URI ..."
      Returns:
      The according WWW-Authenticate field.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • putAuthenticate

      default String putAuthenticate(String aAuthenticate)
      Sets the WWW-Authenticate Response-Header-Field HeaderField.WWW_AUTHENTICATE: "... The WWW-Authenticate Response-Header-Field MUST be included in 401 (Unauthorized) response messages. The field value consists of at least one challenge that indicates the authentication scheme(s) and parameters applicable to the Request-URI ..."
      Parameters:
      aAuthenticate - The according WWW-Authenticate field.
      Returns:
      The value being removed (or null if none was set).
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • withAuthenticate

      default B withAuthenticate(String aAuthenticate)
      Sets the WWW-Authenticate Response-Header-Field HeaderField.WWW_AUTHENTICATE: "... The WWW-Authenticate Response-Header-Field MUST be included in 401 (Unauthorized) response messages. The field value consists of at least one challenge that indicates the authentication scheme(s) and parameters applicable to the Request-URI ..."
      Parameters:
      aAuthenticate - The according WWW-Authenticate field.
      Returns:
      This object as of the Builder-Pattern.
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • removeAuthenticate

      default String removeAuthenticate()
      Removes the WWW-Authenticate Response-Header-Field HeaderField.WWW_AUTHENTICATE: "... The WWW-Authenticate Response-Header-Field MUST be included in 401 (Unauthorized) response messages. The field value consists of at least one challenge that indicates the authentication scheme(s) and parameters applicable to the Request-URI ..."
      Returns:
      The value being removed (or null if none was set).
      See Also:
      • "https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html"
    • getBasicAuth

      default String getBasicAuth()
      Retrieves the WWW-Authenticate field for Basic-Authentication. If not set or another kind of authorization is set, then null is returned. Use getAuthenticate() to get the field's value no matter which kind of authenticate is used.
      Returns:
      The WWW-Authenticate field for Basic-Authentication or null if there is no value for the given field or it does not declare Basic-Authentication.
    • putBasicAuthRequired

      default String putBasicAuthRequired(String aRealm)
      Sets the WWW-Authenticate field for Basic-Authentication with the given realm.
      Parameters:
      aRealm - The realm to be set for Basic-Authentication of the WWW-authenticate field.
      Returns:
      The value being removed (or null if none was set).
    • withBasicAuthRequired

      default B withBasicAuthRequired(String aRealm)
      Sets the WWW-Authenticate field for Basic-Authentication with the given realm.
      Parameters:
      aRealm - The realm to be set for Basic-Authentication of the WWW-authenticate field.
      Returns:
      This object as of the Builder-Pattern.
    • removeBasicAuthenticate

      default String removeBasicAuthenticate()
      Removes the WWW-Authenticate field for Basic-Authentication. If not set or another kind of authorization is set, then null is returned and the field is not removed. Use removeAuthenticate() to remove the field's value no matter which kind of authenticate is used.
      Returns:
      The value being removed (or null if none or none for basic authentication was set).
    • toBasicAuthRealm

      default String toBasicAuthRealm()
      Extracts the real (if any) from the HeaderField.WWW_AUTHENTICATE Header-Field (getAuthenticate()).
      Returns:
      The basic authenticate's realm or null if there is none such.
    • getAuthorization

      default String getAuthorization()
      Gets the Authorize Request-Header-Field HeaderField.AUTHORIZATION: "... The Authorize Request-Header-Field MUST be included in 401 (Unauthorized) response messages. The field value consists of at least one challenge that indicates the authentication scheme(s) and parameters applicable to the Request-URI ..."
      Returns:
      The according Authorize field.
    • putAuthorization

      default String putAuthorization(String aAuthType, String aAuthorize)
      Sets the Authorize Request-Header-Field HeaderField.AUTHORIZATION: "... The Authorize Request-Header-Field MUST be included in 401 (Unauthorized) response messages. The field value consists of at least one challenge that indicates the authentication scheme(s) and parameters applicable to the Request-URI ..."
      Parameters:
      aAuthType - The AuthType to be used.
      aAuthorize - The according Authorize field.
      Returns:
      The value being removed (or null if none was set).
    • withAuthorization

      default B withAuthorization(String aAuthType, String aAuthorize)
      Sets the Authorize Request-Header-Field HeaderField.AUTHORIZATION: "... The Authorize Request-Header-Field MUST be included in 401 (Unauthorized) response messages. The field value consists of at least one challenge that indicates the authentication scheme(s) and parameters applicable to the Request-URI ..."
      Parameters:
      aAuthorize - The according Authorize field.
      aAuthType - The AuthType to be used.
      Returns:
      This object as of the Builder-Pattern.
    • putAuthorization

      default String putAuthorization(AuthType aAuthType, String aAuthorize)
      Sets the Authorize Request-Header-Field HeaderField.AUTHORIZATION: "... The Authorize Request-Header-Field MUST be included in 401 (Unauthorized) response messages. The field value consists of at least one challenge that indicates the authentication scheme(s) and parameters applicable to the Request-URI ..."
      Parameters:
      aAuthType - The AuthType to be used.
      aAuthorize - The according Authorize field.
      Returns:
      The value being removed (or null if none was set).
    • withAuthorization

      default B withAuthorization(AuthType aAuthType, String aAuthorize)
      Sets the Authorize Request-Header-Field HeaderField.AUTHORIZATION: "... The Authorize Request-Header-Field MUST be included in 401 (Unauthorized) response messages. The field value consists of at least one challenge that indicates the authentication scheme(s) and parameters applicable to the Request-URI ..."
      Parameters:
      aAuthorize - The according Authorize field.
      aAuthType - The AuthType to be used.
      Returns:
      This object as of the Builder-Pattern.
    • putAuthorization

      default String putAuthorization(String aAuthorize)
      Sets the Authorize Request-Header-Field HeaderField.AUTHORIZATION: "... The Authorize Request-Header-Field MUST be included in 401 (Unauthorized) response messages. The field value consists of at least one challenge that indicates the authentication scheme(s) and parameters applicable to the Request-URI ..."
      Parameters:
      aAuthorize - The according Authorize field.
      Returns:
      The value being removed (or null if none was set).
    • withAuthorization

      default B withAuthorization(String aAuthorize)
      Sets the Authorize Request-Header-Field HeaderField.AUTHORIZATION: "... The Authorize Request-Header-Field MUST be included in 401 (Unauthorized) response messages. The field value consists of at least one challenge that indicates the authentication scheme(s) and parameters applicable to the Request-URI ..."
      Parameters:
      aAuthorize - The according Authorize field.
      Returns:
      This object as of the Builder-Pattern.
    • removeAuthorization

      default String removeAuthorization()
      Removes the Authorize Request-Header-Field HeaderField.AUTHORIZATION: "... The Authorize Request-Header-Field MUST be included in 401 (Unauthorized) response messages. The field value consists of at least one challenge that indicates the authentication scheme(s) and parameters applicable to the Request-URI ..."
      Returns:
      The value being removed (or null if none was set).
    • getBearerAuthCredentials

      default BearerAuthCredentials getBearerAuthCredentials()
      Retrieves the BearerAuthCredentials from the request (or null if there are none such credentials). Throw an UnauthorizedException in case you do not agree with the credentials you find there.
      Returns:
      The BearerAuthCredentials stored by the bearer authentication credentials property (or null if there are none such credentials).
    • putBearerAuthCredentials

      default BearerAuthCredentials putBearerAuthCredentials(String aBearerAuthCredentials)
      Sets the BearerAuthCredentials from the token for the bearer auth credentials property.
      Parameters:
      aBearerAuthCredentials - The password to be stored by the BearerAuthCredentials property.
    • putBearerAuthCredentials

      default BearerAuthCredentials putBearerAuthCredentials(BearerAuthCredentials aBearerAuthCredentials)
      Sets the BearerAuthCredentials (token) for HTTP bearer authentication.
      Parameters:
      aBearerAuthCredentials - The credentials (token).
    • withBearerAuthCredentials

      default B withBearerAuthCredentials(BearerAuthCredentials aBearerAuthCredentials)
      Sets the BearerAuthCredentials (token) for HTTP bearer authentication.
      Parameters:
      aBearerAuthCredentials - The credentials (token).
      Returns:
      This object as of the Builder-Pattern.
    • withBearerAuthCredentials

      default B withBearerAuthCredentials(String aToken)
      Sets the token (secret) for HTTP bearer authentication.
      Parameters:
      aToken - The password part of the credentials.
      Returns:
      This object as of the Builder-Pattern.
    • removeBearerAuthCredentials

      default BearerAuthCredentials removeBearerAuthCredentials()
      Removes the BearerAuthCredentials (token) for HTTP bearer authentication.
      Returns:
      The value being removed (or null if none was set).
    • getBasicAuthCredentials

      default BasicAuthCredentials getBasicAuthCredentials()
      Retrieves the BasicAuthCredentials from the request (or null if there are none such credentials). Throw an UnauthorizedException in case you do not agree with the credentials you find there.
      Returns:
      The BasicAuthCredentials stored by the basic authentication credentials property (or null if there are none such credentials).
    • putBasicAuthCredentials

      default BasicAuthCredentials putBasicAuthCredentials(String aUserName, String aSecret)
      Sets the BasicAuthCredentials from the user name and the secret for the Basic-Authentication credentials property.
      Parameters:
      aUserName - The user name to be stored by the BasicAuthCredentials property.
      aSecret - The password to be stored by the BasicAuthCredentials property.
    • putBasicAuthCredentials

      default BasicAuthCredentials putBasicAuthCredentials(BasicAuthCredentials aBasicAuthCredentials)
      Sets the BasicAuthCredentials (user name and secret) for HTTP Basic-Authentication.
      Parameters:
      aBasicAuthCredentials - The credentials (user name and secret).
    • withBasicAuthCredentials

      default B withBasicAuthCredentials(BasicAuthCredentials aBasicAuthCredentials)
      Sets the BasicAuthCredentials (user name and secret) for HTTP Basic-Authentication.
      Parameters:
      aBasicAuthCredentials - The credentials (user name and secret).
      Returns:
      This object as of the Builder-Pattern.
    • withBasicAuthCredentials

      default B withBasicAuthCredentials(String aUserName, String aSecret)
      Sets the user name and secret (password) for HTTP Basic-Authentication.
      Parameters:
      aUserName - The user name part of the credentials.
      aSecret - The password part of the credentials.
      Returns:
      This object as of the Builder-Pattern.
    • removeBasicAuthCredentials

      default BasicAuthCredentials removeBasicAuthCredentials()
      Removes the BasicAuthCredentials (user name and secret) for HTTP Basic-Authentication.
      Returns:
      The value being removed (or null if none was set).
    • get

      default List<String> get(HeaderField aHeaderField)
      Gets the values for the according Header-Field.
      Parameters:
      aHeaderField - The Header-Field
      Returns:
      The list of values.
    • getFirst

      default String getFirst(HeaderField aHeaderField)
      Gets the first value of the according Header-Field.
      Parameters:
      aHeaderField - The a Header-Field
      Returns:
      The first value.
    • addTo

      default void addTo(HeaderField aHeaderField, String aValue)
      Adds the value to the given Header-Field.
      Parameters:
      aHeaderField - The Header-Field.
      aValue - The a value to be added.
    • withAddTo

      default HeaderFields<C,B> withAddTo(HeaderField aHeaderField, String aValue)
      Builder method for addTo(HeaderField, String).
      Parameters:
      aHeaderField - the Header-Field
      aValue - the value
      Returns:
      This instance as of the Builder-Pattern to chain operations.
    • addTo

      default void addTo(HeaderField aHeaderField, String... aValues)
      Adds the given values to the according Header-Field.
      Parameters:
      aHeaderField - The Header-Field.
      aValues - The a values to be added.
    • addTo

      default void addTo(HeaderField aHeaderField, List<String> aValues)
      Adds the given values to the according Header-Field.
      Parameters:
      aHeaderField - The Header-Field.
      aValues - The a values to be added.
    • withAddTo

      default HeaderFields<C,B> withAddTo(HeaderField aHeaderField, String... aValues)
      Builder method for addTo(HeaderField, String...).
      Parameters:
      aHeaderField - the Header-Field
      aValues - the values
      Returns:
      This instance as of the Builder-Pattern to chain operations.
    • withAddTo

      default HeaderFields<C,B> withAddTo(HeaderField aHeaderField, List<String> aValues)
      Builder method for addTo(HeaderField, List).
      Parameters:
      aHeaderField - the Header-Field
      aValues - the values
      Returns:
      This instance as of the Builder-Pattern to chain operations.
    • put

      default List<String> put(HeaderField aHeaderField, String aValue)
      Puts (replaces) the currently set Header-Field values with the provided one.
      Parameters:
      aHeaderField - The a Header-Field.
      aValue - The value with which to replace the currently set Header-Field values.
      Returns:
      The List with the previously set Header-Field values.
    • withPut

      default HeaderFields<C,B> withPut(HeaderField aHeaderField, String aValue)
      Builder method for put(HeaderField, String).
      Parameters:
      aHeaderField - The Header-Field.
      aValue - The value.
      Returns:
      This instance as of the Builder-Pattern to chain operations.
    • put

      default List<String> put(HeaderField aHeaderField, String... aValues)
      Puts (replaces) the currently set Header-Field values with the provided ones.
      Parameters:
      aHeaderField - The a Header-Field.
      aValues - The values with which to replace the currently set Header-Field values.
      Returns:
      The List with the previously set Header-Field values.
    • put

      default List<String> put(HeaderField aHeaderField, List<String> aValues)
      Puts (replaces) the currently set Header-Field values with the provided ones.
      Parameters:
      aHeaderField - The a Header-Field.
      aValues - The values with which to replace the currently set Header-Field values.
      Returns:
      The List with the previously set Header-Field values.
    • withPut

      default HeaderFields<C,B> withPut(HeaderField aHeaderField, String... aValues)
      Builder method for put(HeaderField, String...).
      Parameters:
      aHeaderField - The Header-Field.
      aValues - The values.
      Returns:
      This instance as of the Builder-Pattern to chain operations.
    • withPut

      default HeaderFields<C,B> withPut(HeaderField aHeaderField, List<String> aValues)
      Builder method for put(HeaderField, List).
      Parameters:
      aHeaderField - The Header-Field.
      aValues - The values.
      Returns:
      This instance as of the Builder-Pattern to chain operations.
    • remove

      default List<String> remove(HeaderField aHeaderField)
      Removes the values from the given Header-Field.
      Parameters:
      aHeaderField - The a Header-Field for which to remove the values.
      Returns:
      The List with the previously set Header-Field values.
    • addCookie

      C addCookie(String aHttpCookie)
      Adds an individual server-side cookie to be sent to the client to this ResponseHeaderFields instance. The server-side cookies are retrieved from the HeaderField.SET_COOKIE Header-Field. WITH THE METHOD getAllCookies() and getCookies(String) as well as getFirstCookie(String) ONLY THE COOKIES SENT BY THE CLIENT CAN BE RETRIEVED (E.G. COOKIES RESIDING IN THE HEADER FIELD HeaderField.COOKIE). COOKIES SET VIA addCookie(String, String) OR withAddCookie(String, String) CANNOT BE RETRIEVED, AS THE COOKIES BEING SET SERVER-SIDE ARE PUT IN THE HeaderField.SET_COOKIE Header-Field.
      Parameters:
      aHttpCookie - The HTTP-Cookie String to be paresd as a cookie.
      Returns:
      The resulting cookie builder being added which can be modified affecting(!) this ResponseHeaderFields instance!
      Throws:
      IllegalArgumentException - thrown in case the HTTP-Cookie String cannot be parsed as a cookie.
    • addCookie

      C addCookie(String aCookieName, String aValue)
      Adds an individual server-side cookie to be sent to the client to this ResponseHeaderFields instance. The server-side cookies are retrieved from the HeaderField.SET_COOKIE Header-Field. WITH THE METHOD getAllCookies() and getCookies(String) as well as getFirstCookie(String) ONLY THE COOKIES SENT BY THE CLIENT CAN BE RETRIEVED (E.G. COOKIES RESIDING IN THE HEADER FIELD HeaderField.COOKIE). COOKIES SET VIA addCookie(String, String) OR withAddCookie(String, String) CANNOT BE RETRIEVED, AS THE COOKIES BEING SET SERVER-SIDE ARE PUT IN THE HeaderField.SET_COOKIE Header-Field.
      Parameters:
      aCookieName - The name for the cookie to be added.
      aValue - The value of the cookie to be added.
      Returns:
      The resulting cookie builder being added which can be modified affecting(!) this ResponseHeaderFields instance!
    • addCookie

      C addCookie(C aCookie)
      Adds an individual server-side cookie to be sent to the client to this ResponseHeaderFields instance. The server-side cookies are retrieved from the HeaderField.SET_COOKIE Header-Field. WITH THE METHOD getAllCookies() and getCookies(String) as well as getFirstCookie(String) ONLY THE COOKIES SENT BY THE CLIENT CAN BE RETRIEVED (E.G. COOKIES RESIDING IN THE HEADER FIELD HeaderField.COOKIE). COOKIES SET VIA addCookie(String, String) OR withAddCookie(String, String) CANNOT BE RETRIEVED, AS THE COOKIES BEING SET SERVER-SIDE ARE PUT IN THE HeaderField.SET_COOKIE Header-Field.
      Parameters:
      aCookie - The cookie to be added.
      Returns:
      The resulting cookie builder being added which can be modified affecting(!) this ResponseHeaderFields instance!
    • withAddCookie

      default HeaderFields<C,B> withAddCookie(String aCookieName, String aValue)
      Builder method for the addCookie(String, String) method. WITH THE METHOD getAllCookies() and getCookies(String) as well as getFirstCookie(String) ONLY THE COOKIES SENT BY THE CLIENT CAN BE RETRIEVED (E.G. COOKIES RESIDING IN THE HEADER FIELD HeaderField.COOKIE). COOKIES SET VIA addCookie(String, String) OR withAddCookie(String, String) CANNOT BE RETRIEVED, AS THE COOKIES BEING SET SERVER-SIDE ARE PUT IN THE HeaderField.SET_COOKIE Header-Field.
      Parameters:
      aCookieName - The name for the cookie to be added.
      aValue - The value of the cookie to be added.
      Returns:
      This ResponseHeaderFields instance to continue building up the Header-Fields.
    • withAddCookie

      default HeaderFields<C,B> withAddCookie(C aCookie)
      Builder method for the addCookie(Cookie) method. WITH THE METHOD getAllCookies() and getCookies(String) as well as getFirstCookie(String) ONLY THE COOKIES SENT BY THE CLIENT CAN BE RETRIEVED (E.G. COOKIES RESIDING IN THE HEADER FIELD HeaderField.COOKIE). COOKIES SET VIA addCookie(String, String) OR withAddCookie(String, String) CANNOT BE RETRIEVED, AS THE COOKIES BEING SET SERVER-SIDE ARE PUT IN THE HeaderField.SET_COOKIE Header-Field.
      Parameters:
      aCookie - The cookie to be added.
      Returns:
      This ResponseHeaderFields instance to continue building up the Header-Fields.
    • getAllCookies

      List<C> getAllCookies()
      Retrieves an array of cookies sent by the client stored in this RequestHeaderFields instance. If no cookie has been found, then an empty array is returned. The client-side cookies are retrieved from the HeaderField.COOKIE Header-Field. WITH THE METHOD getAllCookies() and getCookies(String) as well as getFirstCookie(String) ONLY THE COOKIES SENT BY THE CLIENT CAN BE RETRIEVED (E.G. COOKIES RESIDING IN THE HEADER FIELD HeaderField.COOKIE). COOKIES SET VIA addCookie(String, String) OR withAddCookie(String, String) CANNOT BE RETRIEVED, AS THE COOKIES BEING SET SERVER-SIDE ARE PUT IN THE HeaderField.SET_COOKIE Header-Field. According to the Netscape cookie_spec (https://curl.haxx.se/rfc/cookie_spec.html) the entire FILE=VALUE string of a cookie is a sequence of characters excluding semi-colon, comma and white space.
      Returns:
      An array containing the cookies (key/value) stored in this RequestHeaderFields instance.
    • getCookies

      default List<C> getCookies(String aCookieName)
      Retrieves an individual cookie sent by the client stored in this RequestHeaderFields instance. The client-side cookies are retrieved from the HeaderField.COOKIE Header-Field. WITH THE METHOD getAllCookies() and getCookies(String) as well as getFirstCookie(String) ONLY THE COOKIES SENT BY THE CLIENT CAN BE RETRIEVED (E.G. COOKIES RESIDING IN THE HEADER FIELD HeaderField.COOKIE). COOKIES SET VIA addCookie(String, String) OR withAddCookie(String, String) CANNOT BE RETRIEVED, AS THE COOKIES BEING SET SERVER-SIDE ARE PUT IN THE HeaderField.SET_COOKIE Header-Field.
      Parameters:
      aCookieName - The name of the cookie to be retrieved.
      Returns:
      The values of the cookie found for the according name.
    • getFirstCookie

      default C getFirstCookie(String aCookieName)
      Same as getAllCookies() though just returning the first cookie. WITH THE METHOD getAllCookies() and getCookies(String) as well as getFirstCookie(String) ONLY THE COOKIES SENT BY THE CLIENT CAN BE RETRIEVED (E.G. COOKIES RESIDING IN THE HEADER FIELD HeaderField.COOKIE). COOKIES SET VIA addCookie(String, String) OR withAddCookie(String, String) CANNOT BE RETRIEVED, AS THE COOKIES BEING SET SERVER-SIDE ARE PUT IN THE HeaderField.SET_COOKIE Header-Field.
      Parameters:
      aCookieName - The name of the cookie to be retrieved.
      Returns:
      The first cookie found for the according name or null if none such cookies exist.
    • toHttpCookies

      default String[] toHttpCookies()
      Creates a HTTP Header-Field value from the herein stored Cookie instances.
      Returns:
      The text representing the HTTP Header-Field for the herein stored cookies.
    • toHeaderFields

      default void toHeaderFields(Map<String,List<String>> aToFields)
      Copies the Header-Fields into the provided Map. This is useful when some underlying system provides an own instance of Header-Fields to be filled.
      Parameters:
      aToFields - The Map where to copy the Header-Fields to.