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

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

Introduction

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

Prototype

public String getHTTPMethod() 

Source Link

Document

Returns the HTTP method specified in the constructor.

Usage

From source file:org.fusesource.restygwt.client.cache.ComplexCacheKey.java

License:Apache License

public ComplexCacheKey(RequestBuilder requestBuilder) {
    super(requestBuilder.getHTTPMethod() + " " + requestBuilder.getUrl() + " ["
            + requestBuilder.getRequestData() + "]");
}

From source file:org.fusesource.restygwt.client.dispatcher.CacheKey.java

License:Apache License

public CacheKey(RequestBuilder requestBuilder) {
    this.url = requestBuilder.getUrl();
    this.requestData = requestBuilder.getRequestData();
    this.httpMethod = requestBuilder.getHTTPMethod();

}

From source file:org.fusesource.restygwt.client.dispatcher.CachingDispatcherFilter.java

License:Apache License

protected CacheKey cacheKey(RequestBuilder builder) {
    if (RequestBuilder.GET.toString().equalsIgnoreCase(builder.getHTTPMethod())) {
        return new ComplexCacheKey(builder);
    }//from   w w  w .j a  va  2 s .c  o  m
    return null;
}

From source file:org.fusesource.restygwt.client.dispatcher.CachingDispatcherFilter.java

License:Apache License

/**
 * main filter method for a dispatcherfilter.
 *
 * @return continue filtering or not/*from  www  .j a  v  a2 s .  c  o m*/
 */
@Override
public boolean filter(final Method method, final RequestBuilder builder) {
    final CacheKey cacheKey = cacheKey(builder);

    if (cacheKey != null) {
        final Response cachedResponse = cacheStorage.getResultOrReturnNull(cacheKey);
        if (cachedResponse != null) {
            //case 1: we got a result in cache => return it...
            if (LogConfiguration.loggingIsEnabled()) {
                Logger.getLogger(Dispatcher.class.getName()).info("already got a cached response for: "
                        + builder.getHTTPMethod() + " " + builder.getUrl());
            }
            // onResponseReceived can be time consuming and can manipulate the DOM
            // deferring the command keeps the async behaviour of this method call
            Scheduler.get().scheduleDeferred(new ScheduledCommand() {

                @Override
                public void execute() {
                    builder.getCallback().onResponseReceived(null, cachedResponse);
                }
            });
            return false;
        }
        final RequestCallback callback = callbackFactory.createCallback(method);

        //case 2: => no cache in result => queue it....
        if (!cacheStorage.hasCallback(cacheKey)) {
            //case 2.1 => first callback => make a new one and execute...
            cacheStorage.addCallback(cacheKey, builder.getCallback());

            if (LogConfiguration.loggingIsEnabled()) {
                Logger.getLogger(Dispatcher.class.getName()).info(
                        "Sending *caching* http request: " + builder.getHTTPMethod() + " " + builder.getUrl());
            }

            // important part:
            builder.setCallback(callback);
            return true;
        }
        //case 2.2 => a callback already in progress => queue to get response when back
        if (LogConfiguration.loggingIsEnabled()) {
            Logger.getLogger(Dispatcher.class.getName()).info(
                    "request in progress, queue callback: " + builder.getHTTPMethod() + " " + builder.getUrl());
        }
        cacheStorage.addCallback(cacheKey, callback);
        return false;
    }
    // non cachable case
    if (LogConfiguration.loggingIsEnabled()) {
        String content = builder.getRequestData();
        Logger.getLogger(Dispatcher.class.getName()).info("Sending *non-caching* http request: "
                + builder.getHTTPMethod() + " " + builder.getUrl() + " (Content: `" + content + ")");
    }

    //            /*
    //             * add X-Request-Token to all non-caching calls (!= GET) if we have some
    //             */
    //            builder.setHeader("X-Testing", "Bude");

    builder.setCallback(callbackFactory.createCallback(method));
    return true;// continue filtering
}

From source file:org.fusesource.restygwt.client.dispatcher.CachingRetryingDispatcher.java

License:Apache License

public Request send(Method method, RequestBuilder builder) throws RequestException {

    RequestCallback outerRequestCallback = builder.getCallback();
    final CacheKey cacheKey = new CacheKey(builder);

    final Response cachedResponse = cacheStorage.getResultOrReturnNull(cacheKey);

    if (cachedResponse != null) {

        outerRequestCallback.onResponseReceived(null, cachedResponse);
        return null;

    } else {//from   ww  w  .j  a v a 2 s  .c  o  m

        RequestCallback retryingCallback = new CachingRetryingCallback(builder, outerRequestCallback);
        builder.setCallback(retryingCallback);

        GWT.log("Sending http request: " + builder.getHTTPMethod() + " " + builder.getUrl() + " ,timeout:"
                + builder.getTimeoutMillis(), null);

        String content = builder.getRequestData();

        if (content != null && content.length() > 0) {
            GWT.log(content, null);
        }

        return builder.send();
    }

}

From source file:org.fusesource.restygwt.client.dispatcher.DefaultDispatcher.java

License:Apache License

public Request send(Method method, RequestBuilder builder) throws RequestException {
    GWT.log("Sending http request: " + builder.getHTTPMethod() + " " + builder.getUrl() + " ,timeout:"
            + builder.getTimeoutMillis(), null);

    String content = builder.getRequestData();
    if (content != null && content.length() > 0) {
        GWT.log(content, null);/*from  w w  w  . j  a  v  a2  s. co m*/
    }
    return builder.send();
}

From source file:org.fusesource.restygwt.client.dispatcher.DefaultDispatcherFilter.java

License:Apache License

/**
 * main filter method for a dispatcherfilter.
 *
 * @return continue filtering or not/* www.j  a  v  a 2  s .c  om*/
 */
@Override
public boolean filter(final Method method, final RequestBuilder builder) {
    if (LogConfiguration.loggingIsEnabled()) {
        Logger.getLogger(Dispatcher.class.getName())
                .info("Sending http request: " + builder.getHTTPMethod() + " " + builder.getUrl());
    }

    builder.setCallback(callbackFactory.createCallback(method));
    return true;
}

From source file:org.fusesource.restygwt.client.dispatcher.DefaultFilterawareDispatcher.java

License:Apache License

@Override
public Request send(Method method, RequestBuilder builder) throws RequestException {
    for (DispatcherFilter f : dispatcherFilters) {
        if (!f.filter(method, builder)) {
            // filter returned false, no continue
            if (GWT.isClient() && LogConfiguration.loggingIsEnabled()) {
                Logger.getLogger(DefaultFilterawareDispatcher.class.getName())
                        .fine(f.getClass() + " told me not to continue filtering for: "
                                + builder.getHTTPMethod() + " " + builder.getUrl());
            }/*from w  w  w  . j  a v a2s  .  c  om*/
            return null;
        }
    }

    return builder.send();
}

From source file:org.fusesource.restygwt.client.dispatcher.FilterawareRetryingDispatcher.java

License:Apache License

public Request send(Method method, RequestBuilder builder) throws RequestException {
    for (DispatcherFilter f : dispatcherFilters) {
        if (!f.filter(method, builder)) {
            // filter returned false, no continue
            if (LogConfiguration.loggingIsEnabled()) {
                Logger.getLogger(FilterawareRetryingDispatcher.class.getName())
                        .fine(f.getClass() + " told me not to continue filtering for: "
                                + builder.getHTTPMethod() + " " + builder.getUrl());
            }//w w w . j  a  va2 s  .  com
            return null;
        }
    }

    return builder.send();
}

From source file:org.fusesource.restygwt.client.dispatcher.RestfulCachingDispatcherFilter.java

License:Apache License

@Override
protected CacheKey cacheKey(RequestBuilder builder) {
    if (RequestBuilder.GET.toString().equalsIgnoreCase(builder.getHTTPMethod())) {
        return new UrlCacheKey(builder);
    }//from   ww  w .j  ava  2  s  .c om
    return null;
}