/** * Copyright (C) 2010 Talend Inc. - www.talend.com */ package client; import java.util.Iterator; import java.util.List; import javax.ws.rs.core.Response; import org.apache.cxf.jaxrs.client.WebClient; import common.advanced.Person; import common.advanced.PersonCollection; import common.advanced.PersonService; public final class PersonServiceProxyClient { private PersonService proxy; public PersonServiceProxyClient() { } public PersonServiceProxyClient(PersonService personService) { this.proxy = personService; } public void setPersonService(PersonService proxy) { this.proxy = proxy; useService(); } public void useService() { System.out.println("Using a simple JAX-RS proxy to get all the persons..."); // getPersons(a, b): a is zero-based start index, b is number of records // to return (-1 for all) Response resp = proxy.getPersons(0, -1); if (resp.getStatus() == 200) { PersonCollection personColl = resp.readEntity(PersonCollection.class); List<Person> persons = personColl.getList(); for (Iterator<Person> it = persons.iterator(); it.hasNext();) { Person person = it.next(); System.out.println("ID " + person.getId() + " : " + person.getName() + ", age : " + person.getAge()); } } System.out.println("Using PATCH..."); WebClient.getConfig(proxy).getRequestContext().put("use.async.http.conduit", true); String patch = proxy.patch(); System.out.println("Patch: " + patch); } }