Initial commit
This commit is contained in:
115
sources/com/bumptech/glide/load/model/ResourceLoader.java
Normal file
115
sources/com/bumptech/glide/load/model/ResourceLoader.java
Normal file
@@ -0,0 +1,115 @@
|
||||
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);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user