19fc12334a7d14347cd6951d0653264b2597bd3a0Sam Juddpackage com.bumptech.glide.load.model.stream; 2fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd 3fcd787c911d5fbca2a34ff0963d4665543a03275Sam Juddimport android.content.Context; 4fcd787c911d5fbca2a34ff0963d4665543a03275Sam Juddimport android.net.Uri; 54626911b917568f6c1bd9d93f91ae1c70cb43554Sam Juddimport com.bumptech.glide.Glide; 69fc12334a7d14347cd6951d0653264b2597bd3a0Sam Juddimport com.bumptech.glide.load.model.GenericLoaderFactory; 79fc12334a7d14347cd6951d0653264b2597bd3a0Sam Juddimport com.bumptech.glide.load.model.ModelLoader; 89fc12334a7d14347cd6951d0653264b2597bd3a0Sam Juddimport com.bumptech.glide.load.model.ModelLoaderFactory; 99fc12334a7d14347cd6951d0653264b2597bd3a0Sam Juddimport com.bumptech.glide.load.model.StringLoader; 10fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd 11fcd787c911d5fbca2a34ff0963d4665543a03275Sam Juddimport java.io.InputStream; 12fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd 13fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd/** 14fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd * A {@link ModelLoader} For translating {@link String} models, such as file paths or remote urls, into 15fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd * {@link InputStream} resources. 16fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd */ 17fcd787c911d5fbca2a34ff0963d4665543a03275Sam Juddpublic class StreamStringLoader extends StringLoader<InputStream> implements StreamModelLoader<String> { 184626911b917568f6c1bd9d93f91ae1c70cb43554Sam Judd 19fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd public static class Factory implements ModelLoaderFactory<String, InputStream> { 20fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd @Override 21fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd public ModelLoader<String, InputStream> build(Context context, GenericLoaderFactory factories) { 22fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd return new StreamStringLoader(factories.buildModelLoader(Uri.class, InputStream.class, context)); 23fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd } 24fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd 25fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd @Override 26fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd public void teardown() { } 27fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd } 28fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd 294626911b917568f6c1bd9d93f91ae1c70cb43554Sam Judd public StreamStringLoader(Context context) { 304626911b917568f6c1bd9d93f91ae1c70cb43554Sam Judd this(Glide.buildStreamModelLoader(Uri.class, context)); 314626911b917568f6c1bd9d93f91ae1c70cb43554Sam Judd } 324626911b917568f6c1bd9d93f91ae1c70cb43554Sam Judd 33fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd public StreamStringLoader(ModelLoader<Uri, InputStream> uriLoader) { 34fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd super(uriLoader); 35fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd } 36fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd} 37