diff options
author | Sam Judd <judds@google.com> | 2014-07-01 09:00:11 -0700 |
---|---|---|
committer | Sam Judd <judds@google.com> | 2014-07-02 15:53:49 -0700 |
commit | bb6268f046f355e1b6cd1bad6707288180a4bac4 (patch) | |
tree | f1e7653fef4ecef6e709a03b073329a17489d130 /samples/flickr | |
parent | 0db3c45b412be1a5bfcb1da046836e89d3ffd0b4 (diff) | |
download | glide-bb6268f046f355e1b6cd1bad6707288180a4bac4.tar.gz |
Add download only methods for Files.
Diffstat (limited to 'samples/flickr')
3 files changed, 29 insertions, 18 deletions
diff --git a/samples/flickr/src/main/java/com/bumptech/glide/samples/flickr/FlickrPhotoGrid.java b/samples/flickr/src/main/java/com/bumptech/glide/samples/flickr/FlickrPhotoGrid.java index c75e218f..93981c6e 100644 --- a/samples/flickr/src/main/java/com/bumptech/glide/samples/flickr/FlickrPhotoGrid.java +++ b/samples/flickr/src/main/java/com/bumptech/glide/samples/flickr/FlickrPhotoGrid.java @@ -99,6 +99,8 @@ public class FlickrPhotoGrid extends SherlockFragment implements PhotoViewer { protected GenericRequestBuilder getRequestBuilder(Photo item) { return Glide.with(FlickrPhotoGrid.this) .loadFromImage(item) + .cacheSource(true) + .skipDiskCache(true) .override(Api.SQUARE_THUMB_SIZE, Api.SQUARE_THUMB_SIZE) .priority(Priority.HIGH); } @@ -149,6 +151,8 @@ public class FlickrPhotoGrid extends SherlockFragment implements PhotoViewer { .loadFromImage(current) .thumbnail(Glide.with(FlickrPhotoGrid.this) .loadFromImage(current) + .cacheSource(true) + .skipDiskCache(true) .override(Api.SQUARE_THUMB_SIZE, Api.SQUARE_THUMB_SIZE) ) .animate(R.anim.fade_in) diff --git a/samples/flickr/src/main/java/com/bumptech/glide/samples/flickr/FlickrPhotoList.java b/samples/flickr/src/main/java/com/bumptech/glide/samples/flickr/FlickrPhotoList.java index e33b8b9d..83ec234f 100644 --- a/samples/flickr/src/main/java/com/bumptech/glide/samples/flickr/FlickrPhotoList.java +++ b/samples/flickr/src/main/java/com/bumptech/glide/samples/flickr/FlickrPhotoList.java @@ -116,6 +116,8 @@ public class FlickrPhotoList extends SherlockFragment implements PhotoViewer { .loadFromImage(item) .thumbnail(Glide.with(FlickrPhotoList.this) .loadFromImage(item) + .cacheSource(true) + .skipDiskCache(true) .override(Api.SQUARE_THUMB_SIZE, Api.SQUARE_THUMB_SIZE) ) .centerCrop(); @@ -177,6 +179,8 @@ public class FlickrPhotoList extends SherlockFragment implements PhotoViewer { .placeholder(new ColorDrawable(Color.GRAY)) .thumbnail(Glide.with(FlickrPhotoList.this) .loadFromImage(current) + .cacheSource(true) + .skipDiskCache(true) .override(Api.SQUARE_THUMB_SIZE, Api.SQUARE_THUMB_SIZE)) .centerCrop() .crossFade(R.anim.fade_in, 150) diff --git a/samples/flickr/src/main/java/com/bumptech/glide/samples/flickr/FlickrSearchActivity.java b/samples/flickr/src/main/java/com/bumptech/glide/samples/flickr/FlickrSearchActivity.java index 73009a97..e30dd45e 100644 --- a/samples/flickr/src/main/java/com/bumptech/glide/samples/flickr/FlickrSearchActivity.java +++ b/samples/flickr/src/main/java/com/bumptech/glide/samples/flickr/FlickrSearchActivity.java @@ -2,7 +2,6 @@ package com.bumptech.glide.samples.flickr; import android.annotation.TargetApi; import android.content.Context; -import android.graphics.Bitmap; import android.os.Bundle; import android.os.Handler; import android.os.HandlerThread; @@ -30,6 +29,7 @@ import com.bumptech.glide.request.FutureTarget; import com.bumptech.glide.samples.flickr.api.Api; import com.bumptech.glide.samples.flickr.api.Photo; +import java.io.File; import java.io.InputStream; import java.util.ArrayList; import java.util.HashMap; @@ -51,7 +51,7 @@ public class FlickrSearchActivity extends SherlockFragmentActivity { private View searchLoading; private String currentSearchString; private final SearchListener searchListener = new SearchListener(); - private BackgroundThumbnailLoader backgroundThumbnailLoader; + private BackgroundThumbnailFetcher backgroundThumbnailFetcher; private HandlerThread backgroundThread; private Handler backgroundHandler; @@ -164,9 +164,9 @@ public class FlickrSearchActivity extends SherlockFragmentActivity { protected void onDestroy() { super.onDestroy(); Api.get(this).unregisterSearchListener(searchListener); - if (backgroundThumbnailLoader != null) { - backgroundThumbnailLoader.cancel(); - backgroundThumbnailLoader = null; + if (backgroundThumbnailFetcher != null) { + backgroundThumbnailFetcher.cancel(); + backgroundThumbnailFetcher = null; backgroundThread.quit(); backgroundThread = null; } @@ -240,12 +240,12 @@ public class FlickrSearchActivity extends SherlockFragmentActivity { viewer.onPhotosUpdated(photos); } - if (backgroundThumbnailLoader != null) { - backgroundThumbnailLoader.cancel(); + if (backgroundThumbnailFetcher != null) { + backgroundThumbnailFetcher.cancel(); } - backgroundThumbnailLoader = new BackgroundThumbnailLoader(FlickrSearchActivity.this, photos); - backgroundHandler.post(backgroundThumbnailLoader); + backgroundThumbnailFetcher = new BackgroundThumbnailFetcher(FlickrSearchActivity.this, photos); + backgroundHandler.post(backgroundThumbnailFetcher); currentPhotos = photos; } @@ -320,12 +320,12 @@ public class FlickrSearchActivity extends SherlockFragmentActivity { } } - private static class BackgroundThumbnailLoader implements Runnable { + private static class BackgroundThumbnailFetcher implements Runnable { private boolean isCancelled; private Context context; private List<Photo> photos; - public BackgroundThumbnailLoader(Context context, List<Photo> photos) { + public BackgroundThumbnailFetcher(Context context, List<Photo> photos) { this.context = context; this.photos = photos; } @@ -342,17 +342,20 @@ public class FlickrSearchActivity extends SherlockFragmentActivity { return; } - // TODO: we don't need to decode here, we can just use downloadOnly. - FutureTarget<Bitmap> futureTarget = Glide.with(context) - .loadFromImage(photo) - .asBitmap() - .into(Api.SQUARE_THUMB_SIZE, Api.SQUARE_THUMB_SIZE); + FutureTarget<File> futureTarget = Glide.with(context) + .load(photo) + .downloadOnly(Api.SQUARE_THUMB_SIZE, Api.SQUARE_THUMB_SIZE); + try { futureTarget.get(); } catch (InterruptedException e) { - e.printStackTrace(); + if (Log.isLoggable(TAG, Log.DEBUG)) { + Log.d(TAG, "Interrupted waiting for background downloadOnly", e); + } } catch (ExecutionException e) { - e.printStackTrace(); + if (Log.isLoggable(TAG, Log.DEBUG)) { + Log.d(TAG, "Got ExecutionException waiting for background downloadOnly", e); + } } Glide.clear(futureTarget); } |