BaseSimpleClient.smali
.class public abstract Lcom/google/android/gms/common/internal/BaseSimpleClient;
.super Ljava/lang/Object;
# interfaces
.implements Lcom/google/android/gms/common/api/Api$SimpleClient;
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<T::",
"Landroid/os/IInterface;",
">",
"Ljava/lang/Object;",
"Lcom/google/android/gms/common/api/Api$SimpleClient",
"<TT;>;"
}
.end annotation
# instance fields
.field private final mContext:Landroid/content/Context;
.field private final mLock:Ljava/lang/Object;
.field private mState:I
.field private zzrj:Landroid/os/IInterface;
.annotation system Ldalvik/annotation/Signature;
value = {
"TT;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.registers 3
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
new-instance v0, Ljava/lang/Object;
invoke-direct {v0}, Ljava/lang/Object;-><init>()V
iput-object v0, p0, Lcom/google/android/gms/common/internal/BaseSimpleClient;->mLock:Ljava/lang/Object;
const/4 v0, 0x0
iput-object v0, p0, Lcom/google/android/gms/common/internal/BaseSimpleClient;->zzrj:Landroid/os/IInterface;
const/4 v0, 0x1
iput v0, p0, Lcom/google/android/gms/common/internal/BaseSimpleClient;->mState:I
iput-object p1, p0, Lcom/google/android/gms/common/internal/BaseSimpleClient;->mContext:Landroid/content/Context;
return-void
.end method
# virtual methods
.method public getContext()Landroid/content/Context;
.registers 2
iget-object v0, p0, Lcom/google/android/gms/common/internal/BaseSimpleClient;->mContext:Landroid/content/Context;
return-object v0
.end method
.method public getRequiredFeatures()[Lcom/google/android/gms/common/Feature;
.registers 2
const/4 v0, 0x0
new-array v0, v0, [Lcom/google/android/gms/common/Feature;
return-object v0
.end method
.method public getService()Landroid/os/IInterface;
.registers 4
.annotation system Ldalvik/annotation/Signature;
value = {
"()TT;"
}
.end annotation
iget-object v1, p0, Lcom/google/android/gms/common/internal/BaseSimpleClient;->mLock:Ljava/lang/Object;
monitor-enter v1
:try_start_3
iget v0, p0, Lcom/google/android/gms/common/internal/BaseSimpleClient;->mState:I
const/4 v2, 0x5
if-ne v0, v2, :cond_11
new-instance v0, Landroid/os/DeadObjectException;
invoke-direct {v0}, Landroid/os/DeadObjectException;-><init>()V
throw v0
:catchall_e
move-exception v0
monitor-exit v1
:try_end_10
.catchall {:try_start_3 .. :try_end_10} :catchall_e
throw v0
:cond_11
:try_start_11
iget v0, p0, Lcom/google/android/gms/common/internal/BaseSimpleClient;->mState:I
const/4 v2, 0x4
if-eq v0, v2, :cond_1e
new-instance v0, Ljava/lang/IllegalStateException;
const-string v2, "Not connected. Call connect() and wait for onConnected() to be called."
invoke-direct {v0, v2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
:cond_1e
iget-object v0, p0, Lcom/google/android/gms/common/internal/BaseSimpleClient;->zzrj:Landroid/os/IInterface;
if-eqz v0, :cond_2c
const/4 v0, 0x1
:goto_23
const-string v2, "Client is connected but service is null"
invoke-static {v0, v2}, Lcom/google/android/gms/common/internal/Preconditions;->checkState(ZLjava/lang/Object;)V
iget-object v0, p0, Lcom/google/android/gms/common/internal/BaseSimpleClient;->zzrj:Landroid/os/IInterface;
monitor-exit v1
:try_end_2b
.catchall {:try_start_11 .. :try_end_2b} :catchall_e
return-object v0
:cond_2c
const/4 v0, 0x0
goto :goto_23
.end method
.method public setState(ILandroid/os/IInterface;)V
.registers 5
.annotation system Ldalvik/annotation/Signature;
value = {
"(ITT;)V"
}
.end annotation
iget-object v1, p0, Lcom/google/android/gms/common/internal/BaseSimpleClient;->mLock:Ljava/lang/Object;
monitor-enter v1
:try_start_3
iput p1, p0, Lcom/google/android/gms/common/internal/BaseSimpleClient;->mState:I
iput-object p2, p0, Lcom/google/android/gms/common/internal/BaseSimpleClient;->zzrj:Landroid/os/IInterface;
monitor-exit v1
return-void
:catchall_9
move-exception v0
monitor-exit v1
:try_end_b
.catchall {:try_start_3 .. :try_end_b} :catchall_9
throw v0
.end method