1bcf4a0dae04a4ad14287eeb34069a97c96fe9bb1Sam Juddpackage com.bumptech.glide.load.resource.bitmap; 2c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd 3c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Juddimport android.graphics.Bitmap; 49fc12334a7d14347cd6951d0653264b2597bd3a0Sam Juddimport com.bumptech.glide.DataLoadProvider; 5cf1e05bf226ce4e7a510a5f7cac0661b9b2e90e9Sam Juddimport com.bumptech.glide.load.Encoder; 69fc12334a7d14347cd6951d0653264b2597bd3a0Sam Juddimport com.bumptech.glide.load.ResourceDecoder; 79fc12334a7d14347cd6951d0653264b2597bd3a0Sam Juddimport com.bumptech.glide.load.ResourceEncoder; 89fc12334a7d14347cd6951d0653264b2597bd3a0Sam Juddimport com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool; 9cf1e05bf226ce4e7a510a5f7cac0661b9b2e90e9Sam Juddimport com.bumptech.glide.load.model.StreamEncoder; 10c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd 11c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Juddimport java.io.InputStream; 12c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd 13c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Juddpublic class StreamBitmapDataLoadProvider implements DataLoadProvider<InputStream, Bitmap> { 14c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd private final StreamBitmapDecoder decoder; 15c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd private final BitmapEncoder encoder; 16cf1e05bf226ce4e7a510a5f7cac0661b9b2e90e9Sam Judd private final StreamEncoder sourceEncoder; 17c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd 18c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd public StreamBitmapDataLoadProvider(BitmapPool bitmapPool) { 19cf1e05bf226ce4e7a510a5f7cac0661b9b2e90e9Sam Judd sourceEncoder = new StreamEncoder(); 20c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd decoder = new StreamBitmapDecoder(bitmapPool); 21c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd encoder = new BitmapEncoder(); 22c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd } 23c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd 24c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd @Override 25c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd public ResourceDecoder<InputStream, Bitmap> getCacheDecoder() { 26c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd return decoder; 27c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd } 28c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd 29c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd @Override 30c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd public ResourceDecoder<InputStream, Bitmap> getSourceDecoder() { 31c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd return decoder; 32c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd } 33c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd 34c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd @Override 35cf1e05bf226ce4e7a510a5f7cac0661b9b2e90e9Sam Judd public Encoder<InputStream> getSourceEncoder() { 36cf1e05bf226ce4e7a510a5f7cac0661b9b2e90e9Sam Judd return sourceEncoder; 37cf1e05bf226ce4e7a510a5f7cac0661b9b2e90e9Sam Judd } 38cf1e05bf226ce4e7a510a5f7cac0661b9b2e90e9Sam Judd 39cf1e05bf226ce4e7a510a5f7cac0661b9b2e90e9Sam Judd @Override 40c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd public ResourceEncoder<Bitmap> getEncoder() { 41c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd return encoder; 42c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd } 43c8c79d03924a757c29bbe7df5bc07b3cf8e02a83Sam Judd} 44