|
16 | 16 | import com.facebook.datasource.DataSource;
|
17 | 17 | import com.facebook.datasource.DataSubscriber;
|
18 | 18 | import com.facebook.drawee.backends.pipeline.Fresco;
|
| 19 | +import com.facebook.fbreact.specs.NativeImageLoaderAndroidSpec; |
19 | 20 | import com.facebook.imagepipeline.core.ImagePipeline;
|
20 | 21 | import com.facebook.imagepipeline.image.CloseableImage;
|
21 | 22 | import com.facebook.imagepipeline.request.ImageRequest;
|
|
25 | 26 | import com.facebook.react.bridge.LifecycleEventListener;
|
26 | 27 | import com.facebook.react.bridge.Promise;
|
27 | 28 | import com.facebook.react.bridge.ReactApplicationContext;
|
28 |
| -import com.facebook.react.bridge.ReactContextBaseJavaModule; |
29 | 29 | import com.facebook.react.bridge.ReactMethod;
|
30 | 30 | import com.facebook.react.bridge.ReadableArray;
|
31 | 31 | import com.facebook.react.bridge.ReadableMap;
|
|
35 | 35 | import com.facebook.react.views.imagehelper.ImageSource;
|
36 | 36 |
|
37 | 37 | @ReactModule(name = ImageLoaderModule.NAME)
|
38 |
| -public class ImageLoaderModule extends ReactContextBaseJavaModule |
| 38 | +public class ImageLoaderModule extends NativeImageLoaderAndroidSpec |
39 | 39 | implements LifecycleEventListener {
|
40 | 40 |
|
41 | 41 | private static final String ERROR_INVALID_URI = "E_INVALID_URI";
|
@@ -183,12 +183,15 @@ protected void onFailureImpl(DataSource<CloseableReference<CloseableImage>> data
|
183 | 183 | * Prefetches the given image to the Fresco image disk cache.
|
184 | 184 | *
|
185 | 185 | * @param uriString the URI of the remote image to prefetch
|
186 |
| - * @param requestId the client-supplied request ID used to identify this request |
| 186 | + * @param requestIdAsDouble the client-supplied request ID used to identify this request |
187 | 187 | * @param promise the promise that is fulfilled when the image is successfully prefetched or
|
188 | 188 | * rejected when there is an error
|
189 | 189 | */
|
190 |
| - @ReactMethod |
191 |
| - public void prefetchImage(final String uriString, final int requestId, final Promise promise) { |
| 190 | + @Override |
| 191 | + public void prefetchImage( |
| 192 | + final String uriString, final double requestIdAsDouble, final Promise promise) { |
| 193 | + final int requestId = (int) requestIdAsDouble; |
| 194 | + |
192 | 195 | if (uriString == null || uriString.isEmpty()) {
|
193 | 196 | promise.reject(ERROR_INVALID_URI, "Cannot prefetch an image for an empty URI");
|
194 | 197 | return;
|
@@ -228,9 +231,9 @@ protected void onFailureImpl(DataSource<Void> dataSource) {
|
228 | 231 | prefetchSource.subscribe(prefetchSubscriber, CallerThreadExecutor.getInstance());
|
229 | 232 | }
|
230 | 233 |
|
231 |
| - @ReactMethod |
232 |
| - public void abortRequest(final int requestId) { |
233 |
| - DataSource<Void> request = removeRequest(requestId); |
| 234 | + @Override |
| 235 | + public void abortRequest(double requestId) { |
| 236 | + DataSource<Void> request = removeRequest((int) requestId); |
234 | 237 | if (request != null) {
|
235 | 238 | request.close();
|
236 | 239 | }
|
|
0 commit comments