mirror of
				https://github.com/KevinMidboe/linguist.git
				synced 2025-10-29 17:50:22 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			701 lines
		
	
	
		
			23 KiB
		
	
	
	
		
			Smali
		
	
	
	
	
	
			
		
		
	
	
			701 lines
		
	
	
		
			23 KiB
		
	
	
	
		
			Smali
		
	
	
	
	
	
| .class abstract Landroid/support/v4/content/ModernAsyncTask;
 | |
| .super Ljava/lang/Object;
 | |
| .source "ModernAsyncTask.java"
 | |
| 
 | |
| 
 | |
| # annotations
 | |
| .annotation system Ldalvik/annotation/MemberClasses;
 | |
|     value = {
 | |
|         Landroid/support/v4/content/ModernAsyncTask$4;,
 | |
|         Landroid/support/v4/content/ModernAsyncTask$AsyncTaskResult;,
 | |
|         Landroid/support/v4/content/ModernAsyncTask$WorkerRunnable;,
 | |
|         Landroid/support/v4/content/ModernAsyncTask$InternalHandler;,
 | |
|         Landroid/support/v4/content/ModernAsyncTask$Status;
 | |
|     }
 | |
| .end annotation
 | |
| 
 | |
| .annotation system Ldalvik/annotation/Signature;
 | |
|     value = {
 | |
|         "<Params:",
 | |
|         "Ljava/lang/Object;",
 | |
|         "Progress:",
 | |
|         "Ljava/lang/Object;",
 | |
|         "Result:",
 | |
|         "Ljava/lang/Object;",
 | |
|         ">",
 | |
|         "Ljava/lang/Object;"
 | |
|     }
 | |
| .end annotation
 | |
| 
 | |
| 
 | |
| # static fields
 | |
| .field private static final CORE_POOL_SIZE:I = 0x5
 | |
| 
 | |
| .field private static final KEEP_ALIVE:I = 0x1
 | |
| 
 | |
| .field private static final LOG_TAG:Ljava/lang/String; = "AsyncTask"
 | |
| 
 | |
| .field private static final MAXIMUM_POOL_SIZE:I = 0x80
 | |
| 
 | |
| .field private static final MESSAGE_POST_PROGRESS:I = 0x2
 | |
| 
 | |
| .field private static final MESSAGE_POST_RESULT:I = 0x1
 | |
| 
 | |
| .field public static final THREAD_POOL_EXECUTOR:Ljava/util/concurrent/Executor;
 | |
| 
 | |
| .field private static volatile sDefaultExecutor:Ljava/util/concurrent/Executor;
 | |
| 
 | |
| .field private static final sHandler:Landroid/support/v4/content/ModernAsyncTask$InternalHandler;
 | |
| 
 | |
| .field private static final sPoolWorkQueue:Ljava/util/concurrent/BlockingQueue;
 | |
|     .annotation system Ldalvik/annotation/Signature;
 | |
|         value = {
 | |
|             "Ljava/util/concurrent/BlockingQueue",
 | |
|             "<",
 | |
|             "Ljava/lang/Runnable;",
 | |
|             ">;"
 | |
|         }
 | |
|     .end annotation
 | |
| .end field
 | |
| 
 | |
| .field private static final sThreadFactory:Ljava/util/concurrent/ThreadFactory;
 | |
| 
 | |
| 
 | |
| # instance fields
 | |
| .field private final mFuture:Ljava/util/concurrent/FutureTask;
 | |
|     .annotation system Ldalvik/annotation/Signature;
 | |
|         value = {
 | |
|             "Ljava/util/concurrent/FutureTask",
 | |
|             "<TResult;>;"
 | |
|         }
 | |
|     .end annotation
 | |
| .end field
 | |
| 
 | |
| .field private volatile mStatus:Landroid/support/v4/content/ModernAsyncTask$Status;
 | |
| 
 | |
| .field private final mTaskInvoked:Ljava/util/concurrent/atomic/AtomicBoolean;
 | |
| 
 | |
| .field private final mWorker:Landroid/support/v4/content/ModernAsyncTask$WorkerRunnable;
 | |
|     .annotation system Ldalvik/annotation/Signature;
 | |
|         value = {
 | |
|             "Landroid/support/v4/content/ModernAsyncTask$WorkerRunnable",
 | |
|             "<TParams;TResult;>;"
 | |
|         }
 | |
|     .end annotation
 | |
| .end field
 | |
| 
 | |
| 
 | |
| # direct methods
 | |
| .method static constructor <clinit>()V
 | |
|     .registers 8
 | |
| 
 | |
|     .prologue
 | |
|     .line 54
 | |
|     new-instance v0, Landroid/support/v4/content/ModernAsyncTask$1;
 | |
| 
 | |
|     invoke-direct {v0}, Landroid/support/v4/content/ModernAsyncTask$1;-><init>()V
 | |
| 
 | |
|     sput-object v0, Landroid/support/v4/content/ModernAsyncTask;->sThreadFactory:Ljava/util/concurrent/ThreadFactory;
 | |
| 
 | |
|     .line 62
 | |
|     new-instance v0, Ljava/util/concurrent/LinkedBlockingQueue;
 | |
| 
 | |
|     const/16 v1, 0xa
 | |
| 
 | |
|     invoke-direct {v0, v1}, Ljava/util/concurrent/LinkedBlockingQueue;-><init>(I)V
 | |
| 
 | |
|     sput-object v0, Landroid/support/v4/content/ModernAsyncTask;->sPoolWorkQueue:Ljava/util/concurrent/BlockingQueue;
 | |
| 
 | |
|     .line 68
 | |
|     new-instance v0, Ljava/util/concurrent/ThreadPoolExecutor;
 | |
| 
 | |
|     const/4 v1, 0x5
 | |
| 
 | |
|     const/16 v2, 0x80
 | |
| 
 | |
|     const-wide/16 v3, 0x1
 | |
| 
 | |
|     sget-object v5, Ljava/util/concurrent/TimeUnit;->SECONDS:Ljava/util/concurrent/TimeUnit;
 | |
| 
 | |
|     sget-object v6, Landroid/support/v4/content/ModernAsyncTask;->sPoolWorkQueue:Ljava/util/concurrent/BlockingQueue;
 | |
| 
 | |
|     sget-object v7, Landroid/support/v4/content/ModernAsyncTask;->sThreadFactory:Ljava/util/concurrent/ThreadFactory;
 | |
| 
 | |
|     invoke-direct/range {v0 .. v7}, Ljava/util/concurrent/ThreadPoolExecutor;-><init>(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;Ljava/util/concurrent/ThreadFactory;)V
 | |
| 
 | |
|     sput-object v0, Landroid/support/v4/content/ModernAsyncTask;->THREAD_POOL_EXECUTOR:Ljava/util/concurrent/Executor;
 | |
| 
 | |
|     .line 75
 | |
|     new-instance v0, Landroid/support/v4/content/ModernAsyncTask$InternalHandler;
 | |
| 
 | |
|     const/4 v1, 0x0
 | |
| 
 | |
|     invoke-direct {v0, v1}, Landroid/support/v4/content/ModernAsyncTask$InternalHandler;-><init>(Landroid/support/v4/content/ModernAsyncTask$1;)V
 | |
| 
 | |
|     sput-object v0, Landroid/support/v4/content/ModernAsyncTask;->sHandler:Landroid/support/v4/content/ModernAsyncTask$InternalHandler;
 | |
| 
 | |
|     .line 77
 | |
|     sget-object v0, Landroid/support/v4/content/ModernAsyncTask;->THREAD_POOL_EXECUTOR:Ljava/util/concurrent/Executor;
 | |
| 
 | |
|     sput-object v0, Landroid/support/v4/content/ModernAsyncTask;->sDefaultExecutor:Ljava/util/concurrent/Executor;
 | |
| 
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method public constructor <init>()V
 | |
|     .registers 3
 | |
| 
 | |
|     .prologue
 | |
|     .line 117
 | |
|     .local p0, "this":Landroid/support/v4/content/ModernAsyncTask;, "Landroid/support/v4/content/ModernAsyncTask<TParams;TProgress;TResult;>;"
 | |
|     invoke-direct {p0}, Ljava/lang/Object;-><init>()V
 | |
| 
 | |
|     .line 81
 | |
|     sget-object v0, Landroid/support/v4/content/ModernAsyncTask$Status;->PENDING:Landroid/support/v4/content/ModernAsyncTask$Status;
 | |
| 
 | |
|     iput-object v0, p0, Landroid/support/v4/content/ModernAsyncTask;->mStatus:Landroid/support/v4/content/ModernAsyncTask$Status;
 | |
| 
 | |
|     .line 83
 | |
|     new-instance v0, Ljava/util/concurrent/atomic/AtomicBoolean;
 | |
| 
 | |
|     invoke-direct {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;-><init>()V
 | |
| 
 | |
|     iput-object v0, p0, Landroid/support/v4/content/ModernAsyncTask;->mTaskInvoked:Ljava/util/concurrent/atomic/AtomicBoolean;
 | |
| 
 | |
|     .line 118
 | |
|     new-instance v0, Landroid/support/v4/content/ModernAsyncTask$2;
 | |
| 
 | |
|     invoke-direct {v0, p0}, Landroid/support/v4/content/ModernAsyncTask$2;-><init>(Landroid/support/v4/content/ModernAsyncTask;)V
 | |
| 
 | |
|     iput-object v0, p0, Landroid/support/v4/content/ModernAsyncTask;->mWorker:Landroid/support/v4/content/ModernAsyncTask$WorkerRunnable;
 | |
| 
 | |
|     .line 127
 | |
|     new-instance v0, Landroid/support/v4/content/ModernAsyncTask$3;
 | |
| 
 | |
|     iget-object v1, p0, Landroid/support/v4/content/ModernAsyncTask;->mWorker:Landroid/support/v4/content/ModernAsyncTask$WorkerRunnable;
 | |
| 
 | |
|     invoke-direct {v0, p0, v1}, Landroid/support/v4/content/ModernAsyncTask$3;-><init>(Landroid/support/v4/content/ModernAsyncTask;Ljava/util/concurrent/Callable;)V
 | |
| 
 | |
|     iput-object v0, p0, Landroid/support/v4/content/ModernAsyncTask;->mFuture:Ljava/util/concurrent/FutureTask;
 | |
| 
 | |
|     .line 147
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method static synthetic access$200(Landroid/support/v4/content/ModernAsyncTask;)Ljava/util/concurrent/atomic/AtomicBoolean;
 | |
|     .registers 2
 | |
|     .param p0, "x0"    # Landroid/support/v4/content/ModernAsyncTask;
 | |
| 
 | |
|     .prologue
 | |
|     .line 47
 | |
|     iget-object v0, p0, Landroid/support/v4/content/ModernAsyncTask;->mTaskInvoked:Ljava/util/concurrent/atomic/AtomicBoolean;
 | |
| 
 | |
|     return-object v0
 | |
| .end method
 | |
| 
 | |
| .method static synthetic access$300(Landroid/support/v4/content/ModernAsyncTask;Ljava/lang/Object;)Ljava/lang/Object;
 | |
|     .registers 3
 | |
|     .param p0, "x0"    # Landroid/support/v4/content/ModernAsyncTask;
 | |
|     .param p1, "x1"    # Ljava/lang/Object;
 | |
| 
 | |
|     .prologue
 | |
|     .line 47
 | |
|     invoke-direct {p0, p1}, Landroid/support/v4/content/ModernAsyncTask;->postResult(Ljava/lang/Object;)Ljava/lang/Object;
 | |
| 
 | |
|     move-result-object v0
 | |
| 
 | |
|     return-object v0
 | |
| .end method
 | |
| 
 | |
| .method static synthetic access$400(Landroid/support/v4/content/ModernAsyncTask;Ljava/lang/Object;)V
 | |
|     .registers 2
 | |
|     .param p0, "x0"    # Landroid/support/v4/content/ModernAsyncTask;
 | |
|     .param p1, "x1"    # Ljava/lang/Object;
 | |
| 
 | |
|     .prologue
 | |
|     .line 47
 | |
|     invoke-direct {p0, p1}, Landroid/support/v4/content/ModernAsyncTask;->postResultIfNotInvoked(Ljava/lang/Object;)V
 | |
| 
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method static synthetic access$500(Landroid/support/v4/content/ModernAsyncTask;Ljava/lang/Object;)V
 | |
|     .registers 2
 | |
|     .param p0, "x0"    # Landroid/support/v4/content/ModernAsyncTask;
 | |
|     .param p1, "x1"    # Ljava/lang/Object;
 | |
| 
 | |
|     .prologue
 | |
|     .line 47
 | |
|     invoke-direct {p0, p1}, Landroid/support/v4/content/ModernAsyncTask;->finish(Ljava/lang/Object;)V
 | |
| 
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method public static execute(Ljava/lang/Runnable;)V
 | |
|     .registers 2
 | |
|     .param p0, "runnable"    # Ljava/lang/Runnable;
 | |
| 
 | |
|     .prologue
 | |
|     .line 433
 | |
|     sget-object v0, Landroid/support/v4/content/ModernAsyncTask;->sDefaultExecutor:Ljava/util/concurrent/Executor;
 | |
| 
 | |
|     invoke-interface {v0, p0}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V
 | |
| 
 | |
|     .line 434
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method private finish(Ljava/lang/Object;)V
 | |
|     .registers 3
 | |
|     .annotation system Ldalvik/annotation/Signature;
 | |
|         value = {
 | |
|             "(TResult;)V"
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     .line 458
 | |
|     .local p0, "this":Landroid/support/v4/content/ModernAsyncTask;, "Landroid/support/v4/content/ModernAsyncTask<TParams;TProgress;TResult;>;"
 | |
|     .local p1, "result":Ljava/lang/Object;, "TResult;"
 | |
|     invoke-virtual {p0}, Landroid/support/v4/content/ModernAsyncTask;->isCancelled()Z
 | |
| 
 | |
|     move-result v0
 | |
| 
 | |
|     if-eqz v0, :cond_e
 | |
| 
 | |
|     .line 459
 | |
|     invoke-virtual {p0, p1}, Landroid/support/v4/content/ModernAsyncTask;->onCancelled(Ljava/lang/Object;)V
 | |
| 
 | |
|     .line 463
 | |
|     :goto_9
 | |
|     sget-object v0, Landroid/support/v4/content/ModernAsyncTask$Status;->FINISHED:Landroid/support/v4/content/ModernAsyncTask$Status;
 | |
| 
 | |
|     iput-object v0, p0, Landroid/support/v4/content/ModernAsyncTask;->mStatus:Landroid/support/v4/content/ModernAsyncTask$Status;
 | |
| 
 | |
|     .line 464
 | |
|     return-void
 | |
| 
 | |
|     .line 461
 | |
|     :cond_e
 | |
|     invoke-virtual {p0, p1}, Landroid/support/v4/content/ModernAsyncTask;->onPostExecute(Ljava/lang/Object;)V
 | |
| 
 | |
|     goto :goto_9
 | |
| .end method
 | |
| 
 | |
| .method public static init()V
 | |
|     .registers 1
 | |
| 
 | |
|     .prologue
 | |
|     .line 106
 | |
|     sget-object v0, Landroid/support/v4/content/ModernAsyncTask;->sHandler:Landroid/support/v4/content/ModernAsyncTask$InternalHandler;
 | |
| 
 | |
|     invoke-virtual {v0}, Landroid/support/v4/content/ModernAsyncTask$InternalHandler;->getLooper()Landroid/os/Looper;
 | |
| 
 | |
|     .line 107
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method private postResult(Ljava/lang/Object;)Ljava/lang/Object;
 | |
|     .registers 8
 | |
|     .annotation system Ldalvik/annotation/Signature;
 | |
|         value = {
 | |
|             "(TResult;)TResult;"
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     .local p0, "this":Landroid/support/v4/content/ModernAsyncTask;, "Landroid/support/v4/content/ModernAsyncTask<TParams;TProgress;TResult;>;"
 | |
|     .local p1, "result":Ljava/lang/Object;, "TResult;"
 | |
|     const/4 v5, 0x1
 | |
| 
 | |
|     .line 157
 | |
|     sget-object v1, Landroid/support/v4/content/ModernAsyncTask;->sHandler:Landroid/support/v4/content/ModernAsyncTask$InternalHandler;
 | |
| 
 | |
|     new-instance v2, Landroid/support/v4/content/ModernAsyncTask$AsyncTaskResult;
 | |
| 
 | |
|     new-array v3, v5, [Ljava/lang/Object;
 | |
| 
 | |
|     const/4 v4, 0x0
 | |
| 
 | |
|     aput-object p1, v3, v4
 | |
| 
 | |
|     invoke-direct {v2, p0, v3}, Landroid/support/v4/content/ModernAsyncTask$AsyncTaskResult;-><init>(Landroid/support/v4/content/ModernAsyncTask;[Ljava/lang/Object;)V
 | |
| 
 | |
|     invoke-virtual {v1, v5, v2}, Landroid/support/v4/content/ModernAsyncTask$InternalHandler;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
 | |
| 
 | |
|     move-result-object v0
 | |
| 
 | |
|     .line 159
 | |
|     .local v0, "message":Landroid/os/Message;
 | |
|     invoke-virtual {v0}, Landroid/os/Message;->sendToTarget()V
 | |
| 
 | |
|     .line 160
 | |
|     return-object p1
 | |
| .end method
 | |
| 
 | |
| .method private postResultIfNotInvoked(Ljava/lang/Object;)V
 | |
|     .registers 4
 | |
|     .annotation system Ldalvik/annotation/Signature;
 | |
|         value = {
 | |
|             "(TResult;)V"
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     .line 150
 | |
|     .local p0, "this":Landroid/support/v4/content/ModernAsyncTask;, "Landroid/support/v4/content/ModernAsyncTask<TParams;TProgress;TResult;>;"
 | |
|     .local p1, "result":Ljava/lang/Object;, "TResult;"
 | |
|     iget-object v1, p0, Landroid/support/v4/content/ModernAsyncTask;->mTaskInvoked:Ljava/util/concurrent/atomic/AtomicBoolean;
 | |
| 
 | |
|     invoke-virtual {v1}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z
 | |
| 
 | |
|     move-result v0
 | |
| 
 | |
|     .line 151
 | |
|     .local v0, "wasTaskInvoked":Z
 | |
|     if-nez v0, :cond_b
 | |
| 
 | |
|     .line 152
 | |
|     invoke-direct {p0, p1}, Landroid/support/v4/content/ModernAsyncTask;->postResult(Ljava/lang/Object;)Ljava/lang/Object;
 | |
| 
 | |
|     .line 154
 | |
|     :cond_b
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method public static setDefaultExecutor(Ljava/util/concurrent/Executor;)V
 | |
|     .registers 1
 | |
|     .param p0, "exec"    # Ljava/util/concurrent/Executor;
 | |
| 
 | |
|     .prologue
 | |
|     .line 111
 | |
|     sput-object p0, Landroid/support/v4/content/ModernAsyncTask;->sDefaultExecutor:Ljava/util/concurrent/Executor;
 | |
| 
 | |
|     .line 112
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| 
 | |
| # virtual methods
 | |
| .method public final cancel(Z)Z
 | |
|     .registers 3
 | |
|     .param p1, "mayInterruptIfRunning"    # Z
 | |
| 
 | |
|     .prologue
 | |
|     .line 306
 | |
|     .local p0, "this":Landroid/support/v4/content/ModernAsyncTask;, "Landroid/support/v4/content/ModernAsyncTask<TParams;TProgress;TResult;>;"
 | |
|     iget-object v0, p0, Landroid/support/v4/content/ModernAsyncTask;->mFuture:Ljava/util/concurrent/FutureTask;
 | |
| 
 | |
|     invoke-virtual {v0, p1}, Ljava/util/concurrent/FutureTask;->cancel(Z)Z
 | |
| 
 | |
|     move-result v0
 | |
| 
 | |
|     return v0
 | |
| .end method
 | |
| 
 | |
| .method protected varargs abstract doInBackground([Ljava/lang/Object;)Ljava/lang/Object;
 | |
|     .annotation system Ldalvik/annotation/Signature;
 | |
|         value = {
 | |
|             "([TParams;)TResult;"
 | |
|         }
 | |
|     .end annotation
 | |
| .end method
 | |
| 
 | |
| .method public final varargs execute([Ljava/lang/Object;)Landroid/support/v4/content/ModernAsyncTask;
 | |
|     .registers 3
 | |
|     .annotation system Ldalvik/annotation/Signature;
 | |
|         value = {
 | |
|             "([TParams;)",
 | |
|             "Landroid/support/v4/content/ModernAsyncTask",
 | |
|             "<TParams;TProgress;TResult;>;"
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     .line 371
 | |
|     .local p0, "this":Landroid/support/v4/content/ModernAsyncTask;, "Landroid/support/v4/content/ModernAsyncTask<TParams;TProgress;TResult;>;"
 | |
|     .local p1, "params":[Ljava/lang/Object;, "[TParams;"
 | |
|     sget-object v0, Landroid/support/v4/content/ModernAsyncTask;->sDefaultExecutor:Ljava/util/concurrent/Executor;
 | |
| 
 | |
|     invoke-virtual {p0, v0, p1}, Landroid/support/v4/content/ModernAsyncTask;->executeOnExecutor(Ljava/util/concurrent/Executor;[Ljava/lang/Object;)Landroid/support/v4/content/ModernAsyncTask;
 | |
| 
 | |
|     move-result-object v0
 | |
| 
 | |
|     return-object v0
 | |
| .end method
 | |
| 
 | |
| .method public final varargs executeOnExecutor(Ljava/util/concurrent/Executor;[Ljava/lang/Object;)Landroid/support/v4/content/ModernAsyncTask;
 | |
|     .registers 5
 | |
|     .param p1, "exec"    # Ljava/util/concurrent/Executor;
 | |
|     .annotation system Ldalvik/annotation/Signature;
 | |
|         value = {
 | |
|             "(",
 | |
|             "Ljava/util/concurrent/Executor;",
 | |
|             "[TParams;)",
 | |
|             "Landroid/support/v4/content/ModernAsyncTask",
 | |
|             "<TParams;TProgress;TResult;>;"
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     .line 406
 | |
|     .local p0, "this":Landroid/support/v4/content/ModernAsyncTask;, "Landroid/support/v4/content/ModernAsyncTask<TParams;TProgress;TResult;>;"
 | |
|     .local p2, "params":[Ljava/lang/Object;, "[TParams;"
 | |
|     iget-object v0, p0, Landroid/support/v4/content/ModernAsyncTask;->mStatus:Landroid/support/v4/content/ModernAsyncTask$Status;
 | |
| 
 | |
|     sget-object v1, Landroid/support/v4/content/ModernAsyncTask$Status;->PENDING:Landroid/support/v4/content/ModernAsyncTask$Status;
 | |
| 
 | |
|     if-eq v0, v1, :cond_13
 | |
| 
 | |
|     .line 407
 | |
|     sget-object v0, Landroid/support/v4/content/ModernAsyncTask$4;->$SwitchMap$android$support$v4$content$ModernAsyncTask$Status:[I
 | |
| 
 | |
|     iget-object v1, p0, Landroid/support/v4/content/ModernAsyncTask;->mStatus:Landroid/support/v4/content/ModernAsyncTask$Status;
 | |
| 
 | |
|     invoke-virtual {v1}, Landroid/support/v4/content/ModernAsyncTask$Status;->ordinal()I
 | |
| 
 | |
|     move-result v1
 | |
| 
 | |
|     aget v0, v0, v1
 | |
| 
 | |
|     packed-switch v0, :pswitch_data_34
 | |
| 
 | |
|     .line 418
 | |
|     :cond_13
 | |
|     sget-object v0, Landroid/support/v4/content/ModernAsyncTask$Status;->RUNNING:Landroid/support/v4/content/ModernAsyncTask$Status;
 | |
| 
 | |
|     iput-object v0, p0, Landroid/support/v4/content/ModernAsyncTask;->mStatus:Landroid/support/v4/content/ModernAsyncTask$Status;
 | |
| 
 | |
|     .line 420
 | |
|     invoke-virtual {p0}, Landroid/support/v4/content/ModernAsyncTask;->onPreExecute()V
 | |
| 
 | |
|     .line 422
 | |
|     iget-object v0, p0, Landroid/support/v4/content/ModernAsyncTask;->mWorker:Landroid/support/v4/content/ModernAsyncTask$WorkerRunnable;
 | |
| 
 | |
|     iput-object p2, v0, Landroid/support/v4/content/ModernAsyncTask$WorkerRunnable;->mParams:[Ljava/lang/Object;
 | |
| 
 | |
|     .line 423
 | |
|     iget-object v0, p0, Landroid/support/v4/content/ModernAsyncTask;->mFuture:Ljava/util/concurrent/FutureTask;
 | |
| 
 | |
|     invoke-interface {p1, v0}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V
 | |
| 
 | |
|     .line 425
 | |
|     return-object p0
 | |
| 
 | |
|     .line 409
 | |
|     :pswitch_24
 | |
|     new-instance v0, Ljava/lang/IllegalStateException;
 | |
| 
 | |
|     const-string v1, "Cannot execute task: the task is already running."
 | |
| 
 | |
|     invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
 | |
| 
 | |
|     throw v0
 | |
| 
 | |
|     .line 412
 | |
|     :pswitch_2c
 | |
|     new-instance v0, Ljava/lang/IllegalStateException;
 | |
| 
 | |
|     const-string v1, "Cannot execute task: the task has already been executed (a task can be executed only once)"
 | |
| 
 | |
|     invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
 | |
| 
 | |
|     throw v0
 | |
| 
 | |
|     .line 407
 | |
|     :pswitch_data_34
 | |
|     .packed-switch 0x1
 | |
|         :pswitch_24
 | |
|         :pswitch_2c
 | |
|     .end packed-switch
 | |
| .end method
 | |
| 
 | |
| .method public final get()Ljava/lang/Object;
 | |
|     .registers 2
 | |
|     .annotation system Ldalvik/annotation/Signature;
 | |
|         value = {
 | |
|             "()TResult;"
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .annotation system Ldalvik/annotation/Throws;
 | |
|         value = {
 | |
|             Ljava/lang/InterruptedException;,
 | |
|             Ljava/util/concurrent/ExecutionException;
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     .line 321
 | |
|     .local p0, "this":Landroid/support/v4/content/ModernAsyncTask;, "Landroid/support/v4/content/ModernAsyncTask<TParams;TProgress;TResult;>;"
 | |
|     iget-object v0, p0, Landroid/support/v4/content/ModernAsyncTask;->mFuture:Ljava/util/concurrent/FutureTask;
 | |
| 
 | |
|     invoke-virtual {v0}, Ljava/util/concurrent/FutureTask;->get()Ljava/lang/Object;
 | |
| 
 | |
|     move-result-object v0
 | |
| 
 | |
|     return-object v0
 | |
| .end method
 | |
| 
 | |
| .method public final get(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
 | |
|     .registers 5
 | |
|     .param p1, "timeout"    # J
 | |
|     .param p3, "unit"    # Ljava/util/concurrent/TimeUnit;
 | |
|     .annotation system Ldalvik/annotation/Signature;
 | |
|         value = {
 | |
|             "(J",
 | |
|             "Ljava/util/concurrent/TimeUnit;",
 | |
|             ")TResult;"
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .annotation system Ldalvik/annotation/Throws;
 | |
|         value = {
 | |
|             Ljava/lang/InterruptedException;,
 | |
|             Ljava/util/concurrent/ExecutionException;,
 | |
|             Ljava/util/concurrent/TimeoutException;
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     .line 341
 | |
|     .local p0, "this":Landroid/support/v4/content/ModernAsyncTask;, "Landroid/support/v4/content/ModernAsyncTask<TParams;TProgress;TResult;>;"
 | |
|     iget-object v0, p0, Landroid/support/v4/content/ModernAsyncTask;->mFuture:Ljava/util/concurrent/FutureTask;
 | |
| 
 | |
|     invoke-virtual {v0, p1, p2, p3}, Ljava/util/concurrent/FutureTask;->get(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
 | |
| 
 | |
|     move-result-object v0
 | |
| 
 | |
|     return-object v0
 | |
| .end method
 | |
| 
 | |
| .method public final getStatus()Landroid/support/v4/content/ModernAsyncTask$Status;
 | |
|     .registers 2
 | |
| 
 | |
|     .prologue
 | |
|     .line 169
 | |
|     .local p0, "this":Landroid/support/v4/content/ModernAsyncTask;, "Landroid/support/v4/content/ModernAsyncTask<TParams;TProgress;TResult;>;"
 | |
|     iget-object v0, p0, Landroid/support/v4/content/ModernAsyncTask;->mStatus:Landroid/support/v4/content/ModernAsyncTask$Status;
 | |
| 
 | |
|     return-object v0
 | |
| .end method
 | |
| 
 | |
| .method public final isCancelled()Z
 | |
|     .registers 2
 | |
| 
 | |
|     .prologue
 | |
|     .line 273
 | |
|     .local p0, "this":Landroid/support/v4/content/ModernAsyncTask;, "Landroid/support/v4/content/ModernAsyncTask<TParams;TProgress;TResult;>;"
 | |
|     iget-object v0, p0, Landroid/support/v4/content/ModernAsyncTask;->mFuture:Ljava/util/concurrent/FutureTask;
 | |
| 
 | |
|     invoke-virtual {v0}, Ljava/util/concurrent/FutureTask;->isCancelled()Z
 | |
| 
 | |
|     move-result v0
 | |
| 
 | |
|     return v0
 | |
| .end method
 | |
| 
 | |
| .method protected onCancelled()V
 | |
|     .registers 1
 | |
| 
 | |
|     .prologue
 | |
|     .line 260
 | |
|     .local p0, "this":Landroid/support/v4/content/ModernAsyncTask;, "Landroid/support/v4/content/ModernAsyncTask<TParams;TProgress;TResult;>;"
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method protected onCancelled(Ljava/lang/Object;)V
 | |
|     .registers 2
 | |
|     .annotation system Ldalvik/annotation/Signature;
 | |
|         value = {
 | |
|             "(TResult;)V"
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     .line 244
 | |
|     .local p0, "this":Landroid/support/v4/content/ModernAsyncTask;, "Landroid/support/v4/content/ModernAsyncTask<TParams;TProgress;TResult;>;"
 | |
|     .local p1, "result":Ljava/lang/Object;, "TResult;"
 | |
|     invoke-virtual {p0}, Landroid/support/v4/content/ModernAsyncTask;->onCancelled()V
 | |
| 
 | |
|     .line 245
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method protected onPostExecute(Ljava/lang/Object;)V
 | |
|     .registers 2
 | |
|     .annotation system Ldalvik/annotation/Signature;
 | |
|         value = {
 | |
|             "(TResult;)V"
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     .line 213
 | |
|     .local p0, "this":Landroid/support/v4/content/ModernAsyncTask;, "Landroid/support/v4/content/ModernAsyncTask<TParams;TProgress;TResult;>;"
 | |
|     .local p1, "result":Ljava/lang/Object;, "TResult;"
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method protected onPreExecute()V
 | |
|     .registers 1
 | |
| 
 | |
|     .prologue
 | |
|     .line 197
 | |
|     .local p0, "this":Landroid/support/v4/content/ModernAsyncTask;, "Landroid/support/v4/content/ModernAsyncTask<TParams;TProgress;TResult;>;"
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method protected varargs onProgressUpdate([Ljava/lang/Object;)V
 | |
|     .registers 2
 | |
|     .annotation system Ldalvik/annotation/Signature;
 | |
|         value = {
 | |
|             "([TProgress;)V"
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     .line 226
 | |
|     .local p0, "this":Landroid/support/v4/content/ModernAsyncTask;, "Landroid/support/v4/content/ModernAsyncTask<TParams;TProgress;TResult;>;"
 | |
|     .local p1, "values":[Ljava/lang/Object;, "[TProgress;"
 | |
|     return-void
 | |
| .end method
 | |
| 
 | |
| .method protected final varargs publishProgress([Ljava/lang/Object;)V
 | |
|     .registers 5
 | |
|     .annotation system Ldalvik/annotation/Signature;
 | |
|         value = {
 | |
|             "([TProgress;)V"
 | |
|         }
 | |
|     .end annotation
 | |
| 
 | |
|     .prologue
 | |
|     .line 451
 | |
|     .local p0, "this":Landroid/support/v4/content/ModernAsyncTask;, "Landroid/support/v4/content/ModernAsyncTask<TParams;TProgress;TResult;>;"
 | |
|     .local p1, "values":[Ljava/lang/Object;, "[TProgress;"
 | |
|     invoke-virtual {p0}, Landroid/support/v4/content/ModernAsyncTask;->isCancelled()Z
 | |
| 
 | |
|     move-result v0
 | |
| 
 | |
|     if-nez v0, :cond_15
 | |
| 
 | |
|     .line 452
 | |
|     sget-object v0, Landroid/support/v4/content/ModernAsyncTask;->sHandler:Landroid/support/v4/content/ModernAsyncTask$InternalHandler;
 | |
| 
 | |
|     const/4 v1, 0x2
 | |
| 
 | |
|     new-instance v2, Landroid/support/v4/content/ModernAsyncTask$AsyncTaskResult;
 | |
| 
 | |
|     invoke-direct {v2, p0, p1}, Landroid/support/v4/content/ModernAsyncTask$AsyncTaskResult;-><init>(Landroid/support/v4/content/ModernAsyncTask;[Ljava/lang/Object;)V
 | |
| 
 | |
|     invoke-virtual {v0, v1, v2}, Landroid/support/v4/content/ModernAsyncTask$InternalHandler;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
 | |
| 
 | |
|     move-result-object v0
 | |
| 
 | |
|     invoke-virtual {v0}, Landroid/os/Message;->sendToTarget()V
 | |
| 
 | |
|     .line 455
 | |
|     :cond_15
 | |
|     return-void
 | |
| .end method
 |