1package com.bumptech.glide.load.engine; 2 3import com.bumptech.glide.Priority; 4import com.bumptech.glide.load.Encoder; 5import com.bumptech.glide.load.ResourceDecoder; 6import com.bumptech.glide.load.ResourceEncoder; 7import com.bumptech.glide.load.Transformation; 8import com.bumptech.glide.load.data.DataFetcher; 9import com.bumptech.glide.load.resource.transcode.ResourceTranscoder; 10 11import java.io.InputStream; 12 13interface ResourceRunnerFactory { 14 /** 15 * 16 * @param key 17 * @param cacheDecoder 18 * @param fetcher 19 * @param decoder 20 * @param transformation 21 * @param encoder 22 * @param priority 23 * @param <T> The type of data the resource will be decoded from. 24 * @param <Z> The type of the resource that will be decoded. 25 * @param <R> The type of the resource that will be transcoded to from the decoded resource. 26 * @return 27 */ 28 public <T, Z, R> ResourceRunner<Z, R> build(EngineKey key, int width, int height, 29 ResourceDecoder<InputStream, Z> cacheDecoder, DataFetcher<T> fetcher, boolean cacheSource, 30 Encoder<T> sourceEncoder, ResourceDecoder<T, Z> decoder, Transformation<Z> transformation, 31 ResourceEncoder<Z> encoder, ResourceTranscoder<Z, R> transcoder, Priority priority, 32 boolean isMemoryCacheable, EngineJobListener listener); 33} 34