GmsClient.smali
.class public abstract Lcom/google/android/gms/common/internal/GmsClient;
.super Lcom/google/android/gms/common/internal/BaseGmsClient;
# interfaces
.implements Lcom/google/android/gms/common/api/Api$Client;
.implements Lcom/google/android/gms/common/internal/GmsClientEventManager$GmsClientEventState;
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<T::",
"Landroid/os/IInterface;",
">",
"Lcom/google/android/gms/common/internal/BaseGmsClient<",
"TT;>;",
"Lcom/google/android/gms/common/api/Api$Client;",
"Lcom/google/android/gms/common/internal/GmsClientEventManager$GmsClientEventState;"
}
.end annotation
# instance fields
.field private final mScopes:Ljava/util/Set;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Set<",
"Lcom/google/android/gms/common/api/Scope;",
">;"
}
.end annotation
.end field
.field private final zaet:Lcom/google/android/gms/common/internal/ClientSettings;
.field private final zax:Landroid/accounts/Account;
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method protected constructor <init>(Landroid/content/Context;Landroid/os/Handler;ILcom/google/android/gms/common/internal/ClientSettings;)V
.registers 14
.line 1
nop
.line 2
invoke-static {p1}, Lcom/google/android/gms/common/internal/GmsClientSupervisor;->getInstance(Landroid/content/Context;)Lcom/google/android/gms/common/internal/GmsClientSupervisor;
move-result-object v3
.line 3
invoke-static {}, Lcom/google/android/gms/common/GoogleApiAvailability;->getInstance()Lcom/google/android/gms/common/GoogleApiAvailability;
move-result-object v4
.line 4
const/4 v7, 0x0
const/4 v8, 0x0
move-object v0, p0
move-object v1, p1
move-object v2, p2
move v5, p3
move-object v6, p4
invoke-direct/range {v0 .. v8}, Lcom/google/android/gms/common/internal/GmsClient;-><init>(Landroid/content/Context;Landroid/os/Handler;Lcom/google/android/gms/common/internal/GmsClientSupervisor;Lcom/google/android/gms/common/GoogleApiAvailability;ILcom/google/android/gms/common/internal/ClientSettings;Lcom/google/android/gms/common/api/GoogleApiClient$ConnectionCallbacks;Lcom/google/android/gms/common/api/GoogleApiClient$OnConnectionFailedListener;)V
.line 5
return-void
.end method
.method protected constructor <init>(Landroid/content/Context;Landroid/os/Handler;Lcom/google/android/gms/common/internal/GmsClientSupervisor;Lcom/google/android/gms/common/GoogleApiAvailability;ILcom/google/android/gms/common/internal/ClientSettings;Lcom/google/android/gms/common/api/GoogleApiClient$ConnectionCallbacks;Lcom/google/android/gms/common/api/GoogleApiClient$OnConnectionFailedListener;)V
.registers 18
.line 27
move-object v8, p0
.line 28
invoke-static/range {p7 .. p7}, Lcom/google/android/gms/common/internal/GmsClient;->zaa(Lcom/google/android/gms/common/api/GoogleApiClient$ConnectionCallbacks;)Lcom/google/android/gms/common/internal/BaseGmsClient$BaseConnectionCallbacks;
move-result-object v6
.line 29
invoke-static/range {p8 .. p8}, Lcom/google/android/gms/common/internal/GmsClient;->zaa(Lcom/google/android/gms/common/api/GoogleApiClient$OnConnectionFailedListener;)Lcom/google/android/gms/common/internal/BaseGmsClient$BaseOnConnectionFailedListener;
move-result-object v7
.line 30
move-object v0, p0
move-object v1, p1
move-object v2, p2
move-object v3, p3
move-object v4, p4
move v5, p5
invoke-direct/range {v0 .. v7}, Lcom/google/android/gms/common/internal/BaseGmsClient;-><init>(Landroid/content/Context;Landroid/os/Handler;Lcom/google/android/gms/common/internal/GmsClientSupervisor;Lcom/google/android/gms/common/GoogleApiAvailabilityLight;ILcom/google/android/gms/common/internal/BaseGmsClient$BaseConnectionCallbacks;Lcom/google/android/gms/common/internal/BaseGmsClient$BaseOnConnectionFailedListener;)V
.line 31
invoke-static {p6}, Lcom/google/android/gms/common/internal/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/google/android/gms/common/internal/ClientSettings;
iput-object v0, v8, Lcom/google/android/gms/common/internal/GmsClient;->zaet:Lcom/google/android/gms/common/internal/ClientSettings;
.line 32
invoke-virtual {p6}, Lcom/google/android/gms/common/internal/ClientSettings;->getAccount()Landroid/accounts/Account;
move-result-object v0
iput-object v0, v8, Lcom/google/android/gms/common/internal/GmsClient;->zax:Landroid/accounts/Account;
.line 33
invoke-virtual {p6}, Lcom/google/android/gms/common/internal/ClientSettings;->getAllRequestedScopes()Ljava/util/Set;
move-result-object v0
invoke-direct {p0, v0}, Lcom/google/android/gms/common/internal/GmsClient;->zaa(Ljava/util/Set;)Ljava/util/Set;
move-result-object v0
iput-object v0, v8, Lcom/google/android/gms/common/internal/GmsClient;->mScopes:Ljava/util/Set;
.line 34
return-void
.end method
.method protected constructor <init>(Landroid/content/Context;Landroid/os/Looper;ILcom/google/android/gms/common/internal/ClientSettings;)V
.registers 14
.line 13
nop
.line 14
invoke-static {p1}, Lcom/google/android/gms/common/internal/GmsClientSupervisor;->getInstance(Landroid/content/Context;)Lcom/google/android/gms/common/internal/GmsClientSupervisor;
move-result-object v3
.line 15
invoke-static {}, Lcom/google/android/gms/common/GoogleApiAvailability;->getInstance()Lcom/google/android/gms/common/GoogleApiAvailability;
move-result-object v4
.line 16
const/4 v7, 0x0
const/4 v8, 0x0
move-object v0, p0
move-object v1, p1
move-object v2, p2
move v5, p3
move-object v6, p4
invoke-direct/range {v0 .. v8}, Lcom/google/android/gms/common/internal/GmsClient;-><init>(Landroid/content/Context;Landroid/os/Looper;Lcom/google/android/gms/common/internal/GmsClientSupervisor;Lcom/google/android/gms/common/GoogleApiAvailability;ILcom/google/android/gms/common/internal/ClientSettings;Lcom/google/android/gms/common/api/GoogleApiClient$ConnectionCallbacks;Lcom/google/android/gms/common/api/GoogleApiClient$OnConnectionFailedListener;)V
.line 17
return-void
.end method
.method protected constructor <init>(Landroid/content/Context;Landroid/os/Looper;ILcom/google/android/gms/common/internal/ClientSettings;Lcom/google/android/gms/common/api/GoogleApiClient$ConnectionCallbacks;Lcom/google/android/gms/common/api/GoogleApiClient$OnConnectionFailedListener;)V
.registers 16
.line 6
nop
.line 7
invoke-static {p1}, Lcom/google/android/gms/common/internal/GmsClientSupervisor;->getInstance(Landroid/content/Context;)Lcom/google/android/gms/common/internal/GmsClientSupervisor;
move-result-object v3
.line 8
invoke-static {}, Lcom/google/android/gms/common/GoogleApiAvailability;->getInstance()Lcom/google/android/gms/common/GoogleApiAvailability;
move-result-object v4
.line 9
invoke-static {p5}, Lcom/google/android/gms/common/internal/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p5
move-object v7, p5
check-cast v7, Lcom/google/android/gms/common/api/GoogleApiClient$ConnectionCallbacks;
.line 10
invoke-static {p6}, Lcom/google/android/gms/common/internal/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p5
move-object v8, p5
check-cast v8, Lcom/google/android/gms/common/api/GoogleApiClient$OnConnectionFailedListener;
.line 11
move-object v0, p0
move-object v1, p1
move-object v2, p2
move v5, p3
move-object v6, p4
invoke-direct/range {v0 .. v8}, Lcom/google/android/gms/common/internal/GmsClient;-><init>(Landroid/content/Context;Landroid/os/Looper;Lcom/google/android/gms/common/internal/GmsClientSupervisor;Lcom/google/android/gms/common/GoogleApiAvailability;ILcom/google/android/gms/common/internal/ClientSettings;Lcom/google/android/gms/common/api/GoogleApiClient$ConnectionCallbacks;Lcom/google/android/gms/common/api/GoogleApiClient$OnConnectionFailedListener;)V
.line 12
return-void
.end method
.method protected constructor <init>(Landroid/content/Context;Landroid/os/Looper;Lcom/google/android/gms/common/internal/GmsClientSupervisor;Lcom/google/android/gms/common/GoogleApiAvailability;ILcom/google/android/gms/common/internal/ClientSettings;Lcom/google/android/gms/common/api/GoogleApiClient$ConnectionCallbacks;Lcom/google/android/gms/common/api/GoogleApiClient$OnConnectionFailedListener;)V
.registers 19
.line 18
move-object v9, p0
.line 19
invoke-static/range {p7 .. p7}, Lcom/google/android/gms/common/internal/GmsClient;->zaa(Lcom/google/android/gms/common/api/GoogleApiClient$ConnectionCallbacks;)Lcom/google/android/gms/common/internal/BaseGmsClient$BaseConnectionCallbacks;
move-result-object v6
.line 20
invoke-static/range {p8 .. p8}, Lcom/google/android/gms/common/internal/GmsClient;->zaa(Lcom/google/android/gms/common/api/GoogleApiClient$OnConnectionFailedListener;)Lcom/google/android/gms/common/internal/BaseGmsClient$BaseOnConnectionFailedListener;
move-result-object v7
.line 21
invoke-virtual/range {p6 .. p6}, Lcom/google/android/gms/common/internal/ClientSettings;->getRealClientClassName()Ljava/lang/String;
move-result-object v8
.line 22
move-object v0, p0
move-object v1, p1
move-object v2, p2
move-object v3, p3
move-object v4, p4
move v5, p5
invoke-direct/range {v0 .. v8}, Lcom/google/android/gms/common/internal/BaseGmsClient;-><init>(Landroid/content/Context;Landroid/os/Looper;Lcom/google/android/gms/common/internal/GmsClientSupervisor;Lcom/google/android/gms/common/GoogleApiAvailabilityLight;ILcom/google/android/gms/common/internal/BaseGmsClient$BaseConnectionCallbacks;Lcom/google/android/gms/common/internal/BaseGmsClient$BaseOnConnectionFailedListener;Ljava/lang/String;)V
.line 23
move-object/from16 v0, p6
iput-object v0, v9, Lcom/google/android/gms/common/internal/GmsClient;->zaet:Lcom/google/android/gms/common/internal/ClientSettings;
.line 24
invoke-virtual/range {p6 .. p6}, Lcom/google/android/gms/common/internal/ClientSettings;->getAccount()Landroid/accounts/Account;
move-result-object v1
iput-object v1, v9, Lcom/google/android/gms/common/internal/GmsClient;->zax:Landroid/accounts/Account;
.line 25
invoke-virtual/range {p6 .. p6}, Lcom/google/android/gms/common/internal/ClientSettings;->getAllRequestedScopes()Ljava/util/Set;
move-result-object v0
invoke-direct {p0, v0}, Lcom/google/android/gms/common/internal/GmsClient;->zaa(Ljava/util/Set;)Ljava/util/Set;
move-result-object v0
iput-object v0, v9, Lcom/google/android/gms/common/internal/GmsClient;->mScopes:Ljava/util/Set;
.line 26
return-void
.end method
.method private static zaa(Lcom/google/android/gms/common/api/GoogleApiClient$ConnectionCallbacks;)Lcom/google/android/gms/common/internal/BaseGmsClient$BaseConnectionCallbacks;
.registers 2
.line 46
if-nez p0, :cond_4
.line 47
const/4 p0, 0x0
return-object p0
.line 48
:cond_4
new-instance v0, Lcom/google/android/gms/common/internal/zaf;
invoke-direct {v0, p0}, Lcom/google/android/gms/common/internal/zaf;-><init>(Lcom/google/android/gms/common/api/GoogleApiClient$ConnectionCallbacks;)V
.line 49
return-object v0
.end method
.method private static zaa(Lcom/google/android/gms/common/api/GoogleApiClient$OnConnectionFailedListener;)Lcom/google/android/gms/common/internal/BaseGmsClient$BaseOnConnectionFailedListener;
.registers 2
.line 50
if-nez p0, :cond_4
.line 51
const/4 p0, 0x0
return-object p0
.line 52
:cond_4
new-instance v0, Lcom/google/android/gms/common/internal/zag;
invoke-direct {v0, p0}, Lcom/google/android/gms/common/internal/zag;-><init>(Lcom/google/android/gms/common/api/GoogleApiClient$OnConnectionFailedListener;)V
.line 53
return-object v0
.end method
.method private final zaa(Ljava/util/Set;)Ljava/util/Set;
.registers 5
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/Set<",
"Lcom/google/android/gms/common/api/Scope;",
">;)",
"Ljava/util/Set<",
"Lcom/google/android/gms/common/api/Scope;",
">;"
}
.end annotation
.line 35
invoke-virtual {p0, p1}, Lcom/google/android/gms/common/internal/GmsClient;->validateScopes(Ljava/util/Set;)Ljava/util/Set;
move-result-object v0
.line 36
invoke-interface {v0}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object v1
:goto_8
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_23
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcom/google/android/gms/common/api/Scope;
.line 37
invoke-interface {p1, v2}, Ljava/util/Set;->contains(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_1b
.line 39
goto :goto_8
.line 38
:cond_1b
new-instance p1, Ljava/lang/IllegalStateException;
const-string v0, "Expanding scopes is not permitted, use implied scopes instead"
invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p1
.line 40
:cond_23
return-object v0
.end method
# virtual methods
.method public final getAccount()Landroid/accounts/Account;
.registers 2
.line 42
iget-object v0, p0, Lcom/google/android/gms/common/internal/GmsClient;->zax:Landroid/accounts/Account;
return-object v0
.end method
.method protected final getClientSettings()Lcom/google/android/gms/common/internal/ClientSettings;
.registers 2
.line 43
iget-object v0, p0, Lcom/google/android/gms/common/internal/GmsClient;->zaet:Lcom/google/android/gms/common/internal/ClientSettings;
return-object v0
.end method
.method public getMinApkVersion()I
.registers 2
.line 54
invoke-super {p0}, Lcom/google/android/gms/common/internal/BaseGmsClient;->getMinApkVersion()I
move-result v0
return v0
.end method
.method public getRequiredFeatures()[Lcom/google/android/gms/common/Feature;
.registers 2
.line 45
const/4 v0, 0x0
new-array v0, v0, [Lcom/google/android/gms/common/Feature;
return-object v0
.end method
.method protected final getScopes()Ljava/util/Set;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/Set<",
"Lcom/google/android/gms/common/api/Scope;",
">;"
}
.end annotation
.line 44
iget-object v0, p0, Lcom/google/android/gms/common/internal/GmsClient;->mScopes:Ljava/util/Set;
return-object v0
.end method
.method protected validateScopes(Ljava/util/Set;)Ljava/util/Set;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/Set<",
"Lcom/google/android/gms/common/api/Scope;",
">;)",
"Ljava/util/Set<",
"Lcom/google/android/gms/common/api/Scope;",
">;"
}
.end annotation
.line 41
return-object p1
.end method