i.smali
.class public Lcom/mooc/network/d/i;
.super Ljava/lang/Object;
.source ""
# interfaces
.implements Lcom/fulishe/shadow/base/n$a;
.implements Ljava/util/concurrent/Future;
# instance fields
.field public a:Lcom/mooc/network/core/Request;
.field public b:Z
.field public c:Lcom/fulishe/shadow/base/n;
# direct methods
.method public constructor <init>()V
.registers 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method private declared-synchronized a(Ljava/lang/Long;)Lcom/fulishe/shadow/base/n;
.registers 7
const-wide/16 v2, 0x0
monitor-enter p0
:try_start_3
iget-boolean v0, p0, Lcom/mooc/network/d/i;->b:Z
:try_end_5
.catchall {:try_start_3 .. :try_end_5} :catchall_1c
if-nez v0, :cond_52
if-nez p1, :cond_1f
:goto_9
:try_start_9
invoke-virtual {p0}, Lcom/mooc/network/d/i;->isDone()Z
move-result v0
if-nez v0, :cond_3a
const-wide/16 v0, 0x0
invoke-virtual {p0, v0, v1}, Ljava/lang/Object;->wait(J)V
:try_end_14
.catchall {:try_start_9 .. :try_end_14} :catchall_15
goto :goto_9
:catchall_15
move-exception v0
:try_start_16
new-instance v0, Ljava/util/concurrent/TimeoutException;
invoke-direct {v0}, Ljava/util/concurrent/TimeoutException;-><init>()V
throw v0
:try_end_1c
.catchall {:try_start_16 .. :try_end_1c} :catchall_1c
:catchall_1c
move-exception v0
monitor-exit p0
throw v0
:cond_1f
:try_start_1f
invoke-virtual {p1}, Ljava/lang/Long;->longValue()J
move-result-wide v0
cmp-long v0, v0, v2
if-lez v0, :cond_3a
invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
move-result-wide v0
invoke-virtual {p1}, Ljava/lang/Long;->longValue()J
move-result-wide v2
add-long/2addr v2, v0
:goto_30
invoke-virtual {p0}, Lcom/mooc/network/d/i;->isDone()Z
:try_end_33
.catchall {:try_start_1f .. :try_end_33} :catchall_15
move-result v4
if-nez v4, :cond_3a
cmp-long v4, v0, v2
if-ltz v4, :cond_42
:cond_3a
:try_start_3a
iget-boolean v0, p0, Lcom/mooc/network/d/i;->b:Z
if-eqz v0, :cond_4c
iget-object v0, p0, Lcom/mooc/network/d/i;->c:Lcom/fulishe/shadow/base/n;
:try_end_40
.catchall {:try_start_3a .. :try_end_40} :catchall_1c
:goto_40
monitor-exit p0
return-object v0
:cond_42
sub-long v0, v2, v0
:try_start_44
invoke-virtual {p0, v0, v1}, Ljava/lang/Object;->wait(J)V
invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
:try_end_4a
.catchall {:try_start_44 .. :try_end_4a} :catchall_15
move-result-wide v0
goto :goto_30
:cond_4c
:try_start_4c
new-instance v0, Ljava/util/concurrent/TimeoutException;
invoke-direct {v0}, Ljava/util/concurrent/TimeoutException;-><init>()V
throw v0
:cond_52
iget-object v0, p0, Lcom/mooc/network/d/i;->c:Lcom/fulishe/shadow/base/n;
:try_end_54
.catchall {:try_start_4c .. :try_end_54} :catchall_1c
goto :goto_40
.end method
.method public static d()Lcom/mooc/network/d/i;
.registers 1
new-instance v0, Lcom/mooc/network/d/i;
invoke-direct {v0}, Lcom/mooc/network/d/i;-><init>()V
return-object v0
.end method
# virtual methods
.method public a(JLjava/util/concurrent/TimeUnit;)Lcom/fulishe/shadow/base/n;
.registers 7
sget-object v0, Ljava/util/concurrent/TimeUnit;->MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invoke-virtual {v0, p1, p2, p3}, Ljava/util/concurrent/TimeUnit;->convert(JLjava/util/concurrent/TimeUnit;)J
move-result-wide v0
invoke-static {v0, v1}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/Long;->longValue()J
move-result-wide v0
invoke-static {v0, v1}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v0
invoke-direct {p0, v0}, Lcom/mooc/network/d/i;->a(Ljava/lang/Long;)Lcom/fulishe/shadow/base/n;
move-result-object v0
return-object v0
.end method
.method public declared-synchronized a(Lcom/fulishe/shadow/base/n;)V
.registers 3
monitor-enter p0
const/4 v0, 0x1
:try_start_2
iput-boolean v0, p0, Lcom/mooc/network/d/i;->b:Z
iput-object p1, p0, Lcom/mooc/network/d/i;->c:Lcom/fulishe/shadow/base/n;
invoke-virtual {p0}, Ljava/lang/Object;->notifyAll()V
:try_end_9
.catchall {:try_start_2 .. :try_end_9} :catchall_b
monitor-exit p0
return-void
:catchall_b
move-exception v0
monitor-exit p0
throw v0
.end method
.method public declared-synchronized b(Lcom/fulishe/shadow/base/n;)V
.registers 3
monitor-enter p0
const/4 v0, 0x1
:try_start_2
iput-boolean v0, p0, Lcom/mooc/network/d/i;->b:Z
iput-object p1, p0, Lcom/mooc/network/d/i;->c:Lcom/fulishe/shadow/base/n;
invoke-virtual {p0}, Ljava/lang/Object;->notifyAll()V
:try_end_9
.catchall {:try_start_2 .. :try_end_9} :catchall_b
monitor-exit p0
return-void
:catchall_b
move-exception v0
monitor-exit p0
throw v0
.end method
.method public c()Lcom/fulishe/shadow/base/n;
.registers 3
const/4 v0, 0x0
:try_start_1
invoke-direct {p0, v0}, Lcom/mooc/network/d/i;->a(Ljava/lang/Long;)Lcom/fulishe/shadow/base/n;
:try_end_4
.catch Ljava/util/concurrent/TimeoutException; {:try_start_1 .. :try_end_4} :catch_6
move-result-object v0
return-object v0
:catch_6
move-exception v0
new-instance v1, Ljava/lang/AssertionError;
invoke-direct {v1, v0}, Ljava/lang/AssertionError;-><init>(Ljava/lang/Object;)V
throw v1
.end method
.method public declared-synchronized cancel(Z)Z
.registers 4
const/4 v0, 0x0
monitor-enter p0
:try_start_2
iget-object v1, p0, Lcom/mooc/network/d/i;->a:Lcom/mooc/network/core/Request;
if-eqz v1, :cond_c
invoke-virtual {p0}, Lcom/mooc/network/d/i;->isDone()Z
:try_end_9
.catchall {:try_start_2 .. :try_end_9} :catchall_15
move-result v1
if-eqz v1, :cond_e
:cond_c
:goto_c
monitor-exit p0
return v0
:cond_e
:try_start_e
iget-object v0, p0, Lcom/mooc/network/d/i;->a:Lcom/mooc/network/core/Request;
invoke-virtual {v0}, Lcom/mooc/network/core/Request;->a()V
:try_end_13
.catchall {:try_start_e .. :try_end_13} :catchall_15
const/4 v0, 0x1
goto :goto_c
:catchall_15
move-exception v0
monitor-exit p0
throw v0
.end method
.method public get()Ljava/lang/Object;
.registers 2
invoke-virtual {p0}, Lcom/mooc/network/d/i;->c()Lcom/fulishe/shadow/base/n;
move-result-object v0
return-object v0
.end method
.method public get(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
.registers 5
invoke-virtual {p0, p1, p2, p3}, Lcom/mooc/network/d/i;->a(JLjava/util/concurrent/TimeUnit;)Lcom/fulishe/shadow/base/n;
move-result-object v0
return-object v0
.end method
.method public isCancelled()Z
.registers 2
iget-object v0, p0, Lcom/mooc/network/d/i;->a:Lcom/mooc/network/core/Request;
if-nez v0, :cond_6
const/4 v0, 0x0
:goto_5
return v0
:cond_6
invoke-virtual {v0}, Lcom/mooc/network/core/Request;->r()Z
move-result v0
goto :goto_5
.end method
.method public declared-synchronized isDone()Z
.registers 3
const/4 v0, 0x1
monitor-enter p0
:try_start_2
iget-boolean v1, p0, Lcom/mooc/network/d/i;->b:Z
:try_end_4
.catchall {:try_start_2 .. :try_end_4} :catchall_10
if-eqz v1, :cond_8
:cond_6
:goto_6
monitor-exit p0
return v0
:cond_8
:try_start_8
invoke-virtual {p0}, Lcom/mooc/network/d/i;->isCancelled()Z
:try_end_b
.catchall {:try_start_8 .. :try_end_b} :catchall_10
move-result v1
if-nez v1, :cond_6
const/4 v0, 0x0
goto :goto_6
:catchall_10
move-exception v0
monitor-exit p0
throw v0
.end method