List of usage examples for com.google.gwt.http.client RequestCallback RequestCallback
RequestCallback
From source file:ch.unifr.pai.twice.mousecontrol.client.TouchPadWidget.java
License:Apache License
/** * Sends the given query to the mouse pointer controller servlet * //from w w w . j ava 2 s. co m * @param query * @param callback */ protected void send(String query, final Command callback) { try { if (active) { new RequestBuilder(RequestBuilder.GET, GWT.getHostPageBaseURL() + controlServlet + "?" + (query != null ? query : "a=x") + (getCurrentClient() != null ? "&targetUUID=" + getCurrentClient() : "") + (uuid != null ? "&uuid=" + uuid : "") + (host != null ? "&host=" + host : "") + (port != null ? "&port=" + port : "") + ("&user=" + Authentication.getUserName())) .sendRequest(null, new RequestCallback() { @Override public void onResponseReceived(Request request, Response response) { if (response.getStatusCode() > 400) onError(request, null); String color = extractColor(response); if (response.getText().trim().isEmpty()) { label.setText("No connection available"); noConnection = true; } else { if (noConnection) { label.setText(""); noConnection = false; } if (color == null || color.isEmpty() || color.equals("#null")) color = null; extractLastAction(response); setColor(color); setScreenDimension(extractScreenDimensions(response)); if (callback != null) callback.execute(); } } @Override public void onError(Request request, Throwable exception) { setActive(false); } }); } } catch (Exception e) { e.printStackTrace(); } }
From source file:ch.unifr.pai.twice.mousecontrol.client.TouchPadWidget.java
License:Apache License
/** * Request the server for available shared devices * /*from ww w .ja v a 2 s . co m*/ * @param callback */ private void getAvailableClients(final Command callback) { try { new RequestBuilder(RequestBuilder.GET, GWT.getHostPageBaseURL() + controlServlet + "?a=g") .sendRequest(null, new RequestCallback() { @Override public void onResponseReceived(Request request, Response response) { if (response.getText() != null && !response.getText().isEmpty()) { availableClients = response.getText().split("\n"); } if (callback != null) callback.execute(); } @Override public void onError(Request request, Throwable exception) { GWT.log("Available clients request", exception); if (callback != null) callback.execute(); } }); } catch (RequestException e) { GWT.log("Request Exception", e); if (callback != null) callback.execute(); } }
From source file:ch.unifr.pai.twice.widgets.mpproxy.client.ScreenShotDistributor.java
License:Apache License
/** * Send the screenshot to the server//from w w w. j a va 2 s . c om */ public void sendScreenShot() { String screen = Document.get().getDocumentElement().getInnerHTML(); if (!screen.equals(lastSent) || lastLeft != Window.getScrollLeft() || lastTop != Window.getScrollTop()) { String url = Window.Location.getHref(); URLParser p = new URLParser(url, Rewriter.getServletPath(Window.Location.getHref())); RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, GWT.getModuleBaseURL() + "manager?url=" + p.getProxyBasePath() + "&width=" + Window.getClientWidth() + "&height=" + Window.getClientHeight() + "&top=" + Window.getScrollTop() + "&left=" + Window.getScrollLeft()); lastSent = screen; lastLeft = Window.getScrollLeft(); lastTop = Window.getScrollTop(); screen = screen.replace('\n', ' '); screen = screen.replaceAll("<body", "<body><div class=\"readOnlyView\" style=\"width:" + Window.getClientWidth() + "; height:" + Window.getClientHeight() + ";\""); screen = screen.replaceAll("<\\/body>", "</div></body>"); screen = screen.replaceAll("(<script).*?(\\/script>)", ""); try { rb.sendRequest(screen, new RequestCallback() { @Override public void onResponseReceived(Request request, Response response) { // TODO Auto-generated method stub } @Override public void onError(Request request, Throwable exception) { Window.alert("Screenshot sent"); } }); } catch (RequestException e) { e.printStackTrace(); } } }
From source file:ch.unifr.pai.twice.widgets.mpProxyScreenShot.client.Viewer.java
License:Apache License
@Override public void onModuleLoad() { Timer t = new Timer() { @Override// www .ja v a2 s.c o m public void run() { try { RequestBuilder rb = new RequestBuilder(RequestBuilder.GET, Window.Location.getProtocol() + "//" + Window.Location.getHost() + "/miceScreenShot/manager"); rb.sendRequest(null, new RequestCallback() { @Override public void onResponseReceived(Request request, Response response) { RootPanel.getBodyElement().setInnerHTML(response.getText()); } @Override public void onError(Request request, Throwable exception) { } }); } catch (RequestException e) { e.printStackTrace(); } } }; t.run(); // t.scheduleRepeating(1000); }
From source file:client.net.sf.saxon.ce.Xslt20ProcessorImpl.java
License:Mozilla Public License
public Node renderXML(JavaScriptObject inSourceDoc, DocumentInfo styleDoc, com.google.gwt.dom.client.Node target) { try {//from w w w .ja v a 2s .co m if (styleDoc == null) { throw new Exception("Stylesheet for transform is null"); } docFetchRequired = inSourceDoc != null; CompilerInfo info = config.getDefaultXsltCompilerInfo(); info.setErrorListener(new StandardErrorListener()); String asyncSourceURI = null; // for now - don't use aync when using the JavaScript API calls that return a result if (docFetchRequired && (localController.getApiCommand() == APIcommand.UPDATE_HTML || (successCallback != null))) { asyncSourceURI = SaxonceApi.getAsyncUri(inSourceDoc); if (asyncSourceURI != null && asyncSourceURI.toLowerCase().startsWith("file:")) { asyncSourceURI = null; // force synchronous fetch if using file-system protocol } } // ----------- Start async code ------------- fetchedSourceDoc = null; transformInvoked = false; if (asyncSourceURI != null) { final String URI = asyncSourceURI; final Node transformTarget = target; logger.log(Level.FINE, "Aynchronous GET for: " + asyncSourceURI); final HTTPHandler hr = new HTTPHandler(); hr.doGet(asyncSourceURI, new RequestCallback() { public void onError(Request request, Throwable exception) { //hr.setErrorMessage(exception.getMessage()); String msg = "HTTP Error " + exception.getMessage() + " for URI " + URI; handleException(new RuntimeException(msg), "onError"); } public void onResponseReceived(Request request, Response response) { int statusCode = response.getStatusCode(); if (statusCode == 200) { Logger.getLogger("ResponseReceived").fine("GET Ok for: " + URI); Node responseNode; try { responseNode = (Node) XMLDOM.parseXML(response.getText()); } catch (Exception e) { handleException(new RuntimeException(e.getMessage()), "onResponseReceived"); return; } DocumentInfo responseDoc = config.wrapXMLDocument(responseNode, URI); // now document is here, we can transform it Node result = invokeTransform(responseDoc, transformTarget); hr.setResultNode(result); // TODO: This isn't used yet // handle OK response from the server } else if (statusCode < 400) { // transient } else { String msg = "HTTP Error " + statusCode + " " + response.getStatusText() + " for URI " + URI; handleException(new RuntimeException(msg), "onResponseReceived"); //hr.setErrorMessage(statusCode + " " + response.getStatusText()); } } // ends inner method }// ends inner class ); // ends doGet method call } // -------------- End async code /// we can compile - even while sourcedoc is being fetched asynchronously if (stylesheet == null) { if (LogConfiguration.loggingIsEnabled()) { LogController.InitializeTraceListener(); } logger.log(Level.FINE, "Compiling Stylesheet..."); PreparedStylesheet sheet = new PreparedStylesheet(config, info); sheet.prepare(styleDoc); stylesheet = sheet; logger.log(Level.FINE, "Stylesheet compiled OK"); } // for async operation - this is called within the callback - so don't call here if (asyncSourceURI == null && inSourceDoc != null) { int nodeType = (Node.is(inSourceDoc)) ? ((Node) inSourceDoc).getNodeType() : 0; if (nodeType > 0 && nodeType != Node.DOCUMENT_NODE) { // add a document node wrapper Node sourceNode = (Node) inSourceDoc; Document sourceDoc = sourceNode.getOwnerDocument(); HTMLDocumentWrapper htmlDoc = new HTMLDocumentWrapper(sourceDoc, sourceDoc.getURL(), config, DocType.UNKNOWN); fetchedSourceDoc = htmlDoc.wrap(sourceNode); } else { fetchedSourceDoc = SaxonceApi.getDocSynchronously(inSourceDoc, config); } } // this method only runs if transformInvoked == false - need to get sourceDoc reference if not invoked return invokeTransform(fetchedSourceDoc, target); //method ends - allowing onResponceReceived handler to call invokeTransform for async operation } catch (Exception e) { handleException(e, "renderXML"); return null; } }
From source file:colt.json.gwt.client.JsonClient.java
License:Apache License
public void invoke(final String _url, final String _serviceName, String requestData, final IAsyncJSON result) { try {//from w w w. j a va2s . c o m RequestBuilder requestBuilder = new RequestBuilder(RequestBuilder.POST, URL.encode(_url + _serviceName)); requestBuilder.setHeader("content-type", "application/x-www-form-urlencoded"); Request request = requestBuilder.sendRequest(requestData, new RequestCallback() { public void onError(Request request, Throwable exception) { result.error(exception); } public void onResponseReceived(Request request, Response response) { if (200 == response.getStatusCode()) { String text = response.getText(); JSONValue parser = JSONParser.parse(text); JSONObject jobj = parser.isObject(); result.done(jobj); } else { result.error(new RuntimeException(_url + _serviceName + " :(")); } } }); } catch (RequestException e) { Window.alert(e.getMessage()); result.error(e); } }
From source file:com.agnie.gwt.common.client.rpc.LoaderRequestTransport.java
License:Open Source License
protected RequestCallback createRequestCallback(final TransportReceiver receiver) { final RequestCallback callback = super.createRequestCallback(receiver); RequestCallback newCallback = new RequestCallback() { @Override/*from w ww .j a v a 2 s . co m*/ public void onResponseReceived(Request request, Response response) { if (Response.SC_UNAUTHORIZED == response.getStatusCode()) { GWT.log("User session timed out or user logged out"); Window.Location.assign(urlGenerator.getClientSideLoginURL(urlInfo, appDomain, urlInfo.getParameter(QueryString.GWT_DEV_MODE.getKey()))); } else { callback.onResponseReceived(request, response); } } @Override public void onError(Request request, Throwable exception) { callback.onError(request, exception); } }; return newCallback; }
From source file:com.ait.tooling.nativetools.client.resting.NResting.java
License:Open Source License
protected IRestingRequest call(final NMethod type, final String url, final String data, final NRestingHeaders headers, final IRestingResponseCallback callback) { Objects.requireNonNull(callback); final long cntr = ++m_docntr; final long time = System.currentTimeMillis(); final NRequestBuilder builder = makeRequestBuilder(type, url); if (false == isActive()) { callback.onFailure(new InactiveRestingException(type, builder.getUrl(), cntr, time)); return null; }//from ww w . j a v a 2s . c om final NRestingHeaders head = headers.doRESTHeaders(); for (String k : head.keys()) { builder.setHeader(k, head.get(k)); } int mils = head.getTimeout(); if (mils > 0) { builder.setTimeoutMillis(mils); } String user = head.getUsername(); if ((null != user) && (false == user.isEmpty())) { builder.setUser(user); String pass = head.getPassword(); if ((null != pass) && (false == pass.isEmpty())) { builder.setPassword(pass); } builder.setIncludeCredentials(head.getIncludeCredentials()); } try { return new NRestingRequest(builder.getUrl(), head, type, cntr, time, builder.sendRequest(data, new RequestCallback() { @Override public void onResponseReceived(final Request request, final Response response) { callback.onResponse(new NRestingResponse(response.getStatusCode(), response.getText(), new NRestingHeaders(response.getHeaders()).setOptions(head), type, new NRestingRequest(builder.getUrl(), head, type, cntr, time, request), System.currentTimeMillis() - time)); } @Override public void onError(final Request request, final Throwable e) { callback.onFailure(new RestingException(e, type, builder.getUrl(), cntr, time)); } })); } catch (RequestException e) { callback.onFailure(new RestingException(e, type, builder.getUrl(), cntr, time)); } return null; }
From source file:com.ait.tooling.nativetools.client.rpc.JSONCommandRequest.java
License:Open Source License
protected final Request call(final String command, NObject request, final AsyncCallback<NObject> callback, final IXSRFTokenQueue supplier) { Objects.requireNonNull(callback); StringOps.requireTrimOrNull(command); request = Objects.requireNonNull(request); final long counter = ++s_counter; final long reqtime = System.currentTimeMillis(); if (false == isActive()) { logFailure(command, counter, reqtime, new Exception("Not active")); return null; }//from w ww . j av a2s. c om try { doPrepareBuilderCall(m_builder, command, counter, request, isXSRFActive() ? supplier : null); logRequest(command, counter, reqtime, request); final NObject send = new NObject("request", request); if (isCommandInBody()) { send.put("command", command); } return m_builder.sendRequest(toJSONString(send), new RequestCallback() { @Override public void onResponseReceived(final Request request, final Response response) { final int code = response.getStatusCode(); if (Response.SC_OK != code) { onBadStatusCode(m_builder, command, counter, reqtime, callback, code); return; } try { NObject result = parseJSONString(response.getText()); if (null == result) { doFailure(command, callback, counter, reqtime, new Exception("JSON is not NObject")); return; } if (result.isObject("piggyback")) { final NObject piggyback = result.getAsObject("piggyback"); if (null != piggyback) { onPiggyBack(m_builder, command, counter, piggyback); } } if (result.isArray("xsrftokens")) { final NArray xsrftokens = result.getAsArray("xsrftokens"); if (null != xsrftokens) { final int size = xsrftokens.size(); if (size > 0) { final IXSRFTokenQueue xsrf = getXSRFTokenQueueForURL(getURL()); if (null != xsrf) { for (int i = 0; i < size; i++) { final String token = StringOps.toTrimOrNull(xsrftokens.getAsString(i)); if (null != token) { xsrf.push(new XSRFToken(token)); } } } } } } if (result.isObject("result")) { result = result.getAsObject("result"); if (null != result) { logResult(command, counter, reqtime, result); callback.onSuccess(result); return; } doFailure(command, callback, counter, reqtime, new Exception("JSON field result not NObject or null")); return; } else if (result.isString("error")) { final String error = result.getAsString("error"); if (null != error) { doFailure(command, callback, counter, reqtime, new Exception(error)); return; } doFailure(command, callback, counter, reqtime, new Exception("JSON field error not String or null")); return; } doFailure(command, callback, counter, reqtime, new Exception("JSON did not contain result or error")); return; } catch (Exception e) { doFailure(command, callback, counter, reqtime, e); } } @Override public void onError(final Request request, final Throwable e) { doFailure(command, callback, counter, reqtime, e); } }); } catch (RequestException e) { doFailure(command, callback, counter, reqtime, e); } return null; }
From source file:com.ait.toolkit.cordova.client.plugins.blackberry.pushwoosh.PushWooshBlackBerry.java
License:Open Source License
public void register() { RequestBuilder req = new RequestBuilder(RequestBuilder.POST, getBaseUrl() + "registerDevice"); req.setHeader("Content-type", "application/json; charset=utf-8"); req.setRequestData(getPushWooshRegisterPayload()); req.setCallback(new RequestCallback() { @Override// w ww. j a v a 2 s.co m public void onResponseReceived(Request request, Response response) { if (response.getStatusCode() == 200) { registerCallback.onSuccess(response.getText()); } else { registerCallback.onError(-1); } } @Override public void onError(Request request, Throwable exception) { registerCallback.onError(-1); } }); try { req.send(); } catch (RequestException e) { e.printStackTrace(); } }