PendingPost.smali
.class final Lorg/greenrobot/eventbus/PendingPost;
.super Ljava/lang/Object;
.source "PendingPost.java"
# static fields
.field private static final pendingPostPool:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Lorg/greenrobot/eventbus/PendingPost;",
">;"
}
.end annotation
.end field
# instance fields
.field event:Ljava/lang/Object;
.field next:Lorg/greenrobot/eventbus/PendingPost;
.field subscription:Lorg/greenrobot/eventbus/Subscription;
# direct methods
.method static constructor <clinit>()V
.registers 1
.line 22
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
sput-object v0, Lorg/greenrobot/eventbus/PendingPost;->pendingPostPool:Ljava/util/List;
return-void
.end method
.method private constructor <init>(Ljava/lang/Object;Lorg/greenrobot/eventbus/Subscription;)V
.registers 3
.line 28
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 29
iput-object p1, p0, Lorg/greenrobot/eventbus/PendingPost;->event:Ljava/lang/Object;
.line 30
iput-object p2, p0, Lorg/greenrobot/eventbus/PendingPost;->subscription:Lorg/greenrobot/eventbus/Subscription;
return-void
.end method
.method static obtainPendingPost(Lorg/greenrobot/eventbus/Subscription;Ljava/lang/Object;)Lorg/greenrobot/eventbus/PendingPost;
.registers 4
.line 34
sget-object v0, Lorg/greenrobot/eventbus/PendingPost;->pendingPostPool:Ljava/util/List;
monitor-enter v0
.line 35
:try_start_3
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v1
if-lez v1, :cond_1a
add-int/lit8 v1, v1, -0x1
.line 37
invoke-interface {v0, v1}, Ljava/util/List;->remove(I)Ljava/lang/Object;
move-result-object v1
check-cast v1, Lorg/greenrobot/eventbus/PendingPost;
.line 38
iput-object p1, v1, Lorg/greenrobot/eventbus/PendingPost;->event:Ljava/lang/Object;
.line 39
iput-object p0, v1, Lorg/greenrobot/eventbus/PendingPost;->subscription:Lorg/greenrobot/eventbus/Subscription;
const/4 p0, 0x0
.line 40
iput-object p0, v1, Lorg/greenrobot/eventbus/PendingPost;->next:Lorg/greenrobot/eventbus/PendingPost;
.line 41
monitor-exit v0
return-object v1
.line 43
:cond_1a
monitor-exit v0
:try_end_1b
.catchall {:try_start_3 .. :try_end_1b} :catchall_21
.line 44
new-instance v0, Lorg/greenrobot/eventbus/PendingPost;
invoke-direct {v0, p1, p0}, Lorg/greenrobot/eventbus/PendingPost;-><init>(Ljava/lang/Object;Lorg/greenrobot/eventbus/Subscription;)V
return-object v0
:catchall_21
move-exception p0
.line 43
:try_start_22
monitor-exit v0
:try_end_23
.catchall {:try_start_22 .. :try_end_23} :catchall_21
throw p0
.end method
.method static releasePendingPost(Lorg/greenrobot/eventbus/PendingPost;)V
.registers 4
const/4 v0, 0x0
.line 48
iput-object v0, p0, Lorg/greenrobot/eventbus/PendingPost;->event:Ljava/lang/Object;
.line 49
iput-object v0, p0, Lorg/greenrobot/eventbus/PendingPost;->subscription:Lorg/greenrobot/eventbus/Subscription;
.line 50
iput-object v0, p0, Lorg/greenrobot/eventbus/PendingPost;->next:Lorg/greenrobot/eventbus/PendingPost;
.line 51
sget-object v0, Lorg/greenrobot/eventbus/PendingPost;->pendingPostPool:Ljava/util/List;
monitor-enter v0
.line 53
:try_start_a
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v1
const/16 v2, 0x2710
if-ge v1, v2, :cond_15
.line 54
invoke-interface {v0, p0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
.line 56
:cond_15
monitor-exit v0
return-void
:catchall_17
move-exception p0
monitor-exit v0
:try_end_19
.catchall {:try_start_a .. :try_end_19} :catchall_17
throw p0
.end method