package ogloszenia.klient;

import javax.ws.rs.client.Client;
import javax.ws.rs.client.ClientBuilder;
import javax.ws.rs.client.Invocation;
import javax.ws.rs.client.WebTarget;
import javax.ws.rs.core.Response;

import ogloszenia.model.ListaOgloszen;
import ogloszenia.model.Samochodowe;

public class Klient21_JAXB {
	
	public static void main(String[] args) {
		
		Client klient = ClientBuilder.newClient();		
		WebTarget baseUri = klient.target(Ustawienia.URI_SERWISU);
		
		Invocation invocation = baseUri
			.path("/ogloszenia.xml")
			.request()
			.accept("application/xml")
			.buildGet();
		
		System.out.println("Zaraz wyślę zapytanie...");
		
		Response response = invocation.invoke();
		System.out.println("Odebrałem odpowiedź ");
		System.out.println("    status: " + response.getStatus());
		System.out.println("    typ danych: " + response.getMediaType());
		
		ListaOgloszen lista = response.readEntity(ListaOgloszen.class);
		
		if(lista != null && lista.ogloszenia != null) {
			System.out.println("Lista zawiera " + lista.ogloszenia.size() + " ogłoszeń");
			for(Samochodowe ogl : lista.ogloszenia) {
				System.out.println(ogl);
			}
		}

	}

}
