import java.io.IOException;
import java.net.URI;
import java.net.URL;
import java.net.URLConnection;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.http.HttpResponse.BodyHandlers;
import java.util.List;
import java.util.Map;

public class RestClientTesting {

    public static void main(String[] args) throws IOException, InterruptedException {
        HttpClient jdkClient = HttpClient.newHttpClient();
        HttpRequest request = HttpRequest.newBuilder(URI.create("https://www.google.com")).build();
        HttpResponse<Void> response = jdkClient.send(request, BodyHandlers.discarding());
        java.net.http.HttpHeaders httpClientHeaders = response.headers();

        System.out.println("\n \n ======= HTTP Client Headers =======\n \n");
        httpClientHeaders.map().forEach((k,v) -> System.out.println("\t" + k + ":\t" + v));


        URL url = new URL("https://www.google.com");
        URLConnection urlConnection = url.openConnection();
        urlConnection.connect();
        Map<String, List<String>> urlConnectionHeaders = urlConnection.getHeaderFields();

        System.out.println("\n \n ======= HttpURLConnection Headers =======\n \n");
        urlConnectionHeaders.forEach((k,v) -> System.out.println("\t" + k + ":\t" + v));
    }

}