ImoPermission$PermissionViewModel.smali
.class public Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;
.super Landroidx/lifecycle/ViewModel;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/imo/android/imoim/managers/ImoPermission;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "PermissionViewModel"
.end annotation
# instance fields
.field a:Ljava/util/Random;
.field b:Ljava/util/Map;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Map<",
"Ljava/lang/Integer;",
"Lcom/imo/android/imoim/livedata/ImoLiveData<",
"Ljava/lang/Boolean;",
">;>;"
}
.end annotation
.end field
.field private c:Ljava/util/Set;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Set<",
"Ljava/lang/String;",
">;"
}
.end annotation
.end field
.field private d:Ljava/util/Queue;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Queue<",
"Lcom/imo/android/imoim/managers/ImoPermission$a;",
">;"
}
.end annotation
.end field
.field private e:Ljava/util/concurrent/atomic/AtomicBoolean;
# direct methods
.method public constructor <init>()V
.registers 3
.line 417
invoke-direct {p0}, Landroidx/lifecycle/ViewModel;-><init>()V
.line 421
new-instance v0, Ljava/util/Random;
invoke-direct {v0}, Ljava/util/Random;-><init>()V
iput-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->a:Ljava/util/Random;
.line 423
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
iput-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->b:Ljava/util/Map;
.line 424
new-instance v0, Ljava/util/HashSet;
invoke-direct {v0}, Ljava/util/HashSet;-><init>()V
iput-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->c:Ljava/util/Set;
.line 425
new-instance v0, Ljava/util/LinkedList;
invoke-direct {v0}, Ljava/util/LinkedList;-><init>()V
iput-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->d:Ljava/util/Queue;
.line 426
new-instance v0, Ljava/util/concurrent/atomic/AtomicBoolean;
const/4 v1, 0x0
invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;-><init>(Z)V
iput-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->e:Ljava/util/concurrent/atomic/AtomicBoolean;
return-void
.end method
.method static synthetic a(Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;)Ljava/util/concurrent/atomic/AtomicBoolean;
.registers 1
.line 417
iget-object p0, p0, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->e:Ljava/util/concurrent/atomic/AtomicBoolean;
return-object p0
.end method
.method private a()V
.registers 3
.line 455
iget-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->e:Ljava/util/concurrent/atomic/AtomicBoolean;
invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z
move-result v0
if-eqz v0, :cond_9
return-void
.line 457
:cond_9
iget-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->d:Ljava/util/Queue;
invoke-interface {v0}, Ljava/util/Queue;->isEmpty()Z
move-result v0
if-eqz v0, :cond_12
return-void
.line 459
:cond_12
iget-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->d:Ljava/util/Queue;
invoke-interface {v0}, Ljava/util/Queue;->poll()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/imo/android/imoim/managers/ImoPermission$a;
.line 460
invoke-virtual {v0}, Lcom/imo/android/imoim/managers/ImoPermission$a;->b()V
.line 462
iget-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->e:Ljava/util/concurrent/atomic/AtomicBoolean;
const/4 v1, 0x1
invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;->set(Z)V
return-void
.end method
# virtual methods
.method public final a(I)Lcom/imo/android/imoim/livedata/ImoLiveData;
.registers 5
.annotation system Ldalvik/annotation/Signature;
value = {
"(I)",
"Lcom/imo/android/imoim/livedata/ImoLiveData<",
"Ljava/lang/Boolean;",
">;"
}
.end annotation
.line 444
iget-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->b:Ljava/util/Map;
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
invoke-interface {v0, v1}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z
move-result v0
if-nez v0, :cond_1a
.line 445
iget-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->b:Ljava/util/Map;
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
new-instance v2, Lcom/imo/android/imoim/livedata/ImoLiveData;
invoke-direct {v2}, Lcom/imo/android/imoim/livedata/ImoLiveData;-><init>()V
invoke-interface {v0, v1, v2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.line 446
:cond_1a
iget-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->b:Ljava/util/Map;
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
invoke-interface {v0, p1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Lcom/imo/android/imoim/livedata/ImoLiveData;
return-object p1
.end method
.method public final a(I[Ljava/lang/String;[I)V
.registers 7
const/4 v0, 0x0
const/4 v1, 0x0
.line 467
:goto_2
array-length v2, p2
if-ge v1, v2, :cond_e
.line 468
aget v2, p3, v1
if-eqz v2, :cond_b
const/4 p2, 0x0
goto :goto_f
:cond_b
add-int/lit8 v1, v1, 0x1
goto :goto_2
:cond_e
const/4 p2, 0x1
.line 473
:goto_f
invoke-virtual {p0, p1}, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->a(I)Lcom/imo/android/imoim/livedata/ImoLiveData;
move-result-object p3
invoke-static {p2}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object p2
invoke-virtual {p3, p2}, Lcom/imo/android/imoim/livedata/ImoLiveData;->postValue(Ljava/lang/Object;)V
.line 474
iget-object p2, p0, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->b:Ljava/util/Map;
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
invoke-interface {p2, p1}, Ljava/util/Map;->remove(Ljava/lang/Object;)Ljava/lang/Object;
.line 475
iget-object p1, p0, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->e:Ljava/util/concurrent/atomic/AtomicBoolean;
invoke-virtual {p1, v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->set(Z)V
.line 476
invoke-direct {p0}, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->a()V
return-void
.end method
.method public final a(Lcom/imo/android/imoim/managers/ImoPermission$a;)V
.registers 3
.line 450
iget-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->d:Ljava/util/Queue;
invoke-interface {v0, p1}, Ljava/util/Queue;->add(Ljava/lang/Object;)Z
.line 451
invoke-direct {p0}, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->a()V
return-void
.end method
.method public final a(Ljava/lang/String;)Z
.registers 3
.line 437
iget-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->c:Ljava/util/Set;
invoke-interface {v0, p1}, Ljava/util/Set;->contains(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_a
const/4 p1, 0x0
return p1
.line 439
:cond_a
iget-object v0, p0, Lcom/imo/android/imoim/managers/ImoPermission$PermissionViewModel;->c:Ljava/util/Set;
invoke-interface {v0, p1}, Ljava/util/Set;->add(Ljava/lang/Object;)Z
const/4 p1, 0x1
return p1
.end method