Example usage for com.google.gwt.http.client RequestBuilder setCallback

List of usage examples for com.google.gwt.http.client RequestBuilder setCallback

Introduction

In this page you can find the example usage for com.google.gwt.http.client RequestBuilder setCallback.

Prototype

public void setCallback(RequestCallback callback) 

Source Link

Document

Sets the response handler for this request.

Usage

From source file:com.square.composant.contrat.square.client.presenter.ContratsPresenter.java

License:Open Source License

/**
 * Charge l'API graphique puis les graphiques si la connexion  Internet existe.
 * @param infosContrats les infos de contrat
 *///from  ww  w  . java2s .  c  o  m
private void chargerApiVisualisation(final InfosContratsModel infosContrats) {
    currentInfosContrats = infosContrats;
    // Tentative de connexion a internet pour dterminer si la visualisation est disponible.
    final RequestBuilder rb = new RequestBuilder(RequestBuilder.GET, "http://www.google.fr");
    rb.setHeader("Access-Control-Allow-Origin", "http://www.google.fr");
    final int timeout = 15000;
    rb.setTimeoutMillis(timeout);
    rb.setCallback(new RequestCallback() {
        @Override
        public void onResponseReceived(Request request, Response response) {
            if (response != null) {
                final Runnable onLoadCallback = new Runnable() {
                    public void run() {
                        // Chargement des graphiques
                        chargerGraphiques();
                    }
                };
                VisualizationUtils.loadVisualizationApi(onLoadCallback, OrgChart.PACKAGE);
            }
        }

        @Override
        public void onError(Request request, Throwable exception) {
        }
    });
    try {
        rb.send();
    } catch (RequestException e) {
        GWT.log("", e);
    }
}

From source file:com.tdm.client.dispatch.AbstractRequestBuilderClientActionHandler.java

License:Apache License

@Override
public DispatchRequest execute(final A action, final AsyncCallback<R> resultCallback,
        final ExecuteCommand<A, R> executeCommand) {

    final RequestBuilder requestBuilder = getRequestBuilder(action);
    requestBuilder.setHeader("Content-Type", "application/json; charset=utf-8");
    requestBuilder.setHeader("Accept", "application/json");
    requestBuilder.setCallback(new RequestCallback() {

        @Override/*from   ww w .  j  a v a 2  s.com*/
        public void onError(final Request request, final Throwable exception) {
            resultCallback.onFailure(exception);
        }

        @Override
        public void onResponseReceived(final Request request, final Response response) {
            // TODO handle more errors, such as response.getStatusCode /
            // getStatusText
            if (response.getStatusCode() >= 200 && response.getStatusCode() < 300) {
                resultCallback.onSuccess(extractResult(response));
            } else {
                resultCallback.onFailure(new IllegalArgumentException(response.getStatusText()));
            }
        }
    });

    try {
        return new DispatchRequestRequestBuilderImpl(requestBuilder.send());
    } catch (final RequestException e) {
        throw new RequestRuntimeException(e);
    }
}

From source file:com.tecarta.demo.client.IronListCards.java

public static Request getJSON(String url, RequestCallback cb) {
    Request request = null;//from   w ww.  j  ava2s  .c  o m

    try {
        RequestBuilder rb = new RequestBuilder(RequestBuilder.GET, url);
        rb.setHeader("Accept", "application/json");
        rb.setCallback(cb);
        request = rb.send();
    } catch (RequestException e) {
        e.printStackTrace();
    }

    return request;
}

From source file:com.totsp.gwittir.rest.client.transports.HTTPTransport.java

License:Open Source License

/** Executes a request and handles the pre and post hooks
 *
 * @param builder the initial builder/*from   w ww . j  a va2  s .com*/
 * @param callback the request callback to pass to the final builder
 * @return a RequestControl implementation to return back out.
 */
protected XHRRequestControl doRequest(RequestBuilder builder, final RequestCallback callback) {
    doPreHook(builder);

    RequestCallback innerCallback = new RequestCallback() {
        public void onResponseReceived(Request request, Response response) {
            response = doPostHook(response);
            callback.onResponseReceived(request, response);
        }

        public void onError(Request request, Throwable exception) {
            callback.onError(request, exception);
        }
    };

    builder.setCallback(innerCallback);

    try {
        return new XHRRequestControl(builder.send());
    } catch (RequestException e) {
        callback.onError(null, e);

        return new XHRRequestControl(null);
    }
}

From source file:com.vaadin.client.communication.Heartbeat.java

License:Apache License

/**
 * Sends a heartbeat to the server//from   w ww .j av  a2 s . c o  m
 */
public void send() {
    timer.cancel();

    final RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, uri);

    final RequestCallback callback = new RequestCallback() {

        @Override
        public void onResponseReceived(Request request, Response response) {
            int status = response.getStatusCode();

            if (status == Response.SC_OK) {
                connection.getConnectionStateHandler().heartbeatOk();
            } else {
                // Handler should stop the application if heartbeat should
                // no longer be sent
                connection.getConnectionStateHandler().heartbeatInvalidStatusCode(request, response);
            }

            schedule();
        }

        @Override
        public void onError(Request request, Throwable exception) {
            // Handler should stop the application if heartbeat should no
            // longer be sent
            connection.getConnectionStateHandler().heartbeatException(request, exception);
            schedule();
        }
    };

    rb.setCallback(callback);

    try {
        getLogger().fine("Sending heartbeat request...");
        rb.send();
    } catch (RequestException re) {
        callback.onError(null, re);
    }

}

From source file:com.vaadin.client.communication.XhrConnection.java

License:Apache License

/**
 * Sends an asynchronous UIDL request to the server using the given URI.
 * //from  ww w .j av  a2s .com
 * @param payload
 *            The URI to use for the request. May includes GET parameters
 * @throws RequestException
 *             if the request could not be sent
 */
public void send(JsonObject payload) {
    RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, getUri());
    // TODO enable timeout
    // rb.setTimeoutMillis(timeoutMillis);
    // TODO this should be configurable
    rb.setHeader("Content-Type", JsonConstants.JSON_CONTENT_TYPE);
    rb.setRequestData(payload.toJson());

    XhrResponseHandler responseHandler = createResponseHandler();
    responseHandler.setPayload(payload);
    responseHandler.setRequestStartTime(Profiler.getRelativeTimeMillis());

    rb.setCallback(responseHandler);

    getLogger().info("Sending xhr message to server: " + payload.toJson());
    try {
        final Request request = rb.send();

        if (webkitMaybeIgnoringRequests && BrowserInfo.get().isWebkit()) {
            final int retryTimeout = 250;
            new Timer() {
                @Override
                public void run() {
                    // Use native js to access private field in Request
                    if (resendRequest(request) && webkitMaybeIgnoringRequests) {
                        // Schedule retry if still needed
                        schedule(retryTimeout);
                    }
                }
            }.schedule(retryTimeout);
        }
    } catch (RequestException e) {
        getConnectionStateHandler().xhrException(new XhrConnectionError(null, payload, e));
    }
}

From source file:com.vaadin.terminal.gwt.client.ApplicationConnection.java

License:Open Source License

/**
 * Sends an asynchronous UIDL request to the server using the given URI.
 * /*from   w w w  . j a va 2 s .  com*/
 * @param uri
 *            The URI to use for the request. May includes GET parameters
 * @param payload
 *            The contents of the request to send
 * @param requestCallback
 *            The handler for the response
 * @throws RequestException
 *             if the request could not be sent
 */
protected void doAsyncUIDLRequest(String uri, String payload, RequestCallback requestCallback)
        throws RequestException {
    RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, uri);
    // TODO enable timeout
    // rb.setTimeoutMillis(timeoutMillis);
    rb.setHeader("Content-Type", "text/plain;charset=utf-8");
    rb.setRequestData(payload);
    rb.setCallback(requestCallback);

    rb.send();
}

From source file:de.kp.ames.search.client.http.ConnectionManager.java

License:Open Source License

/**
 * @param url/*from  w ww  .j  a v a  2  s .c o  m*/
 * @param callback
 */
public void sendGetRequest(final String url, final HashMap<String, String> headers,
        final ConnectionCallback callback) {

    RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, URL.encode(url));
    builder.setTimeoutMillis(CoreGlobals.CONNECTION_TIMEOUT);

    /*
     * Set header parameters
     */
    if (headers.isEmpty() == false) {
        Set<String> keys = headers.keySet();
        for (String key : keys) {
            builder.setHeader(key, headers.get(key));
        }
    }

    /*
      * Set request callback
      */
    builder.setCallback(new RequestCallback() {

        public void onResponseReceived(Request request, Response response) {

            SC.logWarn("======> cm.RequestCallback.onResponseReceived");

            if (STATUS_CODE_OK == response.getStatusCode()) {
                handleSuccess(response, callback);

            } else {
                handleFailure(response, callback);
            }

        }

        public void onError(Request request, Throwable exception) {

            SC.logWarn("======> cm.RequestCallback.onError");

            if (exception instanceof RequestTimeoutException) {
                handleTimeout(exception, callback);

            } else {
                handleError(exception, callback);
            }

        }

    });

    try {
        builder.send();

    } catch (RequestException e) {
        handleError(e, callback);

    }

}

From source file:de.kp.ames.search.client.http.ConnectionManager.java

License:Open Source License

/**
 * @param url//ww w  . ja v  a2  s .c om
 * @param requestData
 * @param callback
 */
public void sendPostRequest(final String url, final HashMap<String, String> headers, final String requestData,
        final ConnectionCallback callback) {

    RequestBuilder builder = new RequestBuilder(RequestBuilder.POST, URL.encode(url));
    builder.setTimeoutMillis(CoreGlobals.CONNECTION_TIMEOUT);

    /*
     * Set header parameters
     */
    if (headers.isEmpty() == false) {
        Set<String> keys = headers.keySet();
        for (String key : keys) {
            builder.setHeader(key, headers.get(key));
        }
    }

    /*
     * Set request data
     */
    if (requestData != null)
        builder.setRequestData(requestData);

    /*
     * Set request callback
     */
    builder.setCallback(new RequestCallback() {

        public void onResponseReceived(Request request, Response response) {

            if (STATUS_CODE_OK == response.getStatusCode()) {

                SC.logWarn("====> cm.onResponseReceived");

                handleSuccess(response, callback);

            } else {
                handleFailure(response, callback);
            }

        }

        public void onError(Request request, Throwable exception) {

            if (exception instanceof RequestTimeoutException) {
                handleTimeout(exception, callback);

            } else {
                handleError(exception, callback);
            }

        }

    });

    try {
        builder.send();

    } catch (RequestException e) {
        handleError(e, callback);

    }

}

From source file:de.kp.ames.web.client.core.http.ConnectionManager.java

License:Open Source License

/**
 * @param url//from w  w  w  .  ja  va  2s .  c om
 * @param callback
 */
public void sendGetRequest(final String url, final HashMap<String, String> headers,
        final ConnectionCallback callback) {

    RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, URL.encode(url));
    builder.setTimeoutMillis(GuiConstants.CONNECTION_TIMEOUT);

    /*
     * Set header parameters
     */
    if (headers.isEmpty() == false) {
        Set<String> keys = headers.keySet();
        for (String key : keys) {
            builder.setHeader(key, headers.get(key));
        }
    }

    /*
      * Set request callback
      */
    builder.setCallback(new RequestCallback() {

        public void onResponseReceived(Request request, Response response) {

            if (STATUS_CODE_OK == response.getStatusCode()) {
                handleSuccess(response, callback);

            } else {
                handleFailure(response, callback);
            }

        }

        public void onError(Request request, Throwable exception) {

            if (exception instanceof RequestTimeoutException) {
                handleTimeout(exception, callback);

            } else {
                handleError(exception, callback);
            }

        }

    });

    try {
        builder.send();

    } catch (RequestException e) {
        handleError(e, callback);

    }

}