package control; import java.io.*; import java.util.*; import org.apache.http.*; import org.apache.http.client.*; import org.apache.http.client.methods.*; import org.apache.http.protocol.*; import org.apache.http.util.*; import org.apache.log4j.*; public class IliasConnector { private HttpGet request; private HttpResponse response; private HttpEntity entity; private BasicHttpContext context; private Logger LOGGER = Logger.getLogger(getClass()); public String requestGet(String url) { context = new BasicHttpContext(); String html = null; try { request = new HttpGet(url); final HttpClient client = IliasManager.getInstance().getIliasClient(); response = client.execute(request, context); entity = response.getEntity(); html = EntityUtils.toString(entity); request.releaseConnection(); } catch (Exception e) { e.printStackTrace(); LOGGER.warn(e.getStackTrace()); } return html; } public int getFileSize(String url) { context = new BasicHttpContext(); HttpHead head = new HttpHead(url); try { response = IliasManager.getInstance().getIliasClient().execute(head, context); } catch (ClientProtocolException e) { LOGGER.warn("", e); } catch (IOException e) { LOGGER.warn("", e); } int size = 0; if (response.containsHeader("Content-Length")) { Header[] fileSize = response.getHeaders("Content-Length"); size = Integer.parseInt(fileSize[0].getValue()); } else { LOGGER.warn("Headers: " + Arrays.toString(response.getAllHeaders())); LOGGER.warn("\nNo Filesize found for URL: " + url); } return size; } }