116 lines
4.0 KiB
Java
116 lines
4.0 KiB
Java
package com.bumptech.glide.load.model;
|
|
|
|
import android.content.res.AssetFileDescriptor;
|
|
import android.content.res.Resources;
|
|
import android.net.Uri;
|
|
import android.os.ParcelFileDescriptor;
|
|
import android.util.Log;
|
|
import com.bumptech.glide.load.Options;
|
|
import com.bumptech.glide.load.model.ModelLoader;
|
|
import java.io.InputStream;
|
|
|
|
/* loaded from: classes.dex */
|
|
public class ResourceLoader<Data> implements ModelLoader<Integer, Data> {
|
|
private final ModelLoader<Uri, Data> a;
|
|
private final Resources b;
|
|
|
|
public static final class AssetFileDescriptorFactory implements ModelLoaderFactory<Integer, AssetFileDescriptor> {
|
|
private final Resources a;
|
|
|
|
public AssetFileDescriptorFactory(Resources resources) {
|
|
this.a = resources;
|
|
}
|
|
|
|
@Override // com.bumptech.glide.load.model.ModelLoaderFactory
|
|
public ModelLoader<Integer, AssetFileDescriptor> a(MultiModelLoaderFactory multiModelLoaderFactory) {
|
|
return new ResourceLoader(this.a, multiModelLoaderFactory.a(Uri.class, AssetFileDescriptor.class));
|
|
}
|
|
|
|
@Override // com.bumptech.glide.load.model.ModelLoaderFactory
|
|
public void a() {
|
|
}
|
|
}
|
|
|
|
public static class FileDescriptorFactory implements ModelLoaderFactory<Integer, ParcelFileDescriptor> {
|
|
private final Resources a;
|
|
|
|
public FileDescriptorFactory(Resources resources) {
|
|
this.a = resources;
|
|
}
|
|
|
|
@Override // com.bumptech.glide.load.model.ModelLoaderFactory
|
|
public ModelLoader<Integer, ParcelFileDescriptor> a(MultiModelLoaderFactory multiModelLoaderFactory) {
|
|
return new ResourceLoader(this.a, multiModelLoaderFactory.a(Uri.class, ParcelFileDescriptor.class));
|
|
}
|
|
|
|
@Override // com.bumptech.glide.load.model.ModelLoaderFactory
|
|
public void a() {
|
|
}
|
|
}
|
|
|
|
public static class StreamFactory implements ModelLoaderFactory<Integer, InputStream> {
|
|
private final Resources a;
|
|
|
|
public StreamFactory(Resources resources) {
|
|
this.a = resources;
|
|
}
|
|
|
|
@Override // com.bumptech.glide.load.model.ModelLoaderFactory
|
|
public ModelLoader<Integer, InputStream> a(MultiModelLoaderFactory multiModelLoaderFactory) {
|
|
return new ResourceLoader(this.a, multiModelLoaderFactory.a(Uri.class, InputStream.class));
|
|
}
|
|
|
|
@Override // com.bumptech.glide.load.model.ModelLoaderFactory
|
|
public void a() {
|
|
}
|
|
}
|
|
|
|
public static class UriFactory implements ModelLoaderFactory<Integer, Uri> {
|
|
private final Resources a;
|
|
|
|
public UriFactory(Resources resources) {
|
|
this.a = resources;
|
|
}
|
|
|
|
@Override // com.bumptech.glide.load.model.ModelLoaderFactory
|
|
public ModelLoader<Integer, Uri> a(MultiModelLoaderFactory multiModelLoaderFactory) {
|
|
return new ResourceLoader(this.a, UnitModelLoader.a());
|
|
}
|
|
|
|
@Override // com.bumptech.glide.load.model.ModelLoaderFactory
|
|
public void a() {
|
|
}
|
|
}
|
|
|
|
public ResourceLoader(Resources resources, ModelLoader<Uri, Data> modelLoader) {
|
|
this.b = resources;
|
|
this.a = modelLoader;
|
|
}
|
|
|
|
private Uri b(Integer num) {
|
|
try {
|
|
return Uri.parse("android.resource://" + this.b.getResourcePackageName(num.intValue()) + '/' + this.b.getResourceTypeName(num.intValue()) + '/' + this.b.getResourceEntryName(num.intValue()));
|
|
} catch (Resources.NotFoundException e) {
|
|
if (!Log.isLoggable("ResourceLoader", 5)) {
|
|
return null;
|
|
}
|
|
Log.w("ResourceLoader", "Received invalid resource id: " + num, e);
|
|
return null;
|
|
}
|
|
}
|
|
|
|
@Override // com.bumptech.glide.load.model.ModelLoader
|
|
public boolean a(Integer num) {
|
|
return true;
|
|
}
|
|
|
|
@Override // com.bumptech.glide.load.model.ModelLoader
|
|
public ModelLoader.LoadData<Data> a(Integer num, int i, int i2, Options options) {
|
|
Uri b = b(num);
|
|
if (b == null) {
|
|
return null;
|
|
}
|
|
return this.a.a(b, i, i2, options);
|
|
}
|
|
}
|