List of usage examples for com.google.gwt.http.client RequestBuilder setCallback
public void setCallback(RequestCallback callback)
From source file:org.emfjson.gwt.handlers.HttpHandler.java
License:Open Source License
public static void create(final ResourceSet resourceSet, URI createService, final Callback<Resource> callback) { RequestBuilder builder = new RequestBuilder(RequestBuilder.POST, URL.encode(createService.toString())); builder.setHeader("Content-Type", "application/json"); builder.setCallback(new RequestCallback() { @Override/*from ww w. jav a 2s .c om*/ public void onResponseReceived(Request request, Response response) { if (response.getStatusCode() == 201) { String location = response.getHeader("Location"); Resource resource = resourceSet.createResource(URI.createURI(location)); callback.onSuccess(resource); } else { callback.onFailure(new Exception("Resource has not been created")); } } @Override public void onError(Request request, Throwable exception) { callback.onFailure(exception); } }); try { builder.send(); } catch (RequestException e) { callback.onFailure(e); } }
From source file:org.emfjson.gwt.handlers.HttpHandler.java
License:Open Source License
@Override public void createInputStream(final URI uri, Map<?, ?> options, final Callback<Map<?, ?>> callback) { RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, URL.encode(uri.toString())); builder.setHeader("Content-Type", "application/json"); builder.setCallback(new RequestCallback() { @Override/* w ww . j a v a 2s . co m*/ public void onResponseReceived(Request request, Response response) { Map<String, Object> resultMap = new HashMap<String, Object>(); Map<String, Object> responseMap = new HashMap<String, Object>(); resultMap.put(URIConverter.OPTION_RESPONSE, responseMap); if (200 == response.getStatusCode()) { String responseText = response.getText(); if (responseText != null) { InputStream stream = new ByteArrayInputStream(responseText.getBytes()); responseMap.put(URIConverter.RESPONSE_RESULT, stream); } callback.onSuccess(resultMap); } else { callback.onFailure(new Exception("Error " + response.getStatusCode())); } } @Override public void onError(Request request, Throwable exception) { callback.onFailure(exception); } }); try { builder.send(); } catch (RequestException e) { callback.onFailure(e); } }
From source file:org.emfjson.gwt.handlers.HttpHandler.java
License:Open Source License
@Override public void delete(URI uri, Map<?, ?> options, final Callback<Map<?, ?>> callback) { RequestBuilder builder = new RequestBuilder(RequestBuilder.DELETE, URL.encode(uri.toString())); builder.setHeader("Content-Type", "application/json"); builder.setCallback(new RequestCallback() { @Override/*w ww .j a v a 2 s . co m*/ public void onResponseReceived(Request request, Response response) { Map<String, Object> resultMap = new HashMap<String, Object>(); Map<String, Object> responseMap = new HashMap<String, Object>(); resultMap.put(URIConverter.OPTION_RESPONSE, responseMap); int code = response.getStatusCode(); if (code >= 200 && code < 300) { responseMap.put(URIConverter.RESPONSE_RESULT, null); responseMap.put(URIConverter.RESPONSE_TIME_STAMP_PROPERTY, null); responseMap.put(URIConverter.RESPONSE_URI, null); callback.onSuccess(resultMap); } else { callback.onFailure(new Exception(response.getStatusText())); } } @Override public void onError(Request request, Throwable exception) { callback.onFailure(exception); } }); try { builder.send(); } catch (RequestException e) { callback.onFailure(e); } }
From source file:org.emfjson.gwt.handlers.HttpHandler.java
License:Open Source License
@Override public void store(URI uri, byte[] bytes, Map<?, ?> options, final Callback<Map<?, ?>> callback) { RequestBuilder builder = new RequestBuilder(RequestBuilder.PUT, URL.encode(uri.toString())); builder.setHeader("Content-Type", "application/json"); builder.setRequestData(new String(bytes)); builder.setCallback(new RequestCallback() { @Override/*from w w w. jav a 2 s.c o m*/ public void onResponseReceived(Request request, Response response) { Map<String, Object> resultMap = new HashMap<String, Object>(); Map<String, Object> responseMap = new HashMap<String, Object>(); resultMap.put(URIConverter.OPTION_RESPONSE, responseMap); int code = response.getStatusCode(); if (code >= 200 && code < 300) { responseMap.put(URIConverter.RESPONSE_RESULT, new ByteArrayInputStream(response.getText().getBytes())); responseMap.put(URIConverter.RESPONSE_TIME_STAMP_PROPERTY, null); responseMap.put(URIConverter.RESPONSE_URI, null); callback.onSuccess(resultMap); } else { callback.onFailure(new Exception("Error " + response.getStatusCode())); } } @Override public void onError(Request request, Throwable exception) { callback.onFailure(exception); } }); try { builder.send(); } catch (RequestException e) { callback.onFailure(e); } }
From source file:org.emfjson.gwt.handlers.HttpHandler.java
License:Open Source License
@Override public void exists(URI uri, Map<?, ?> options, final Callback<Boolean> callback) { RequestBuilder builder = new RequestBuilder(RequestBuilder.HEAD, URL.encode(uri.toString())); builder.setHeader("Content-Type", "application/json"); builder.setCallback(new RequestCallback() { @Override//from ww w . j a va 2 s .co m public void onResponseReceived(Request request, Response response) { int code = response.getStatusCode(); if (code >= 200 && code < 300) { callback.onSuccess(true); } else { callback.onSuccess(false); } } @Override public void onError(Request request, Throwable exception) { callback.onFailure(exception); } }); try { builder.send(); } catch (RequestException e) { callback.onFailure(e); } }
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 ww w . ja v a2 s . co 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 av a 2 s . c om 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.DefaultDispatcherFilter.java
License:Apache License
/** * main filter method for a dispatcherfilter. * * @return continue filtering or not//from w w w .ja v a2 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.gk.engine.client.utils.ComLibrary.java
License:Open Source License
public static void requestGet(String url) { RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, URL.encode(url)); builder.setCallback(new RequestCallback() { @Override/*from ww w .j av a 2 s. c om*/ public void onError(Request request, Throwable exception) { EngineLogger.log(exception); } @Override public void onResponseReceived(Request request, Response response) { // responseOK??set if (response.getStatusCode() == Response.SC_OK) { setLibrary(response.getText()); ready = true; } else { loadingLibraryByEventBus(); } } }); try { builder.send(); } catch (RequestException e) { EngineLogger.log(e); } }
From source file:org.gwtbootstrap3.demo.client.application.extras.SummernoteView.java
License:Apache License
@Inject SummernoteView(final Binder uiBinder) { initWidget(uiBinder.createAndBindUi(this)); // Hint for words hintWords.setHint("\\b(\\w{1,})$", new DefaultHintHandler() { List<String> words = new ArrayList<>(Arrays.asList("apple", "orange", "watermelon", "lemon")); @Override/* ww w . ja v a 2s. c om*/ public String[] onSearch(String keyword) { List<String> result = new ArrayList<>(0); for (String word : words) { if (word.indexOf(keyword) == 0) result.add(word); } return result.toArray(new String[0]); } }); // Hint for emoji RequestBuilder requestBuilder = new RequestBuilder(RequestBuilder.GET, "https://api.github.com/emojis"); requestBuilder.setCallback(new RequestCallback() { @Override public void onResponseReceived(Request request, Response response) { String text = response.getText(); final JSONObject emojiUrls = JSONParser.parseStrict(text).isObject(); GWT.log("Found " + emojiUrls.size() + " emojis"); hintEmoji.setHint(":([\\-+\\w]+)$", new DefaultHintHandler() { @Override public String[] onSearch(String keyword) { List<String> result = new ArrayList<>(0); for (String key : emojiUrls.keySet()) { if (key.indexOf(keyword) == 0) result.add(key); } return result.toArray(new String[0]); } @Override public String getTemplate(String item) { String url = emojiUrls.get(item).isString().stringValue(); return "<img src=\"" + url + "\" style=\"width:20px\"/> :" + item + ":"; } @Override public Node getContent(String item) { String url = emojiUrls.get(item).isString().stringValue(); ImageElement img = Document.get().createImageElement(); img.setSrc(url); img.getStyle().setWidth(20, Unit.PX); return img; } }); hintEmoji.reconfigure(); } @Override public void onError(Request request, Throwable exception) { GWT.log("Error while requesting emojis", exception); } }); try { requestBuilder.send(); } catch (RequestException e) { GWT.log("Error while sending request for emojis", e); } // Customize toolbar customToolbar.setFontNames(SummernoteFontName.HELVETICA_NEUE, SummernoteFontName.VERDANA, SummernoteFontName.ARIAL); customToolbar.setToolbar(new Toolbar().addGroup(ToolbarButton.FONT_NAME, ToolbarButton.FONT_SIZE) .addGroup(ToolbarButton.UNDO, ToolbarButton.REDO).addGroup(ToolbarButton.CODE_VIEW) .addGroup(ToolbarButton.TABLE)); // Language SummernoteLanguage defaultLanguage = languageNote.getLanguage(); for (SummernoteLanguage language : SummernoteLanguage.values()) { languageBox.addItem(language.getCode(), language.name()); } languageBox.setSelectedIndex(defaultLanguage.ordinal()); }