@Override
public IORequest<String> get(final String uri, final StringDictionary<String> headers, final IOCallback<IOMessage<String>> callback) {
final String url = normalize(uri);
if (callback.isCancelled()) {
return cancelled;
}
try {
final RequestBuilder request = newRequest(RequestBuilder.GET, url);
normalizeHeaders(headers).forKeys(new ReceivesValue<String>() {
@Override
public void set(final String key) {
final String value = headers.getValue(key);
request.setHeader(key, value);
}
});
applySettings(request, IOConstants.METHOD_GET);
final IORequestGwt req = createRequest();
sendRequest(request, req, callback, url, headers, IOConstants.METHOD_GET, null);
return req;
} catch (final Throwable e) {
callback.onError(e);
if (X_Runtime.isDebug()) {
X_Log.warn("IO Error", e);
}
return cancelled;
}
}