package com.bumptech.glide.provider; import com.bumptech.glide.DataLoadProvider; import com.bumptech.glide.load.Encoder; import com.bumptech.glide.load.ResourceDecoder; import com.bumptech.glide.load.ResourceEncoder; import com.bumptech.glide.load.resource.transcode.ResourceTranscoder; import com.bumptech.glide.load.model.ModelLoader; import java.io.InputStream; public class FixedLoadProvider implements LoadProvider { private final ModelLoader modelLoader; private ResourceTranscoder transcoder; private final DataLoadProvider dataLoadProvider; public FixedLoadProvider(ModelLoader modelLoader, ResourceTranscoder transcoder, DataLoadProvider dataLoadProvider) { if (modelLoader == null) { throw new NullPointerException("ModelLoader must not be null"); } this.modelLoader = modelLoader; if (transcoder == null) { throw new NullPointerException("Transcoder must not be null"); } this.transcoder = transcoder; if (dataLoadProvider == null) { throw new NullPointerException("DataLoadProvider must not be null"); } this.dataLoadProvider = dataLoadProvider; } @Override public ModelLoader getModelLoader() { return modelLoader; } @Override public ResourceTranscoder getTranscoder() { return transcoder; } @Override public ResourceDecoder getCacheDecoder() { return dataLoadProvider.getCacheDecoder(); } @Override public ResourceDecoder getSourceDecoder() { return dataLoadProvider.getSourceDecoder(); } @Override public Encoder getSourceEncoder() { return dataLoadProvider.getSourceEncoder(); } @Override public ResourceEncoder getEncoder() { return dataLoadProvider.getEncoder(); } }