c.smali

.class final Landroid/support/v4/media/session/c;
.super Landroid/support/v4/media/b;
.source "MediaButtonReceiver.java"


# instance fields
.field private final mContext:Landroid/content/Context;

.field private final mIntent:Landroid/content/Intent;

.field private final qC:Landroid/content/BroadcastReceiver$PendingResult;

.field qD:Landroid/support/v4/media/MediaBrowserCompat;


# direct methods
.method constructor <init>(Landroid/content/Context;Landroid/content/Intent;Landroid/content/BroadcastReceiver$PendingResult;)V
    .registers 4

    .prologue
    .line 136
    invoke-direct {p0}, Landroid/support/v4/media/b;-><init>()V

    .line 137
    iput-object p1, p0, Landroid/support/v4/media/session/c;->mContext:Landroid/content/Context;

    .line 138
    iput-object p2, p0, Landroid/support/v4/media/session/c;->mIntent:Landroid/content/Intent;

    .line 139
    iput-object p3, p0, Landroid/support/v4/media/session/c;->qC:Landroid/content/BroadcastReceiver$PendingResult;

    .line 140
    return-void
.end method

.method private finish()V
    .registers 2

    .prologue
    .line 170
    iget-object v0, p0, Landroid/support/v4/media/session/c;->qD:Landroid/support/v4/media/MediaBrowserCompat;

    .line 3213
    iget-object v0, v0, Landroid/support/v4/media/MediaBrowserCompat;->pu:Landroid/support/v4/media/f;

    invoke-interface {v0}, Landroid/support/v4/media/f;->disconnect()V

    .line 171
    iget-object v0, p0, Landroid/support/v4/media/session/c;->qC:Landroid/content/BroadcastReceiver$PendingResult;

    invoke-virtual {v0}, Landroid/content/BroadcastReceiver$PendingResult;->finish()V

    .line 172
    return-void
.end method


# virtual methods
.method public final onConnected()V
    .registers 4

    .prologue
    .line 149
    :try_start_0
    new-instance v1, Landroid/support/v4/media/session/MediaControllerCompat;

    iget-object v0, p0, Landroid/support/v4/media/session/c;->mContext:Landroid/content/Context;

    iget-object v2, p0, Landroid/support/v4/media/session/c;->qD:Landroid/support/v4/media/MediaBrowserCompat;

    .line 1266
    iget-object v2, v2, Landroid/support/v4/media/MediaBrowserCompat;->pu:Landroid/support/v4/media/f;

    invoke-interface {v2}, Landroid/support/v4/media/f;->ba()Landroid/support/v4/media/session/MediaSessionCompat$Token;

    move-result-object v2

    .line 150
    invoke-direct {v1, v0, v2}, Landroid/support/v4/media/session/MediaControllerCompat;-><init>(Landroid/content/Context;Landroid/support/v4/media/session/MediaSessionCompat$Token;)V

    .line 151
    iget-object v0, p0, Landroid/support/v4/media/session/c;->mIntent:Landroid/content/Intent;

    const-string v2, "android.intent.extra.KEY_EVENT"

    invoke-virtual {v0, v2}, Landroid/content/Intent;->getParcelableExtra(Ljava/lang/String;)Landroid/os/Parcelable;

    move-result-object v0

    check-cast v0, Landroid/view/KeyEvent;

    .line 2264
    if-nez v0, :cond_28

    .line 2265
    new-instance v0, Ljava/lang/IllegalArgumentException;

    const-string v1, "KeyEvent may not be null"

    invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw v0
    :try_end_23
    .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_23} :catch_23

    :catch_23
    move-exception v0

    .line 156
    :goto_24
    invoke-direct {p0}, Landroid/support/v4/media/session/c;->finish()V

    .line 157
    return-void

    .line 2267
    :cond_28
    :try_start_28
    iget-object v1, v1, Landroid/support/v4/media/session/MediaControllerCompat;->qE:Landroid/support/v4/media/session/f;

    invoke-interface {v1, v0}, Landroid/support/v4/media/session/f;->dispatchMediaButtonEvent(Landroid/view/KeyEvent;)Z
    :try_end_2d
    .catch Landroid/os/RemoteException; {:try_start_28 .. :try_end_2d} :catch_23

    goto :goto_24
.end method

.method public final onConnectionFailed()V
    .registers 1

    .prologue
    .line 166
    invoke-direct {p0}, Landroid/support/v4/media/session/c;->finish()V

    .line 167
    return-void
.end method

.method public final onConnectionSuspended()V
    .registers 1

    .prologue
    .line 161
    invoke-direct {p0}, Landroid/support/v4/media/session/c;->finish()V

    .line 162
    return-void
.end method