Use PromiseCombiner
Class which is used to consolidate multiple channel futures into one, by
listening to the individual futures and producing an aggregated result
(success/failure) when all futures have completed.

Returns the DnsServerAddresses that yields the system DNS server addresses sequentially. If it failed to
retrieve the list of the system DNS server addresses from the environment, it will use "8.8.8.8" and
"8.8.4.4", the addresses of the Google public DNS servers.

Returns the list of the system DNS server addresses. If it failed to retrieve the list of the system DNS server
addresses from the environment, it will return "8.8.8.8" and "8.8.4.4", the addresses of the
Google public DNS servers.

Use HttpHeaders.getTimeMillis(CharSequence) instead.
Returns the date header value with the specified header name. If
there are more than one header value for the specified header name, the
first value is returned.

Use HttpHeaders.get(CharSequence, String) instead.
Returns the header value with the specified header name. If there are
more than one header value for the specified header name, the first
value is returned.

Use HttpHeaders.getInt(CharSequence) instead.
Returns the integer header value with the specified header name. If
there are more than one header value for the specified header name, the
first value is returned.

Use HttpHeaders.getInt(CharSequence, int) instead.
Returns the integer header value with the specified header name. If
there are more than one header value for the specified header name, the
first value is returned.

Use HttpUtil.set100ContinueExpected(HttpMessage, boolean) instead.
Sets or removes the "Expect: 100-continue" header to / from the
specified message. If set is true,
the "Expect: 100-continue" header is set and all other previous
"Expect" headers are removed. Otherwise, all "Expect"
headers are removed completely.

Use HttpHeaders.set(CharSequence, Object) instead.
Sets a new date header with the specified name and value. If there
is an existing header with the same name, the existing header is removed.
The specified value is formatted as defined in
RFC2616

Use HttpHeaders.set(CharSequence, Iterable) instead.
Sets a new date header with the specified name and values. If there
is an existing header with the same name, the existing header is removed.
The specified values are formatted as defined in
RFC2616

Use HttpHeaders.set(CharSequence, Iterable) instead.
Sets a new header with the specified name and values. If there is an
existing header with the same name, the existing header is removed.
This getMethod can be represented approximately as the following code: