1 package com.bumptech.glide.load.data; 2 3 import android.content.ContentResolver; 4 import android.content.Context; 5 import android.net.Uri; 6 import android.os.ParcelFileDescriptor; 7 8 import java.io.FileNotFoundException; 9 import java.io.IOException; 10 11 /** 12 * Fetches an {@link android.os.ParcelFileDescriptor} for a local {@link android.net.Uri}. 13 */ 14 public class FileDescriptorLocalUriFetcher extends LocalUriFetcher<ParcelFileDescriptor> { 15 public FileDescriptorLocalUriFetcher(Context context, Uri uri) { 16 super(context, uri); 17 } 18 19 @Override 20 protected ParcelFileDescriptor loadResource(Uri uri, ContentResolver contentResolver) throws FileNotFoundException { 21 return contentResolver.openAssetFileDescriptor(uri, "r").getParcelFileDescriptor(); 22 } 23 24 @Override 25 protected void close(ParcelFileDescriptor data) throws IOException { 26 data.close(); 27 } 28 } 29