code: public void sendAndReceive(HttpMessage message, HttpRequestConfig requestConfig) throws IOException {
          if (message == null) {
              throw new IllegalArgumentException("Parameter message must not be null.");
          }
          if (requestConfig == null) {
              throw new IllegalArgumentException("Parameter requestConfig must not be null.");
          }
  
          sendAndReceiveImpl(message, requestConfig);
  
          if (requestConfig.isFollowRedirects()) {
              followRedirections(message, requestConfig);
          }
      }
docs: Sends the request of given HTTP {@code message} with the given configurations.
  
  @param message the message that will be sent
  @param requestConfig the request configurations.
  @throws IllegalArgumentException if any of the parameters is {@code null}
  @throws IOException if an error occurred while sending the message or following the redirections
  @since 2.6.0
  @see #sendAndReceive(HttpMessage, boolean)