AsynToSyn.smali
.class public final Lsg/bigo/bigohttp/utils/AsynToSyn;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lsg/bigo/bigohttp/utils/AsynToSyn$AsynCall;
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
"E:",
"Ljava/lang/Exception;",
">",
"Ljava/lang/Object;"
}
.end annotation
# instance fields
.field final a:Ljava/lang/Object;
.annotation system Ldalvik/annotation/Signature;
value = {
"TT;"
}
.end annotation
.end field
.field b:Ljava/util/concurrent/BlockingQueue;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/BlockingQueue<",
"TT;>;"
}
.end annotation
.end field
.field private c:Lsg/bigo/bigohttp/utils/AsynToSyn$AsynCall;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lsg/bigo/bigohttp/utils/AsynToSyn$AsynCall<",
"TT;TE;>;"
}
.end annotation
.end field
.field private final d:J
# direct methods
.method public constructor <init>(Lsg/bigo/bigohttp/utils/AsynToSyn$AsynCall;Ljava/lang/Object;J)V
.registers 7
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lsg/bigo/bigohttp/utils/AsynToSyn$AsynCall<",
"TT;TE;>;TT;J)V"
}
.end annotation
.line 18
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 15
new-instance v0, Ljava/util/concurrent/ArrayBlockingQueue;
const/4 v1, 0x1
invoke-direct {v0, v1}, Ljava/util/concurrent/ArrayBlockingQueue;-><init>(I)V
iput-object v0, p0, Lsg/bigo/bigohttp/utils/AsynToSyn;->b:Ljava/util/concurrent/BlockingQueue;
.line 19
iput-object p1, p0, Lsg/bigo/bigohttp/utils/AsynToSyn;->c:Lsg/bigo/bigohttp/utils/AsynToSyn$AsynCall;
.line 20
iput-object p2, p0, Lsg/bigo/bigohttp/utils/AsynToSyn;->a:Ljava/lang/Object;
.line 21
iput-wide p3, p0, Lsg/bigo/bigohttp/utils/AsynToSyn;->d:J
return-void
.end method
# virtual methods
.method public final a()Ljava/lang/Object;
.registers 5
.annotation system Ldalvik/annotation/Signature;
value = {
"()TT;^TE;"
}
.end annotation
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/Exception;
}
.end annotation
.line 25
iget-object v0, p0, Lsg/bigo/bigohttp/utils/AsynToSyn;->c:Lsg/bigo/bigohttp/utils/AsynToSyn$AsynCall;
new-instance v1, Lsg/bigo/bigohttp/utils/AsynToSyn$1;
invoke-direct {v1, p0}, Lsg/bigo/bigohttp/utils/AsynToSyn$1;-><init>(Lsg/bigo/bigohttp/utils/AsynToSyn;)V
invoke-interface {v0, v1}, Lsg/bigo/bigohttp/utils/AsynToSyn$AsynCall;->call(Lsg/bigo/bigohttp/Callback;)V
.line 35
:try_start_a
iget-object v0, p0, Lsg/bigo/bigohttp/utils/AsynToSyn;->b:Ljava/util/concurrent/BlockingQueue;
iget-wide v1, p0, Lsg/bigo/bigohttp/utils/AsynToSyn;->d:J
sget-object v3, Ljava/util/concurrent/TimeUnit;->MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invoke-interface {v0, v1, v2, v3}, Ljava/util/concurrent/BlockingQueue;->poll(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
move-result-object v0
if-nez v0, :cond_18
.line 36
iget-object v0, p0, Lsg/bigo/bigohttp/utils/AsynToSyn;->a:Ljava/lang/Object;
:try_end_18
.catch Ljava/lang/InterruptedException; {:try_start_a .. :try_end_18} :catch_19
:cond_18
return-object v0
.line 38
:catch_19
iget-object v0, p0, Lsg/bigo/bigohttp/utils/AsynToSyn;->a:Ljava/lang/Object;
return-object v0
.end method