Sunbit v2.4.4版本的 MD5 值为:a5021e5e2a58eb1d6741b432fe7533c4

以下内容为反编译后的 e.java 源代码,内容仅作参考


package com.bumptech.glide.load.p;

import android.util.Base64;
import androidx.annotation.NonNull;
import com.bumptech.glide.load.n.d;
import com.bumptech.glide.load.p.n;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
public final class e<Model, Data> implements n<Model, Data> {
    private static final String b = "data:image";
    private static final String c = ";base64";
    private final a<Data> f2271a;

    public interface a<Data> {
        Class<Data> a();

        Data a(String str) throws IllegalArgumentException;

        void a(Data data) throws IOException;
    }

    public static final class c<Model> implements o<Model, InputStream> {
        private final a<InputStream> f2273a = new a();

        @Override
        @NonNull
        public n<Model, InputStream> a(@NonNull r rVar) {
            return new e(this.f2273a);
        }

        @Override
        public void a() {
        }

        class a implements a<InputStream> {
            a() {
            }

            @Override
            public InputStream a(String str) {
                if (str.startsWith(e.b)) {
                    int indexOf = str.indexOf(44);
                    if (indexOf != -1) {
                        if (str.substring(0, indexOf).endsWith(e.c)) {
                            return new ByteArrayInputStream(Base64.decode(str.substring(indexOf + 1), 0));
                        }
                        throw new IllegalArgumentException("Not a base64 image data URL.");
                    }
                    throw new IllegalArgumentException("Missing comma in data URL.");
                }
                throw new IllegalArgumentException("Not a valid image data URL.");
            }

            @Override
            public void a(InputStream inputStream) throws IOException {
                inputStream.close();
            }

            @Override
            public Class<InputStream> a() {
                return InputStream.class;
            }
        }
    }

    public e(a<Data> aVar) {
        this.f2271a = aVar;
    }

    @Override
    public n.a<Data> a(@NonNull Model model, int i2, int i3, @NonNull com.bumptech.glide.load.j jVar) {
        return new n.a<>(new com.bumptech.glide.t.d(model), new b(model.toString(), this.f2271a));
    }

    private static final class b<Data> implements com.bumptech.glide.load.n.d<Data> {
        private final String f2272a;
        private final a<Data> b;
        private Data c;

        b(String str, a<Data> aVar) {
            this.f2272a = str;
            this.b = aVar;
        }

        @Override
        public void a(@NonNull com.bumptech.glide.j jVar, @NonNull d.a<? super Data> aVar) {
            try {
                Data a2 = this.b.a(this.f2272a);
                this.c = a2;
                aVar.a((d.a<? super Data>) a2);
            } catch (IllegalArgumentException e2) {
                aVar.a((Exception) e2);
            }
        }

        @Override
        public void b() {
            try {
                this.b.a((a<Data>) this.c);
            } catch (IOException unused) {
            }
        }

        @Override
        @NonNull
        public com.bumptech.glide.load.a c() {
            return com.bumptech.glide.load.a.LOCAL;
        }

        @Override
        public void cancel() {
        }

        @Override
        @NonNull
        public Class<Data> a() {
            return this.b.a();
        }
    }

    @Override
    public boolean a(@NonNull Model model) {
        return model.toString().startsWith(b);
    }
}