static ReadOnlyHttpHeaders defaultHeadersFor()

in statefun-flink/statefun-flink-core/src/main/java/org/apache/flink/statefun/flink/core/nettyclient/NettyHeaders.java [33:67]


  static ReadOnlyHttpHeaders defaultHeadersFor(InetSocketAddress service) {
    final AsciiString serviceHost;
    if (service.getPort() == 443 || service.getPort() == 80) {
      // we omit well known ports from the hostname header, as it is not common
      // to include them.
      serviceHost = AsciiString.cached(service.getHostString());
    } else {
      serviceHost = AsciiString.cached(service.getHostString() + ":" + service.getPort());
    }
    List<AsciiString> headers = new ArrayList<>();

    headers.add(HttpHeaderNames.CONTENT_TYPE);
    headers.add(HttpHeaderValues.APPLICATION_OCTET_STREAM);

    headers.add(HttpHeaderNames.ACCEPT);
    headers.add(HttpHeaderValues.APPLICATION_OCTET_STREAM);

    headers.add(HttpHeaderNames.ACCEPT_ENCODING);
    headers.add(HttpHeaderValues.GZIP_DEFLATE);

    headers.add(HttpHeaderNames.CONNECTION);
    headers.add(HttpHeaderValues.KEEP_ALIVE);

    headers.add(HttpHeaderNames.USER_AGENT);
    headers.add(USER_AGENT);

    headers.add(HttpHeaderNames.HOST);
    headers.add(serviceHost);

    headers.add(HttpHeaderNames.CONTENT_LENGTH);
    headers.add(AsciiString.cached("0"));

    AsciiString[] kvPairs = headers.toArray(new AsciiString[0]);
    return new ReadOnlyHttpHeaders(false, kvPairs);
  }