Class HttpHeaders

java.lang.Object
dev.gmitch215.bytebox.net.http.HttpHeaders

public final class HttpHeaders extends Object
The headers of a request or a response, standing in for java.net.http.HttpHeaders.
Since:
1.0.0
  • Method Details

    • of

      public static HttpHeaders of(Map<String,List<String>> values)
      Headers from a map.
      Parameters:
      values - name to values, keyed however the caller had them
      Returns:
      the headers, keyed in lower case because HTTP does not distinguish
    • map

      public Map<String,List<String>> map()
      Returns every header, keyed in lower case.
      Returns:
      every header, keyed in lower case
    • firstValue

      public Optional<String> firstValue(String name)
      The last value of a header.
      Parameters:
      name - the header name, matched without regard to case
      Returns:
      the value, empty when the header is absent
    • firstValueAsLong

      public OptionalLong firstValueAsLong(String name)
      The value of a header read as a number.
      Parameters:
      name - the header name
      Returns:
      the number, empty when the header is absent or is not one
    • allValues

      public List<String> allValues(String name)
      Every value of a header.
      Parameters:
      name - the header name, matched without regard to case
      Returns:
      the values, empty when the header is absent
    • equals

      public boolean equals(Object other)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object