T
- The type of data that will be retrieved for Uri
s.public abstract class UriLoader<T> extends Object implements ModelLoader<Uri,T>
Uri
s that handles local Uri
s directly and routes
remote Uri
s to a wrapped ModelLoader
that handles
GlideUrl
s.Constructor and Description |
---|
UriLoader(Context context,
ModelLoader<GlideUrl,T> urlLoader) |
Modifier and Type | Method and Description |
---|---|
protected abstract DataFetcher<T> |
getAssetPathFetcher(Context context,
String path) |
protected abstract DataFetcher<T> |
getLocalUriFetcher(Context context,
Uri uri) |
DataFetcher<T> |
getResourceFetcher(Uri model,
int width,
int height)
Obtains an
DataFetcher that can fetch the data required to decode the resource represented by this model. |
public UriLoader(Context context, ModelLoader<GlideUrl,T> urlLoader)
public final DataFetcher<T> getResourceFetcher(Uri model, int width, int height)
ModelLoader
DataFetcher
that can fetch the data required to decode the resource represented by this model.
The DataFetcher
will not be used if the resource is already cached.
Note - If no valid data fetcher can be returned (for example if a model has a null URL), then it is acceptable to return a null data fetcher from this method. Doing so will be treated any other failure or exception during the load process.
getResourceFetcher
in interface ModelLoader<Uri,T>
model
- The model representing the resource.width
- The width in pixels of the view or target the resource will be loaded into, or
Target.SIZE_ORIGINAL
to indicate that the resource should
be loaded at its original width.height
- The height in pixels of the view or target the resource will be loaded into, or
Target.SIZE_ORIGINAL
to indicate that the resource should
be loaded at its original height.DataFetcher
that can obtain the data the resource can be decoded from if the resource is not
cached, or null if no valid DataFetcher
could be constructed.protected abstract DataFetcher<T> getLocalUriFetcher(Context context, Uri uri)
protected abstract DataFetcher<T> getAssetPathFetcher(Context context, String path)