package com.bumptech.glide.load.model.file_descriptor; import android.content.Context; import android.net.Uri; import android.os.ParcelFileDescriptor; import com.bumptech.glide.Glide; import com.bumptech.glide.load.model.FileLoader; import com.bumptech.glide.load.model.GenericLoaderFactory; import com.bumptech.glide.load.model.ModelLoader; import com.bumptech.glide.load.model.ModelLoaderFactory; import java.io.File; /** * A {@link ModelLoader} For translating {@link File} models into {@link ParcelFileDescriptor} resources. */ public class FileDescriptorFileLoader extends FileLoader<ParcelFileDescriptor> implements FileDescriptorModelLoader<File> { public static class Factory implements ModelLoaderFactory<File, ParcelFileDescriptor> { @Override public ModelLoader<File, ParcelFileDescriptor> build(Context context, GenericLoaderFactory factories) { return new FileDescriptorFileLoader(factories.buildModelLoader(Uri.class, ParcelFileDescriptor.class, context)); } @Override public void teardown() { } } public FileDescriptorFileLoader(Context context) { this(Glide.buildFileDescriptorModelLoader(Uri.class, context)); } public FileDescriptorFileLoader(ModelLoader<Uri, ParcelFileDescriptor> uriLoader) { super(uriLoader); } }