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
 |