DefaultResourceRunnerFactory.java revision ac28599e2b40e0dd6b97f6a91849585531264622
1package com.bumptech.glide.load.engine; 2 3import android.os.Handler; 4import com.bumptech.glide.Priority; 5import com.bumptech.glide.load.Key; 6import com.bumptech.glide.load.ResourceDecoder; 7import com.bumptech.glide.load.ResourceEncoder; 8import com.bumptech.glide.load.Transformation; 9import com.bumptech.glide.load.resource.transcode.ResourceTranscoder; 10import com.bumptech.glide.load.engine.cache.DiskCache; 11import com.bumptech.glide.load.engine.cache.MemoryCache; 12import com.bumptech.glide.load.data.DataFetcher; 13 14import java.io.InputStream; 15import java.util.concurrent.ExecutorService; 16 17class DefaultResourceRunnerFactory implements ResourceRunnerFactory { 18 private final Handler bgHandler; 19 private MemoryCache memoryCache; 20 private DiskCache diskCache; 21 private Handler mainHandler; 22 private ExecutorService service; 23 24 public DefaultResourceRunnerFactory(MemoryCache memoryCache, DiskCache diskCache, Handler mainHandler, 25 ExecutorService service, Handler bgHandler ) { 26 this.memoryCache = memoryCache; 27 this.diskCache = diskCache; 28 this.mainHandler = mainHandler; 29 this.service = service; 30 this.bgHandler = bgHandler; 31 } 32 33 @Override 34 public <T, Z, R> ResourceRunner<Z, R> build(Key key, int width, int height, 35 ResourceDecoder<InputStream, Z> cacheDecoder, DataFetcher<T> fetcher, ResourceDecoder<T, Z> decoder, 36 Transformation<Z> transformation, ResourceEncoder<Z> encoder, ResourceTranscoder<Z, R> transcoder, 37 Priority priority, EngineJobListener listener) { 38 39 EngineJob engineJob = new EngineJob(key, memoryCache, mainHandler, listener); 40 41 SourceResourceRunner<T, Z, R> sourceRunner = new SourceResourceRunner<T, Z, R>(key, width, height, fetcher, 42 decoder, transformation, encoder, transcoder, diskCache, priority, engineJob); 43 44 return new ResourceRunner<Z, R>(key, width, height, diskCache, cacheDecoder, transcoder, sourceRunner, service, 45 bgHandler, engineJob); 46 } 47} 48