• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 package com.bumptech.glide.provider;
2 
3 import com.bumptech.glide.load.Encoder;
4 import com.bumptech.glide.load.ResourceDecoder;
5 import com.bumptech.glide.load.ResourceEncoder;
6 
7 import java.io.File;
8 
9 /**
10  * A load provider that provides the necessary encoders and decoders to decode a specific type of resource from a
11  * specific type of data.
12  *
13  * @param <T> The type of data the resource will be decoded from.
14  * @param <Z> The type of resource that will be decoded.
15  */
16 public interface DataLoadProvider<T, Z> {
17 
18     /**
19      * Returns the {@link com.bumptech.glide.load.ResourceDecoder} to use to decode the resource from the disk cache.
20      */
getCacheDecoder()21     ResourceDecoder<File, Z> getCacheDecoder();
22 
23     /**
24      * Returns the {@link com.bumptech.glide.load.ResourceDecoder} to use to decode the resource from the original data.
25      */
getSourceDecoder()26     ResourceDecoder<T, Z> getSourceDecoder();
27 
28     /**
29      * Returns the {@link com.bumptech.glide.load.Encoder} to use to write the original data to the disk cache.
30      */
getSourceEncoder()31     Encoder<T> getSourceEncoder();
32 
33     /**
34      * Returns the {@link com.bumptech.glide.load.ResourceEncoder} to use to write the decoded and transformed resource
35      * to the disk cache.
36      */
getEncoder()37     ResourceEncoder<Z> getEncoder();
38 }
39