Java tutorial
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package es.carebear.rightmanagement.client.user; import com.google.gson.Gson; import es.carebear.rightmanagement.client.exceptions.BadRequestException; import es.carebear.rightmanagement.client.exceptions.InternalServerErrorException; import es.carebear.rightmanagement.client.exceptions.UnknownResponseException; import es.carebear.rightmanagement.client.xml.XMLHelper; import es.carebear.rightmanagement.core.group.Group; import es.carebear.rightmanagement.core.misc.StringListContainer; import es.carebear.rightmanagement.core.user.User; import java.io.IOException; import java.util.ArrayList; import java.util.List; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.HttpStatus; import org.apache.commons.httpclient.methods.PostMethod; /** * * @author hannes */ public class GetAllRightsOnUsers { private String baseUri; private HttpClient httpClient; public GetAllRightsOnUsers(String baseUri) { this.baseUri = baseUri; this.httpClient = new HttpClient(); } public String[] getRights(String authName) throws BadRequestException, InternalServerErrorException, IOException, UnknownResponseException { PostMethod postMethod = new PostMethod(baseUri + "/client/users/all/withRigthOnUser"); postMethod.addParameter("authName", authName); int responseCode = httpClient.executeMethod(postMethod); switch (responseCode) { case HttpStatus.SC_ACCEPTED: String response = XMLHelper.fromStreamToXML(postMethod.getResponseBodyAsStream()); StringListContainer lc = XMLHelper.fromXML(response, StringListContainer.class); List<String> ls = new ArrayList<>(); lc.getContainer().stream().forEach(obj -> { Gson gson = new Gson(); ls.add(obj); }); return ls.toArray(new String[ls.size()]); case HttpStatus.SC_BAD_REQUEST: throw new BadRequestException(); default: throw new UnknownResponseException((new Integer(responseCode)).toString()); } } }