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

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

Introduction

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

Prototype

public Request send() throws RequestException 

Source Link

Document

Sends an HTTP request based on the current builder configuration.

Usage

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//w  w w .  j ava 2 s .  c  o m
 * @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/*  w  w  w.j av a2s .  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.
 * //www  .  ja va  2s  . c om
 * @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  . ja v  a2  s .c o m
 * @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  w w  .ja v a 2  s  .co 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/*from  w w w.j ava 2s.  c o m*/
 * @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  www.j a va 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(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);

    }

}

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

License:Open Source License

/**
 * @param url//from w  ww  .  j a v  a 2s. com
 * @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(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 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()) {
                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.spartusch.nasfvi.client.MainWidget.java

License:Apache License

@Override
public final void onValueChange(final ValueChangeEvent<String> event) {
    String[] state = event.getValue().split("&", -1);

    if (state.length != 2) {
        throw new AssertionError();
    }//from www  .j ava2 s  .c  om

    String q = URL.decodeQueryString(state[0]).replaceAll("\\s+", " ").trim();
    String offset = state[1];

    suggestBox.setText(q);

    if (q.isEmpty()) {
        setMessage("Bitte geben Sie eine Anfrage in das Textfeld ein.", "error");
    } else if (q.matches(PLACEHOLDERS)) {
        setMessage("Bitte ersetzen Sie smtliche Platzhalter durch" + " konkrete Werte!", "error");
    } else {
        clearMessage();
        try {
            String getUrl = parseUrl + URL.encodeQueryString(q) + "&offset=" + offset;
            RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, getUrl);
            builder.setCallback(this);
            builder.send();
        } catch (RequestException e) {
            Main.displayError(e.getLocalizedMessage(), e.toString());
        }
    }
}

From source file:de.spartusch.nasfvi.client.SuggestRequest.java

License:Apache License

@Override
public final void run() {
    try {/*from  www .ja v a  2 s. c  om*/
        String getUrl = url + URL.encodeQueryString(soRequest.getQuery());
        RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, getUrl);
        builder.setCallback(this);
        builder.send();
    } catch (RequestException e) {
        Main.displayError(e.getLocalizedMessage(), e.toString());
    }
}