@Override public void loadData(@NonNull Priority priority, @NonNull DataCallback<? super InputStream> callback) { long startTime = LogTime.getLogTime(); try { InputStream result = loadDataWithRedirects(glideUrl.toURL(), 0, null, glideUrl.getHeaders()); callback.onDataReady(result); } catch (IOException e) { if (Log.isLoggable(TAG, Log.DEBUG)) { Log.d(TAG, "Failed to load data for url", e); } callback.onLoadFailed(e); } finally { if (Log.isLoggable(TAG, Log.VERBOSE)) { Log.v(TAG, "Finished http url fetcher fetch in " + LogTime.getElapsedMillis(startTime)); } } }
@Before public void setUp() throws IOException { MockitoAnnotations.initMocks(this); URL url = new URL("http://www.google.com"); when(connectionFactory.build(eq(url))).thenReturn(urlConnection); when(urlConnection.getInputStream()).thenReturn(stream); when(urlConnection.getResponseCode()).thenReturn(200); when(glideUrl.toURL()).thenReturn(url); fetcher = new HttpUrlFetcher(glideUrl, TIMEOUT_MS, connectionFactory); }
@Test public void testIssue133() throws MalformedURLException { // u00e0=à final String original = "http://www.commitstrip.com/wp-content/uploads/2014/07/" + "Excel-\u00E0-toutes-les-sauces-650-finalenglish.jpg"; final String escaped = "http://www.commitstrip.com/wp-content/uploads/2014/07/" + "Excel-%C3%A0-toutes-les-sauces-650-finalenglish.jpg"; GlideUrl glideUrlFromString = new GlideUrl(original); assertEquals(escaped, glideUrlFromString.toURL().toString()); GlideUrl glideUrlFromEscapedString = new GlideUrl(escaped); assertEquals(escaped, glideUrlFromEscapedString.toURL().toString()); GlideUrl glideUrlFromUrl = new GlideUrl(new URL(original)); assertEquals(escaped, glideUrlFromUrl.toURL().toString()); GlideUrl glideUrlFromEscapedUrl = new GlideUrl(new URL(escaped)); assertEquals(escaped, glideUrlFromEscapedUrl.toURL().toString()); }
@Test public void testProducesEquivalentUrlFromString() throws MalformedURLException { String stringUrl = "http://www.google.com"; GlideUrl glideUrl = new GlideUrl(stringUrl); URL url = glideUrl.toURL(); assertEquals(stringUrl, url.toString()); }
@Test public void issue_2583() throws MalformedURLException { String original = "http://api.met.no/weatherapi/weathericon/1.1/?symbol=9;content_type=image/png"; GlideUrl glideUrl = new GlideUrl(original); assertThat(glideUrl.toURL().toString()).isEqualTo(original); assertThat(glideUrl.toStringUrl()).isEqualTo(original); }
@Override public InputStream loadData(Priority priority) throws Exception { return loadDataWithRedirects(glideUrl.toURL(), 0 /*redirects*/, null /*lastUrl*/, glideUrl.getHeaders()); }
@Override public void loadData(Priority priority, DataCallback<? super InputStream> callback) { long startTime = LogTime.getLogTime(); final InputStream result; try { result = loadDataWithRedirects(glideUrl.toURL(), 0 /*redirects*/, null /*lastUrl*/, glideUrl.getHeaders()); } catch (IOException e) { if (Log.isLoggable(TAG, Log.DEBUG)) { Log.d(TAG, "Failed to load data for url", e); } callback.onLoadFailed(e); return; } if (Log.isLoggable(TAG, Log.VERBOSE)) { Log.v(TAG, "Finished http url fetcher fetch in " + LogTime.getElapsedMillis(startTime) + " ms and loaded " + result); } callback.onDataReady(result); }