19fc12334a7d14347cd6951d0653264b2597bd3a0Sam Juddpackage com.bumptech.glide.load.model; 20ae32dc10d668a04f9f0484d587aefe5a7210e1cSam Judd 30ae32dc10d668a04f9f0484d587aefe5a7210e1cSam Juddimport android.content.Context; 40ae32dc10d668a04f9f0484d587aefe5a7210e1cSam Juddimport android.net.Uri; 5bcf4a0dae04a4ad14287eeb34069a97c96fe9bb1Sam Juddimport com.bumptech.glide.load.data.DataFetcher; 60ae32dc10d668a04f9f0484d587aefe5a7210e1cSam Judd 70ae32dc10d668a04f9f0484d587aefe5a7210e1cSam Judd/** 80ae32dc10d668a04f9f0484d587aefe5a7210e1cSam Judd * A model loader for handling resources. Model must be a resource id in the package of the given context. 90ae32dc10d668a04f9f0484d587aefe5a7210e1cSam Judd */ 10fcd787c911d5fbca2a34ff0963d4665543a03275Sam Juddpublic class ResourceLoader<T> implements ModelLoader<Integer, T> { 110ae32dc10d668a04f9f0484d587aefe5a7210e1cSam Judd 12fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd private final ModelLoader<Uri, T> uriLoader; 130ae32dc10d668a04f9f0484d587aefe5a7210e1cSam Judd private final Context context; 140ae32dc10d668a04f9f0484d587aefe5a7210e1cSam Judd 15fcd787c911d5fbca2a34ff0963d4665543a03275Sam Judd public ResourceLoader(Context context, ModelLoader<Uri, T> uriLoader) { 160ae32dc10d668a04f9f0484d587aefe5a7210e1cSam Judd this.context = context; 170ae32dc10d668a04f9f0484d587aefe5a7210e1cSam Judd this.uriLoader = uriLoader; 180ae32dc10d668a04f9f0484d587aefe5a7210e1cSam Judd } 190ae32dc10d668a04f9f0484d587aefe5a7210e1cSam Judd 200ae32dc10d668a04f9f0484d587aefe5a7210e1cSam Judd @Override 21bcf4a0dae04a4ad14287eeb34069a97c96fe9bb1Sam Judd public DataFetcher<T> getResourceFetcher(Integer model, int width, int height) { 220ae32dc10d668a04f9f0484d587aefe5a7210e1cSam Judd Uri uri = Uri.parse("android.resource://" + context.getPackageName() + "/" + model.toString()); 230ae32dc10d668a04f9f0484d587aefe5a7210e1cSam Judd return uriLoader.getResourceFetcher(uri, width, height); 240ae32dc10d668a04f9f0484d587aefe5a7210e1cSam Judd } 250ae32dc10d668a04f9f0484d587aefe5a7210e1cSam Judd} 26