StreamResourceLoader.java revision ac28599e2b40e0dd6b97f6a91849585531264622
1package com.bumptech.glide.load.model.stream; 2 3import android.content.Context; 4import android.net.Uri; 5import com.bumptech.glide.Glide; 6import com.bumptech.glide.load.model.GenericLoaderFactory; 7import com.bumptech.glide.load.model.ModelLoader; 8import com.bumptech.glide.load.model.ModelLoaderFactory; 9import com.bumptech.glide.load.model.ResourceLoader; 10 11import java.io.InputStream; 12 13/** 14 * A {@link ModelLoader} For translating android resource id models for local uris into {@link InputStream} resources. 15 */ 16public class StreamResourceLoader extends ResourceLoader<InputStream> implements StreamModelLoader<Integer> { 17 18 public static class Factory implements ModelLoaderFactory<Integer, InputStream> { 19 20 @Override 21 public ModelLoader<Integer, InputStream> build(Context context, GenericLoaderFactory factories) { 22 return new StreamResourceLoader(context, factories.buildModelLoader(Uri.class, InputStream.class, context)); 23 } 24 25 @Override 26 public void teardown() { } 27 } 28 29 public StreamResourceLoader(Context context) { 30 this(context, Glide.buildStreamModelLoader(Uri.class, context)); 31 } 32 33 public StreamResourceLoader(Context context, ModelLoader<Uri, InputStream> uriLoader) { 34 super(context, uriLoader); 35 } 36} 37