.class public Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21; .super Ljava/lang/Object; .source "MediaControllerCompat.java" # interfaces .implements Landroid/support/v4/media/session/MediaControllerCompat$b; # annotations .annotation build Landroidx/annotation/RequiresApi; value = 0x15 .end annotation .annotation system Ldalvik/annotation/EnclosingClass; value = Landroid/support/v4/media/session/MediaControllerCompat; .end annotation .annotation system Ldalvik/annotation/InnerClass; accessFlags = 0x9 name = "MediaControllerImplApi21" .end annotation .annotation system Ldalvik/annotation/MemberClasses; value = { Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21$a;, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21$ExtraBinderRequestResultReceiver; } .end annotation # instance fields .field public final a:Ljava/lang/Object; .field public final b:Ljava/lang/Object; .field public final c:Ljava/util/List; .annotation build Landroidx/annotation/GuardedBy; value = "mLock" .end annotation .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/List<", "Landroid/support/v4/media/session/MediaControllerCompat$a;", ">;" } .end annotation .end field .field public d:Ljava/util/HashMap; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/HashMap<", "Landroid/support/v4/media/session/MediaControllerCompat$a;", "Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21$a;", ">;" } .end annotation .end field .field public final e:Landroid/support/v4/media/session/MediaSessionCompat$Token; # direct methods .method public constructor (Landroid/content/Context;Landroid/support/v4/media/session/MediaSessionCompat$Token;)V .locals 2 .annotation system Ldalvik/annotation/Throws; value = { Landroid/os/RemoteException; } .end annotation invoke-direct {p0}, Ljava/lang/Object;->()V new-instance v0, Ljava/lang/Object; invoke-direct {v0}, Ljava/lang/Object;->()V iput-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->b:Ljava/lang/Object; new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V iput-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->c:Ljava/util/List; new-instance v0, Ljava/util/HashMap; invoke-direct {v0}, Ljava/util/HashMap;->()V iput-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->d:Ljava/util/HashMap; iput-object p2, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->e:Landroid/support/v4/media/session/MediaSessionCompat$Token; iget-object p2, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->e:Landroid/support/v4/media/session/MediaSessionCompat$Token; invoke-virtual {p2}, Landroid/support/v4/media/session/MediaSessionCompat$Token;->o()Ljava/lang/Object; move-result-object p2 new-instance v0, Landroid/media/session/MediaController; check-cast p2, Landroid/media/session/MediaSession$Token; invoke-direct {v0, p1, p2}, Landroid/media/session/MediaController;->(Landroid/content/Context;Landroid/media/session/MediaSession$Token;)V iput-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->a:Ljava/lang/Object; iget-object p1, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->a:Ljava/lang/Object; if-eqz p1, :cond_1 iget-object p1, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->e:Landroid/support/v4/media/session/MediaSessionCompat$Token; invoke-virtual {p1}, Landroid/support/v4/media/session/MediaSessionCompat$Token;->n()Lp/a/b/b/g/b; move-result-object p1 if-nez p1, :cond_0 new-instance p1, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21$ExtraBinderRequestResultReceiver; invoke-direct {p1, p0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21$ExtraBinderRequestResultReceiver;->(Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;)V iget-object p2, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->a:Ljava/lang/Object; check-cast p2, Landroid/media/session/MediaController; const/4 v0, 0x0 const-string v1, "android.support.v4.media.session.command.GET_EXTRA_BINDER" invoke-virtual {p2, v1, v0, p1}, Landroid/media/session/MediaController;->sendCommand(Ljava/lang/String;Landroid/os/Bundle;Landroid/os/ResultReceiver;)V :cond_0 return-void :cond_1 new-instance p1, Landroid/os/RemoteException; invoke-direct {p1}, Landroid/os/RemoteException;->()V throw p1 .end method # virtual methods .method public a()V .locals 4 .annotation build Landroidx/annotation/GuardedBy; value = "mLock" .end annotation iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->e:Landroid/support/v4/media/session/MediaSessionCompat$Token; invoke-virtual {v0}, Landroid/support/v4/media/session/MediaSessionCompat$Token;->n()Lp/a/b/b/g/b; move-result-object v0 if-nez v0, :cond_0 return-void :cond_0 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->c:Ljava/util/List; invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator; move-result-object v0 :goto_0 invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z move-result v1 if-eqz v1, :cond_1 invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v1 check-cast v1, Landroid/support/v4/media/session/MediaControllerCompat$a; new-instance v2, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21$a; invoke-direct {v2, v1}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21$a;->(Landroid/support/v4/media/session/MediaControllerCompat$a;)V iget-object v3, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->d:Ljava/util/HashMap; invoke-virtual {v3, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; iput-object v2, v1, Landroid/support/v4/media/session/MediaControllerCompat$a;->a:Lp/a/b/b/g/a; :try_start_0 iget-object v3, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->e:Landroid/support/v4/media/session/MediaSessionCompat$Token; invoke-virtual {v3}, Landroid/support/v4/media/session/MediaSessionCompat$Token;->n()Lp/a/b/b/g/b; move-result-object v3 :try_end_0 .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0 check-cast v3, Lp/a/b/b/g/b$a$a; :try_start_1 invoke-virtual {v3, v2}, Lp/a/b/b/g/b$a$a;->a(Lp/a/b/b/g/a;)V :try_end_1 .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_1} :catch_0 const/16 v2, 0xd const/4 v3, 0x0 invoke-virtual {v1, v2, v3, v3}, Landroid/support/v4/media/session/MediaControllerCompat$a;->a(ILjava/lang/Object;Landroid/os/Bundle;)V goto :goto_0 :catch_0 move-exception v0 const-string v1, "MediaControllerCompat" const-string v2, "Dead object in registerCallback." invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I :cond_1 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->c:Ljava/util/List; invoke-interface {v0}, Ljava/util/List;->clear()V return-void .end method