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} data. */ public class FileDescriptorFileLoader extends FileLoader implements FileDescriptorModelLoader { /** * The default {@link com.bumptech.glide.load.model.ModelLoaderFactory} for * {@link com.bumptech.glide.load.model.file_descriptor.FileDescriptorFileLoader}s. */ public static class Factory implements ModelLoaderFactory { @Override public ModelLoader build(Context context, GenericLoaderFactory factories) { return new FileDescriptorFileLoader(factories.buildModelLoader(Uri.class, ParcelFileDescriptor.class)); } @Override public void teardown() { // Do nothing. } } public FileDescriptorFileLoader(Context context) { this(Glide.buildFileDescriptorModelLoader(Uri.class, context)); } public FileDescriptorFileLoader(ModelLoader uriLoader) { super(uriLoader); } }