List of usage examples for com.google.gwt.xhr.client XMLHttpRequest getReadyState
public abstract int getReadyState();
From source file:com.badlogic.gdx.backends.gwt.preloader.AssetDownloader.java
License:Apache License
public void loadText(String url, final AssetLoaderListener<String> listener) { XMLHttpRequest request = XMLHttpRequest.create(); request.setOnReadyStateChange(new ReadyStateChangeHandler() { @Override//from w w w. j a v a2 s .c o m public void onReadyStateChange(XMLHttpRequest xhr) { if (xhr.getReadyState() == XMLHttpRequest.DONE) { if (xhr.getStatus() != 200) { listener.onFailure(); } else { listener.onSuccess(xhr.getResponseText()); } } } }); setOnProgress(request, listener); request.open("GET", url); request.setRequestHeader("Content-Type", "text/plain; charset=utf-8"); request.send(); }
From source file:com.badlogic.gdx.backends.gwt.preloader.AssetDownloader.java
License:Apache License
public void loadBinary(final String url, final AssetLoaderListener<Blob> listener) { XMLHttpRequest request = XMLHttpRequest.create(); request.setOnReadyStateChange(new ReadyStateChangeHandler() { @Override//w ww . j av a2s .co m public void onReadyStateChange(XMLHttpRequest xhr) { if (xhr.getReadyState() == XMLHttpRequest.DONE) { if (xhr.getStatus() != 200) { listener.onFailure(); } else { Int8Array data = TypedArrays.createInt8Array(xhr.getResponseArrayBuffer()); listener.onSuccess(new Blob(data)); } } } }); setOnProgress(request, listener); request.open("GET", url); request.setResponseType(ResponseType.ArrayBuffer); request.send(); }
From source file:com.badlogic.gdx.backends.gwt.preloader.BinaryLoader.java
License:Apache License
public BinaryLoader(String url, LoaderCallback<Blob> callback) { this.callback = callback; XMLHttpRequest request = XMLHttpRequest.create(); request.setOnReadyStateChange(new ReadyStateChangeHandler() { @Override/*from w ww. ja v a2s . c o m*/ public void onReadyStateChange(XMLHttpRequest xhr) { if (xhr.getReadyState() == 4) { int status = xhr.getStatus(); if (status != 200) { BinaryLoader.this.callback.error(); } else { BinaryLoader.this.callback.success(new Blob(xhr.getResponseText())); } } } }); overrideMimeType(request, "text/plain; charset=x-user-defined"); request.open("GET", url); request.send(); }
From source file:com.cgxlib.xq.client.plugins.deferred.PromiseReqBuilder.java
License:Apache License
/** * Using this constructor we access to some things in the xmlHttpRequest * which are not available in GWT, like adding progress handles or sending * javascript data (like forms in modern html5 file api). *///w w w .j av a 2 s. co m public PromiseReqBuilder(Settings settings) { String httpMethod = settings.getType(); String url = settings.getUrl(); IsProperties data = settings.getData(); String ctype = settings.getContentType(); Boolean isFormData = data != null && data.getDataImpl() instanceof JavaScriptObject && JsUtils.isFormData(data.<JavaScriptObject>getDataImpl()); XMLHttpRequest xmlHttpRequest = XMLHttpRequest.create(); try { if (settings.getUsername() != null && settings.getPassword() != null) { xmlHttpRequest.open(httpMethod, url, settings.getUsername(), settings.getPassword()); } else if (settings.getUsername() != null) { xmlHttpRequest.open(httpMethod, url, settings.getUsername()); } else { xmlHttpRequest.open(httpMethod, url); } } catch (JavaScriptException e) { RequestPermissionException requestPermissionException = new RequestPermissionException(url); requestPermissionException.initCause(new RequestException(e.getMessage())); onError(null, e); return; } JsUtils.prop(xmlHttpRequest, "onprogress", JsUtils.wrapFunction(new Function() { public void f() { JsCache p = arguments(0); double total = p.getDouble("total"); double loaded = p.getDouble("loaded"); double percent = loaded == 0 ? 0 : total == 0 ? 100 : (100 * loaded / total); dfd.notify(total, loaded, percent, "download"); } })); JavaScriptObject upload = JsUtils.prop(xmlHttpRequest, "upload"); JsUtils.prop(upload, "onprogress", JsUtils.wrapFunction(new Function() { public void f() { JsCache p = arguments(0); double total = p.getDouble("total"); double loaded = p.getDouble("loaded"); double percent = 100 * loaded / total; dfd.notify(total, loaded, percent, "upload"); } })); IsProperties headers = settings.getHeaders(); if (headers != null) { for (String headerKey : headers.getFieldNames()) { xmlHttpRequest.setRequestHeader(headerKey, String.valueOf(headers.get(headerKey))); } } if (data != null && !isFormData && !"GET".equalsIgnoreCase(httpMethod)) { xmlHttpRequest.setRequestHeader("Content-Type", ctype); } // Using xq to set credentials since this method was added in 2.5.1 // xmlHttpRequest.setWithCredentials(true); JsUtils.prop(xmlHttpRequest, "withCredentials", settings.getWithCredentials()); final Request request = createRequestVltr(xmlHttpRequest, settings.getTimeout(), this); xmlHttpRequest.setOnReadyStateChange(new ReadyStateChangeHandler() { public void onReadyStateChange(XMLHttpRequest xhr) { if (xhr.getReadyState() == XMLHttpRequest.DONE) { xhr.clearOnReadyStateChange(); fireOnResponseReceivedVltr(request, PromiseReqBuilder.this); } } }); try { JsUtils.runJavascriptFunction(xmlHttpRequest, "send", isFormData ? data.getDataImpl() : settings.getDataString()); } catch (JavaScriptException e) { onError(null, e); } }
From source file:com.codenvy.plugin.contribution.client.steps.GenerateReviewFactoryStep.java
License:Open Source License
private void saveFactory(final FormData formData, final AsyncCallback<Factory> callback) { final String requestUrl = apiTemplate.saveFactory(); final XMLHttpRequest xhr = XMLHttpRequest.create(); xhr.open(HTTPMethod.POST, requestUrl); xhr.setRequestHeader(ACCEPT, APPLICATION_JSON); xhr.setOnReadyStateChange(new ReadyStateChangeHandler() { @Override/* w ww . j a v a 2 s . c o m*/ public void onReadyStateChange(final XMLHttpRequest request) { if (request.getReadyState() == XMLHttpRequest.DONE) { if (request.getStatus() == Response.SC_OK) { request.clearOnReadyStateChange(); final String payLoad = request.getResponseText(); final Factory createdFactory = dtoFactory.createDtoFromJson(payLoad, Factory.class); if (createdFactory.getId() == null || createdFactory.getId().isEmpty()) { final ServiceError error = dtoFactory.createDtoFromJson(payLoad, ServiceError.class); callback.onFailure(new Exception(error.getMessage())); } else { callback.onSuccess(createdFactory); } } else { final Response response = new ResponseImpl(request); callback.onFailure(new ServerException(response)); } } } }); if (!sendFormData(xhr, formData)) { callback.onFailure(new Exception("Could not call service")); } }
From source file:com.googlecode.gwtquake.client.GwtResourceLoaderImpl.java
License:Open Source License
public void loadResourceAsync(final String path, final ResourceLoader.Callback callback) { XMLHttpRequest req = XMLHttpRequest.create(); final Exception e = new Exception(); final int mySequenceNumber = freeSequenceNumber++; req.setOnReadyStateChange(new ReadyStateChangeHandler() { boolean receivingMsg; public void onReadyStateChange(final XMLHttpRequest xhr) { if (xhr.getReadyState() == 3 && !receivingMsg) { Com.Printf("Receiving #" + mySequenceNumber + ": " + path + "\n"); receivingMsg = true;/*ww w .ja va 2s. c om*/ } else if (xhr.getReadyState() == 4) { if (mySequenceNumber < ignoreSequenceNumbersBelow) { Com.Printf("Ignoring outdated response #" + mySequenceNumber + ": " + path + "\n"); } else { String response; if (xhr.getStatus() != 200) { Com.Printf("Failed to load file #" + mySequenceNumber + ": " + path + " status: " + xhr.getStatus() + "/" + xhr.getStatusText() + "\n"); ResourceLoader.fail(new IOException("status = " + xhr.getStatus())); response = null; } else { response = xhr.getResponseText(); Com.Printf("Received response #" + mySequenceNumber + ": " + path + "\r"); } readyList.add(0, new ResponseHandler(mySequenceNumber, callback, response)); if (mySequenceNumber == currentSequenceNumber) { processReadyList(); } } } } }); Com.Printf("Requesting: " + path + "\n"); overrideMimeType(req, "text/plain; charset=x-user-defined"); req.open("GET", "/baseq2/" + path); req.send(); }
From source file:com.gwtpro.html5.fileapi.client.upload.UploadRequestBuilder.java
License:Apache License
/** * Sends a POST request based to upload a file, on the current builder * configuration./*from ww w . j ava2 s.c om*/ * * @return a {@link UploadRequest} object that can be used to track the * request * @throws RequestException * if the call fails to initiate * @throws NullPointerException * if a request callback has not been set */ public UploadRequest sendFile(File file) throws RequestException { if (this.callback == null) { throw new NullPointerException("callback has not been set"); } XMLHttpRequest2 xmlHttpRequest = XMLHttpRequest2.create(); final UploadRequest request = new UploadRequest(xmlHttpRequest, this.timeoutMillis, this.callback); // progress handler must be set before open!!! xmlHttpRequest.setOnUploadProgressHandler(new UploadProgressHandler() { @Override public void onProgress(int bytesUploaded) { UploadRequestBuilder.this.callback.onUploadProgress(request, bytesUploaded); } }); try { if (this.user != null && this.password != null) { xmlHttpRequest.open("POST", this.url, this.user, this.password); } else if (this.user != null) { xmlHttpRequest.open("POST", this.url, this.user); } else { xmlHttpRequest.open("POST", this.url); } } catch (JavaScriptException e) { RequestPermissionException requestPermissionException = new RequestPermissionException(this.url); requestPermissionException.initCause(new RequestException(e.getMessage())); throw requestPermissionException; } if (this.headers != null) { for (Map.Entry<String, String> header : this.headers.entrySet()) { try { xmlHttpRequest.setRequestHeader(header.getKey(), header.getValue()); } catch (JavaScriptException e) { throw new RequestException(e.getMessage()); } } } xmlHttpRequest.setOnReadyStateChange(new ReadyStateChangeHandler() { public void onReadyStateChange(XMLHttpRequest xhr) { if (xhr.getReadyState() == XMLHttpRequest.DONE) { xhr.clearOnReadyStateChange(); request.fireOnResponseReceived(UploadRequestBuilder.this.callback); } } }); try { xmlHttpRequest.sendFile(file); } catch (JavaScriptException e) { throw new RequestException(e.getMessage()); } return request; }
From source file:forplay.html.HtmlAssetManager.java
License:Apache License
private void doXhr(final String fullPath, final ResourceCallback<String> callback) { XMLHttpRequest xhr = XMLHttpRequest.create(); xhr.setOnReadyStateChange(new ReadyStateChangeHandler() { @Override/*from w w w .j a va 2 s .co m*/ public void onReadyStateChange(XMLHttpRequest xhr) { int readyState = xhr.getReadyState(); if (readyState == XMLHttpRequest.DONE) { int status = xhr.getStatus(); // status code 0 will be returned for non-http requests, e.g. file:// if (status != 0 && (status < 200 || status >= 400)) { ForPlay.log().error("xhr::onReadyStateChange[" + fullPath + "](readyState = " + readyState + "; status = " + status + ")"); callback.error( new RuntimeException("Error getting " + fullPath + " : " + xhr.getStatusText())); } else { if (LOG_XHR_SUCCESS) { ForPlay.log().debug("xhr::onReadyStateChange[" + fullPath + "](readyState = " + readyState + "; status = " + status + ")"); } callback.done(xhr.getResponseText()); } } } }); if (LOG_XHR_SUCCESS) { ForPlay.log().debug("xhr.open('GET', '" + fullPath + "')..."); } xhr.open("GET", fullPath); if (LOG_XHR_SUCCESS) { ForPlay.log().debug("xhr.send()..."); } xhr.send(); }
From source file:forplay.html.HtmlNet.java
License:Apache License
public void get(String url, final Callback callback) { try {//from ww w . j a v a 2s .co m XMLHttpRequest xhr = XMLHttpRequest.create(); xhr.open("GET", url); xhr.setOnReadyStateChange(new ReadyStateChangeHandler() { @Override public void onReadyStateChange(XMLHttpRequest xhr) { if (xhr.getReadyState() == XMLHttpRequest.DONE) { if (xhr.getStatus() >= 400) { callback.failure(new RuntimeException("Bad HTTP status code: " + xhr.getStatus())); } else { callback.success(xhr.getResponseText()); } } } }); xhr.send(); } catch (Exception e) { callback.failure(e); } }
From source file:forplay.html.HtmlNet.java
License:Apache License
public void post(String url, String data, final Callback callback) { try {/*from www . j a v a 2 s.co m*/ XMLHttpRequest xhr = XMLHttpRequest.create(); xhr.open("POST", url); xhr.setOnReadyStateChange(new ReadyStateChangeHandler() { @Override public void onReadyStateChange(XMLHttpRequest xhr) { if (xhr.getReadyState() == XMLHttpRequest.DONE) { if (xhr.getStatus() >= 400) { callback.failure(new RuntimeException("Bad HTTP status code: " + xhr.getStatus())); } else { callback.success(xhr.getResponseText()); } } } }); xhr.send(data); } catch (Exception e) { callback.failure(e); } }