/* * WBI Indicator Explorer * * Copyright 2015 Sebastian Nogara <snogaraleal@gmail.com> * * This file is part of WBI. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ package data.api; import java.io.IOException; import java.net.URI; import java.net.URISyntaxException; import org.apache.http.HttpEntity; import org.apache.http.client.methods.HttpGet; import org.apache.http.client.utils.URIBuilder; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; import org.apache.http.util.EntityUtils; public class HTTP { public static class URL { public static URI get(URI uri, String[][] params) throws URISyntaxException { URIBuilder uriBuilder = new URIBuilder(uri); for (String[] param : params) { uriBuilder.setParameter(param[0], param[1]); } return uriBuilder.build(); } public static URI get(String baseURL, String path, String[][] params) { try { return get(new URI(baseURL).resolve(path), params); } catch (URISyntaxException exception) { exception.printStackTrace(); return null; } } public static URI get(String url, String[][] params) { try { return get(new URI(url), params); } catch (URISyntaxException exception) { exception.printStackTrace(); return null; } } } public static String get(String url) { String response = null; try { CloseableHttpClient client = HttpClients.createDefault(); HttpEntity entity = client.execute(new HttpGet(url)).getEntity(); if (entity != null) { response = EntityUtils.toString(entity); } client.close(); } catch (IOException exception) { exception.printStackTrace(); return null; } return response; } }