GifRequestBuilder.java revision cf1e05bf226ce4e7a510a5f7cac0661b9b2e90e9
1package com.bumptech.glide;
2
3import android.content.Context;
4import android.graphics.Bitmap;
5import android.graphics.drawable.Drawable;
6import android.view.animation.Animation;
7import com.bumptech.glide.load.Encoder;
8import com.bumptech.glide.load.ResourceDecoder;
9import com.bumptech.glide.load.ResourceEncoder;
10import com.bumptech.glide.load.Transformation;
11import com.bumptech.glide.load.resource.bitmap.CenterCrop;
12import com.bumptech.glide.load.resource.bitmap.FitCenter;
13import com.bumptech.glide.load.resource.gif.GifData;
14import com.bumptech.glide.load.resource.gif.GifDataTransformation;
15import com.bumptech.glide.load.resource.transcode.ResourceTranscoder;
16import com.bumptech.glide.manager.RequestManager;
17import com.bumptech.glide.provider.LoadProvider;
18import com.bumptech.glide.request.RequestListener;
19import com.bumptech.glide.request.ViewPropertyAnimation;
20
21import java.io.InputStream;
22
23public class GifRequestBuilder<ModelType, TranscodeType>
24        extends GenericRequestBuilder<ModelType, InputStream, GifData, TranscodeType> {
25    private Glide glide;
26
27    GifRequestBuilder(Context context, ModelType model,
28            LoadProvider<ModelType, InputStream, GifData, TranscodeType> loadProvider,
29            Class<TranscodeType> transcodeClass, Glide glide, RequestManager requestManager) {
30        super(context, model, loadProvider, transcodeClass, glide, requestManager);
31        this.glide = glide;
32    }
33
34    @Override
35    public GifRequestBuilder<ModelType, TranscodeType> thumbnail(
36            GenericRequestBuilder<ModelType, InputStream, GifData, TranscodeType> thumbnailRequest) {
37        super.thumbnail(thumbnailRequest);
38        return this;
39    }
40
41    public GifRequestBuilder<ModelType, TranscodeType> thumbnail(
42            GifRequestBuilder<ModelType, TranscodeType> thumbnailRequest) {
43        super.thumbnail(thumbnailRequest);
44        return this;
45    }
46
47    @Override
48    public GifRequestBuilder<ModelType, TranscodeType> thumbnail(float sizeMultiplier) {
49        super.thumbnail(sizeMultiplier);
50        return this;
51    }
52
53    @Override
54    public GifRequestBuilder<ModelType, TranscodeType> sizeMultiplier(float sizeMultiplier) {
55        super.sizeMultiplier(sizeMultiplier);
56        return this;
57    }
58
59    @Override
60    public GifRequestBuilder<ModelType, TranscodeType> decoder(
61            ResourceDecoder<InputStream, GifData> decoder) {
62        super.decoder(decoder);
63        return this;
64    }
65
66    @Override
67    public GifRequestBuilder<ModelType, TranscodeType> cacheDecoder(
68            ResourceDecoder<InputStream, GifData> cacheDecoder) {
69        super.cacheDecoder(cacheDecoder);
70        return this;
71    }
72
73    @Override
74    public GifRequestBuilder<ModelType, TranscodeType> encoder(
75            ResourceEncoder<GifData> encoder) {
76        super.encoder(encoder);
77        return this;
78    }
79
80    @Override
81    public GifRequestBuilder<ModelType, TranscodeType> priority(Priority priority) {
82        super.priority(priority);
83        return this;
84    }
85
86    public GifRequestBuilder<ModelType, TranscodeType> fitCenter() {
87        return transformBitmap(new FitCenter(glide.getBitmapPool()));
88    }
89
90    public GifRequestBuilder<ModelType, TranscodeType> centerCrop() {
91        return transformBitmap(new CenterCrop(glide.getBitmapPool()));
92    }
93
94    public GifRequestBuilder<ModelType, TranscodeType> transformBitmap(Transformation<Bitmap> bitmapTransformation) {
95        return transform(new GifDataTransformation(bitmapTransformation));
96    }
97
98    @Override
99    public GifRequestBuilder<ModelType, TranscodeType> transform(Transformation<GifData> transformation) {
100        super.transform(transformation);
101        return this;
102    }
103
104    @Override
105    public GifRequestBuilder<ModelType, TranscodeType> transcoder(
106            ResourceTranscoder<GifData, TranscodeType> transcoder) {
107        super.transcoder(transcoder);
108        return this;
109    }
110
111    @Override
112    public GifRequestBuilder<ModelType, TranscodeType> animate(int animationId) {
113        super.animate(animationId);
114        return this;
115    }
116
117    @Override
118    public GifRequestBuilder<ModelType, TranscodeType> animate(Animation animation) {
119        super.animate(animation);
120        return this;
121    }
122
123    @Override
124    public GifRequestBuilder<ModelType, TranscodeType> animate(ViewPropertyAnimation.Animator animator) {
125        super.animate(animator);
126        return this;
127    }
128
129    @Override
130    public GifRequestBuilder<ModelType, TranscodeType> placeholder(int resourceId) {
131        super.placeholder(resourceId);
132        return this;
133    }
134
135    @Override
136    public GifRequestBuilder<ModelType, TranscodeType> placeholder(Drawable drawable) {
137        super.placeholder(drawable);
138        return this;
139    }
140
141    @Override
142    public GifRequestBuilder<ModelType, TranscodeType> error(int resourceId) {
143        super.error(resourceId);
144        return this;
145    }
146
147    @Override
148    public GifRequestBuilder<ModelType, TranscodeType> error(Drawable drawable) {
149        super.error(drawable);
150        return this;
151    }
152
153    @Override
154    public GifRequestBuilder<ModelType, TranscodeType> listener(
155            RequestListener<ModelType, TranscodeType> requestListener) {
156        super.listener(requestListener);
157        return this;
158    }
159
160    @Override
161    public GifRequestBuilder<ModelType, TranscodeType> skipMemoryCache(boolean skip) {
162        super.skipMemoryCache(skip);
163        return this;
164    }
165
166    @Override
167    public GifRequestBuilder<ModelType, TranscodeType> skipDiskCache(boolean skip) {
168        super.skipDiskCache( skip);
169        return this;
170    }
171
172    @Override
173    public GifRequestBuilder<ModelType, TranscodeType> skipCache(boolean skip) {
174        super.skipCache(skip);
175        return this;
176    }
177
178    @Override
179    public GifRequestBuilder<ModelType, TranscodeType> override(int width, int height) {
180        super.override(width, height);
181        return this;
182    }
183
184    @Override
185    public GifRequestBuilder<ModelType, TranscodeType> sourceEncoder(Encoder<InputStream> sourceEncoder) {
186        super.sourceEncoder(sourceEncoder);
187        return this;
188    }
189
190    @Override
191    public GifRequestBuilder<ModelType, TranscodeType> cacheSource(boolean cacheSource) {
192        super.cacheSource(cacheSource);
193        return this;
194    }
195}
196