1package com.bumptech.glide.load.model;
2
3import android.content.Context;
4import android.net.Uri;
5import com.bumptech.glide.load.data.DataFetcher;
6
7/**
8 * A model loader for handling resources. Model must be a resource id in the package of the given context.
9 */
10public class ResourceLoader<T> implements ModelLoader<Integer, T> {
11
12    private final ModelLoader<Uri, T> uriLoader;
13    private final Context context;
14
15    public ResourceLoader(Context context, ModelLoader<Uri, T> uriLoader) {
16        this.context = context;
17        this.uriLoader = uriLoader;
18    }
19
20    @Override
21    public DataFetcher<T> getResourceFetcher(Integer model, int width, int height) {
22        Uri uri = Uri.parse("android.resource://" + context.getPackageName() + "/" + model.toString());
23        return uriLoader.getResourceFetcher(uri, width, height);
24    }
25}
26