/* * HttpController.java * * Created on 2.2.2009 * */ package netukar.tinybrowser.controller.http; import netukar.tinybrowser.controller.exceptions.ExceptionController; import java.net.MalformedURLException; import netukar.tinybrowser.Application; import netukar.tinybrowser.actions.ActionManager; import netukar.tinybrowser.exceptions.RequestSyntaxException; import netukar.tinybrowser.request.RequestParser; import netukar.tinybrowser.request.RequestSender; import netukar.tinybrowser.response.ResponseParser; import netukar.tinybrowser.ui.request.RequestPanel; import netukar.tinybrowser.ui.response.ResponsePanel; import netukar.tinybrowser.ui.uri.URIField; import netukar.utils.view.ViewUtils; import org.apache.commons.httpclient.HttpMethod; /** * * @author Radovan Netuka */ public class HttpController { private static final HttpController instance = new HttpController(); /** * Creates a new instance of HttpController. */ private HttpController() { } public static HttpController getInstance() { return instance; } private HttpMethod getCurrentRequest() throws RequestSyntaxException, MalformedURLException { URIField uriEntry = (URIField) ViewUtils.getComponent( Application.getMainWindow(), URIField.class); RequestPanel requestPanel = (RequestPanel) ViewUtils.getComponent( Application.getMainWindow(), RequestPanel.class); return RequestParser.parse(uriEntry.getText(), requestPanel.getText()); } public void sendCurrentRequest() { try { ResponsePanel responsePanel = (ResponsePanel) ViewUtils.getComponent( Application.getMainWindow(), ResponsePanel.class); responsePanel.display(ResponseParser.parse(RequestSender.getInstance().send(getCurrentRequest()))); ActionManager.getInstance().setSaveAsAvailable(true); } catch (MalformedURLException ex) { ExceptionController.getInstance().report(ex); } catch (RequestSyntaxException ex) { ExceptionController.getInstance().report(ex); } } }