summaryrefslogtreecommitdiff
path: root/platform/android/src/com/artifex/mupdfdemo/CancellableAsyncTask.java
diff options
context:
space:
mode:
authorTor Andersson <tor.andersson@artifex.com>2016-03-30 17:49:04 +0200
committerTor Andersson <tor.andersson@artifex.com>2016-03-31 13:00:41 +0200
commitd68576c3785572c1f5d41f83015b8fe6bbcbe9e8 (patch)
tree431a86edfac640864ba7f406611e8fe9929908cd /platform/android/src/com/artifex/mupdfdemo/CancellableAsyncTask.java
parent32cdb2246eeb9e8109a712ec2a5dd2938e30e9b6 (diff)
downloadmupdf-d68576c3785572c1f5d41f83015b8fe6bbcbe9e8.tar.xz
Reorganize java and android source.
platform/java and platform/android are reorganized: platform/java The new JNI Java classes, mupdf_native.{c,h}, Makefile and Makejar. platform/java/example The example desktop viewer classes. platform/android/viewer The original demo viewer. ndk-build is used to build libmupdf_java.so, making reference to mupdf_native.{c,h} in platform/java.
Diffstat (limited to 'platform/android/src/com/artifex/mupdfdemo/CancellableAsyncTask.java')
-rw-r--r--platform/android/src/com/artifex/mupdfdemo/CancellableAsyncTask.java79
1 files changed, 0 insertions, 79 deletions
diff --git a/platform/android/src/com/artifex/mupdfdemo/CancellableAsyncTask.java b/platform/android/src/com/artifex/mupdfdemo/CancellableAsyncTask.java
deleted file mode 100644
index fcb1b744..00000000
--- a/platform/android/src/com/artifex/mupdfdemo/CancellableAsyncTask.java
+++ /dev/null
@@ -1,79 +0,0 @@
-package com.artifex.mupdfdemo;
-
-import java.util.concurrent.CancellationException;
-import java.util.concurrent.ExecutionException;
-
-// Ideally this would be a subclass of AsyncTask, however the cancel() method is final, and cannot
-// be overridden. I felt that having two different, but similar cancel methods was a bad idea.
-public class CancellableAsyncTask<Params, Result>
-{
- private final AsyncTask<Params, Void, Result> asyncTask;
- private final CancellableTaskDefinition<Params, Result> ourTask;
-
- public void onPreExecute()
- {
-
- }
-
- public void onPostExecute(Result result)
- {
-
- }
-
- public CancellableAsyncTask(final CancellableTaskDefinition<Params, Result> task)
- {
- if (task == null)
- throw new IllegalArgumentException();
-
- this.ourTask = task;
- asyncTask = new AsyncTask<Params, Void, Result>()
- {
- @Override
- protected Result doInBackground(Params... params)
- {
- return task.doInBackground(params);
- }
-
- @Override
- protected void onPreExecute()
- {
- CancellableAsyncTask.this.onPreExecute();
- }
-
- @Override
- protected void onPostExecute(Result result)
- {
- CancellableAsyncTask.this.onPostExecute(result);
- task.doCleanup();
- }
- };
- }
-
- public void cancelAndWait()
- {
- this.asyncTask.cancel(true);
- ourTask.doCancel();
-
- try
- {
- this.asyncTask.get();
- }
- catch (InterruptedException e)
- {
- }
- catch (ExecutionException e)
- {
- }
- catch (CancellationException e)
- {
- }
-
- ourTask.doCleanup();
- }
-
- public void execute(Params ... params)
- {
- asyncTask.execute(params);
- }
-
-}