.class Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21; .super Ljava/lang/Object; .source "MediaControllerCompat.java" # interfaces .implements Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; # annotations .annotation build Landroid/support/annotation/RequiresApi; .end annotation .annotation system Ldalvik/annotation/EnclosingClass; value = Landroid/support/v4/media/session/MediaControllerCompat; .end annotation .annotation system Ldalvik/annotation/InnerClass; accessFlags = 0x8 name = "MediaControllerImplApi21" .end annotation .annotation system Ldalvik/annotation/MemberClasses; value = { Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21$ExtraCallback;, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21$ExtraBinderRequestResultReceiver; } .end annotation # instance fields .field private mCallbackMap:Ljava/util/HashMap; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/HashMap<", "Landroid/support/v4/media/session/MediaControllerCompat$Callback;", "Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21$ExtraCallback;", ">;" } .end annotation .end field .field protected final mControllerObj:Ljava/lang/Object; .field private mExtraBinder:Landroid/support/v4/media/session/IMediaSession; .field private final mPendingCallbacks:Ljava/util/List; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/List<", "Landroid/support/v4/media/session/MediaControllerCompat$Callback;", ">;" } .end annotation .end field # direct methods .method public constructor (Landroid/content/Context;Landroid/support/v4/media/session/MediaSessionCompat$Token;)V .locals 1 .annotation system Ldalvik/annotation/Throws; value = { Landroid/os/RemoteException; } .end annotation .line 1897 invoke-direct {p0}, Ljava/lang/Object;->()V .line 1880 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V iput-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mPendingCallbacks:Ljava/util/List; .line 1885 new-instance v0, Ljava/util/HashMap; invoke-direct {v0}, Ljava/util/HashMap;->()V iput-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mCallbackMap:Ljava/util/HashMap; .line 1899 invoke-virtual {p2}, Landroid/support/v4/media/session/MediaSessionCompat$Token;->getToken()Ljava/lang/Object; move-result-object v0 .line 1898 invoke-static {p1, v0}, Landroid/support/v4/media/session/MediaControllerCompatApi21;->fromToken(Landroid/content/Context;Ljava/lang/Object;)Ljava/lang/Object; move-result-object p1 iput-object p1, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mControllerObj:Ljava/lang/Object; .line 1900 iget-object p1, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mControllerObj:Ljava/lang/Object; if-eqz p1, :cond_1 .line 1901 invoke-virtual {p2}, Landroid/support/v4/media/session/MediaSessionCompat$Token;->getExtraBinder()Landroid/support/v4/media/session/IMediaSession; move-result-object p1 iput-object p1, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mExtraBinder:Landroid/support/v4/media/session/IMediaSession; .line 1902 iget-object p1, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mExtraBinder:Landroid/support/v4/media/session/IMediaSession; if-nez p1, :cond_0 .line 1903 invoke-direct {p0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->requestExtraBinder()V :cond_0 return-void .line 1900 :cond_1 new-instance p1, Landroid/os/RemoteException; invoke-direct {p1}, Landroid/os/RemoteException;->()V throw p1 .end method .method public constructor (Landroid/content/Context;Landroid/support/v4/media/session/MediaSessionCompat;)V .locals 1 .line 1887 invoke-direct {p0}, Ljava/lang/Object;->()V .line 1880 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V iput-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mPendingCallbacks:Ljava/util/List; .line 1885 new-instance v0, Ljava/util/HashMap; invoke-direct {v0}, Ljava/util/HashMap;->()V iput-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mCallbackMap:Ljava/util/HashMap; .line 1889 invoke-virtual {p2}, Landroid/support/v4/media/session/MediaSessionCompat;->getSessionToken()Landroid/support/v4/media/session/MediaSessionCompat$Token; move-result-object v0 invoke-virtual {v0}, Landroid/support/v4/media/session/MediaSessionCompat$Token;->getToken()Ljava/lang/Object; move-result-object v0 .line 1888 invoke-static {p1, v0}, Landroid/support/v4/media/session/MediaControllerCompatApi21;->fromToken(Landroid/content/Context;Ljava/lang/Object;)Ljava/lang/Object; move-result-object p1 iput-object p1, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mControllerObj:Ljava/lang/Object; .line 1890 invoke-virtual {p2}, Landroid/support/v4/media/session/MediaSessionCompat;->getSessionToken()Landroid/support/v4/media/session/MediaSessionCompat$Token; move-result-object p1 invoke-virtual {p1}, Landroid/support/v4/media/session/MediaSessionCompat$Token;->getExtraBinder()Landroid/support/v4/media/session/IMediaSession; move-result-object p1 iput-object p1, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mExtraBinder:Landroid/support/v4/media/session/IMediaSession; .line 1891 iget-object p1, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mExtraBinder:Landroid/support/v4/media/session/IMediaSession; if-nez p1, :cond_0 .line 1892 invoke-direct {p0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->requestExtraBinder()V :cond_0 return-void .end method .method static synthetic access$202(Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;Landroid/support/v4/media/session/IMediaSession;)Landroid/support/v4/media/session/IMediaSession; .locals 0 .line 1877 iput-object p1, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mExtraBinder:Landroid/support/v4/media/session/IMediaSession; return-object p1 .end method .method static synthetic access$300(Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;)V .locals 0 .line 1877 invoke-direct {p0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->processPendingCallbacks()V return-void .end method .method private processPendingCallbacks()V .locals 5 .line 2136 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mExtraBinder:Landroid/support/v4/media/session/IMediaSession; if-nez v0, :cond_0 return-void .line 2139 :cond_0 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mPendingCallbacks:Ljava/util/List; monitor-enter v0 .line 2140 :try_start_0 iget-object v1, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mPendingCallbacks:Ljava/util/List; invoke-interface {v1}, Ljava/util/List;->iterator()Ljava/util/Iterator; move-result-object v1 :goto_0 invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z move-result v2 if-eqz v2, :cond_1 invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v2 check-cast v2, Landroid/support/v4/media/session/MediaControllerCompat$Callback; .line 2141 new-instance v3, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21$ExtraCallback; invoke-direct {v3, v2}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21$ExtraCallback;->(Landroid/support/v4/media/session/MediaControllerCompat$Callback;)V .line 2142 iget-object v4, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mCallbackMap:Ljava/util/HashMap; invoke-virtual {v4, v2, v3}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; const/4 v4, 0x1 .line 2143 iput-boolean v4, v2, Landroid/support/v4/media/session/MediaControllerCompat$Callback;->mHasExtraCallback:Z :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 .line 2145 :try_start_1 iget-object v4, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mExtraBinder:Landroid/support/v4/media/session/IMediaSession; invoke-interface {v4, v3}, Landroid/support/v4/media/session/IMediaSession;->registerCallbackListener(Landroid/support/v4/media/session/IMediaControllerCallback;)V :try_end_1 .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_1} :catch_0 .catchall {:try_start_1 .. :try_end_1} :catchall_0 .line 2150 :try_start_2 invoke-virtual {v2}, Landroid/support/v4/media/session/MediaControllerCompat$Callback;->onSessionReady()V goto :goto_0 :catch_0 move-exception v1 const-string v2, "MediaControllerCompat" const-string v3, "Dead object in registerCallback." .line 2147 invoke-static {v2, v3, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I .line 2152 :cond_1 iget-object v1, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mPendingCallbacks:Ljava/util/List; invoke-interface {v1}, Ljava/util/List;->clear()V .line 2153 monitor-exit v0 return-void :catchall_0 move-exception v1 monitor-exit v0 :try_end_2 .catchall {:try_start_2 .. :try_end_2} :catchall_0 throw v1 .end method .method private requestExtraBinder()V .locals 3 const-string v0, "android.support.v4.media.session.command.GET_EXTRA_BINDER" .line 2131 new-instance v1, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21$ExtraBinderRequestResultReceiver; new-instance v2, Landroid/os/Handler; invoke-direct {v2}, Landroid/os/Handler;->()V invoke-direct {v1, p0, v2}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21$ExtraBinderRequestResultReceiver;->(Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;Landroid/os/Handler;)V const/4 v2, 0x0 invoke-virtual {p0, v0, v2, v1}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->sendCommand(Ljava/lang/String;Landroid/os/Bundle;Landroid/os/ResultReceiver;)V return-void .end method # virtual methods .method public addQueueItem(Landroid/support/v4/media/MediaDescriptionCompat;)V .locals 5 .line 1986 invoke-virtual {p0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->getFlags()J move-result-wide v0 const-wide/16 v2, 0x4 and-long/2addr v0, v2 const-wide/16 v2, 0x0 cmp-long v4, v0, v2 if-eqz v4, :cond_0 .line 1991 new-instance v0, Landroid/os/Bundle; invoke-direct {v0}, Landroid/os/Bundle;->()V const-string v1, "android.support.v4.media.session.command.ARGUMENT_MEDIA_DESCRIPTION" .line 1992 invoke-virtual {v0, v1, p1}, Landroid/os/Bundle;->putParcelable(Ljava/lang/String;Landroid/os/Parcelable;)V const-string p1, "android.support.v4.media.session.command.ADD_QUEUE_ITEM" const/4 v1, 0x0 .line 1993 invoke-virtual {p0, p1, v0, v1}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->sendCommand(Ljava/lang/String;Landroid/os/Bundle;Landroid/os/ResultReceiver;)V return-void .line 1988 :cond_0 new-instance p1, Ljava/lang/UnsupportedOperationException; const-string v0, "This session doesn\'t support queue management operations" invoke-direct {p1, v0}, Ljava/lang/UnsupportedOperationException;->(Ljava/lang/String;)V throw p1 .end method .method public addQueueItem(Landroid/support/v4/media/MediaDescriptionCompat;I)V .locals 5 .line 1998 invoke-virtual {p0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->getFlags()J move-result-wide v0 const-wide/16 v2, 0x4 and-long/2addr v0, v2 const-wide/16 v2, 0x0 cmp-long v4, v0, v2 if-eqz v4, :cond_0 .line 2003 new-instance v0, Landroid/os/Bundle; invoke-direct {v0}, Landroid/os/Bundle;->()V const-string v1, "android.support.v4.media.session.command.ARGUMENT_MEDIA_DESCRIPTION" .line 2004 invoke-virtual {v0, v1, p1}, Landroid/os/Bundle;->putParcelable(Ljava/lang/String;Landroid/os/Parcelable;)V const-string p1, "android.support.v4.media.session.command.ARGUMENT_INDEX" .line 2005 invoke-virtual {v0, p1, p2}, Landroid/os/Bundle;->putInt(Ljava/lang/String;I)V const-string p1, "android.support.v4.media.session.command.ADD_QUEUE_ITEM_AT" const/4 p2, 0x0 .line 2006 invoke-virtual {p0, p1, v0, p2}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->sendCommand(Ljava/lang/String;Landroid/os/Bundle;Landroid/os/ResultReceiver;)V return-void .line 2000 :cond_0 new-instance p1, Ljava/lang/UnsupportedOperationException; const-string p2, "This session doesn\'t support queue management operations" invoke-direct {p1, p2}, Ljava/lang/UnsupportedOperationException;->(Ljava/lang/String;)V throw p1 .end method .method public adjustVolume(II)V .locals 1 .line 2107 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mControllerObj:Ljava/lang/Object; invoke-static {v0, p1, p2}, Landroid/support/v4/media/session/MediaControllerCompatApi21;->adjustVolume(Ljava/lang/Object;II)V return-void .end method .method public dispatchMediaButtonEvent(Landroid/view/KeyEvent;)Z .locals 1 .line 1950 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mControllerObj:Ljava/lang/Object; invoke-static {v0, p1}, Landroid/support/v4/media/session/MediaControllerCompatApi21;->dispatchMediaButtonEvent(Ljava/lang/Object;Landroid/view/KeyEvent;)Z move-result p1 return p1 .end method .method public getExtras()Landroid/os/Bundle; .locals 1 .line 2028 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mControllerObj:Ljava/lang/Object; invoke-static {v0}, Landroid/support/v4/media/session/MediaControllerCompatApi21;->getExtras(Ljava/lang/Object;)Landroid/os/Bundle; move-result-object v0 return-object v0 .end method .method public getFlags()J .locals 2 .line 2081 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mControllerObj:Ljava/lang/Object; invoke-static {v0}, Landroid/support/v4/media/session/MediaControllerCompatApi21;->getFlags(Ljava/lang/Object;)J move-result-wide v0 return-wide v0 .end method .method public getMediaController()Ljava/lang/Object; .locals 1 .line 2127 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mControllerObj:Ljava/lang/Object; return-object v0 .end method .method public getMetadata()Landroid/support/v4/media/MediaMetadataCompat; .locals 1 .line 1974 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mControllerObj:Ljava/lang/Object; invoke-static {v0}, Landroid/support/v4/media/session/MediaControllerCompatApi21;->getMetadata(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 if-eqz v0, :cond_0 .line 1975 invoke-static {v0}, Landroid/support/v4/media/MediaMetadataCompat;->fromMediaMetadata(Ljava/lang/Object;)Landroid/support/v4/media/MediaMetadataCompat; move-result-object v0 goto :goto_0 :cond_0 const/4 v0, 0x0 :goto_0 return-object v0 .end method .method public getPackageName()Ljava/lang/String; .locals 1 .line 2122 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mControllerObj:Ljava/lang/Object; invoke-static {v0}, Landroid/support/v4/media/session/MediaControllerCompatApi21;->getPackageName(Ljava/lang/Object;)Ljava/lang/String; move-result-object v0 return-object v0 .end method .method public getPlaybackInfo()Landroid/support/v4/media/session/MediaControllerCompat$PlaybackInfo; .locals 8 .line 2086 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mControllerObj:Ljava/lang/Object; invoke-static {v0}, Landroid/support/v4/media/session/MediaControllerCompatApi21;->getPlaybackInfo(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 if-eqz v0, :cond_0 .line 2087 new-instance v7, Landroid/support/v4/media/session/MediaControllerCompat$PlaybackInfo; .line 2088 invoke-static {v0}, Landroid/support/v4/media/session/MediaControllerCompatApi21$PlaybackInfo;->getPlaybackType(Ljava/lang/Object;)I move-result v2 .line 2089 invoke-static {v0}, Landroid/support/v4/media/session/MediaControllerCompatApi21$PlaybackInfo;->getLegacyAudioStream(Ljava/lang/Object;)I move-result v3 .line 2090 invoke-static {v0}, Landroid/support/v4/media/session/MediaControllerCompatApi21$PlaybackInfo;->getVolumeControl(Ljava/lang/Object;)I move-result v4 .line 2091 invoke-static {v0}, Landroid/support/v4/media/session/MediaControllerCompatApi21$PlaybackInfo;->getMaxVolume(Ljava/lang/Object;)I move-result v5 .line 2092 invoke-static {v0}, Landroid/support/v4/media/session/MediaControllerCompatApi21$PlaybackInfo;->getCurrentVolume(Ljava/lang/Object;)I move-result v6 move-object v1, v7 invoke-direct/range {v1 .. v6}, Landroid/support/v4/media/session/MediaControllerCompat$PlaybackInfo;->(IIIII)V goto :goto_0 :cond_0 const/4 v7, 0x0 :goto_0 return-object v7 .end method .method public getPlaybackState()Landroid/support/v4/media/session/PlaybackStateCompat; .locals 3 .line 1961 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mExtraBinder:Landroid/support/v4/media/session/IMediaSession; if-eqz v0, :cond_0 .line 1963 :try_start_0 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mExtraBinder:Landroid/support/v4/media/session/IMediaSession; invoke-interface {v0}, Landroid/support/v4/media/session/IMediaSession;->getPlaybackState()Landroid/support/v4/media/session/PlaybackStateCompat; move-result-object v0 :try_end_0 .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0 return-object v0 :catch_0 move-exception v0 const-string v1, "MediaControllerCompat" const-string v2, "Dead object in getPlaybackState." .line 1965 invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I .line 1968 :cond_0 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mControllerObj:Ljava/lang/Object; invoke-static {v0}, Landroid/support/v4/media/session/MediaControllerCompatApi21;->getPlaybackState(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 if-eqz v0, :cond_1 .line 1969 invoke-static {v0}, Landroid/support/v4/media/session/PlaybackStateCompat;->fromPlaybackState(Ljava/lang/Object;)Landroid/support/v4/media/session/PlaybackStateCompat; move-result-object v0 goto :goto_0 :cond_1 const/4 v0, 0x0 :goto_0 return-object v0 .end method .method public getQueue()Ljava/util/List; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "()", "Ljava/util/List<", "Landroid/support/v4/media/session/MediaSessionCompat$QueueItem;", ">;" } .end annotation .line 1980 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mControllerObj:Ljava/lang/Object; invoke-static {v0}, Landroid/support/v4/media/session/MediaControllerCompatApi21;->getQueue(Ljava/lang/Object;)Ljava/util/List; move-result-object v0 if-eqz v0, :cond_0 .line 1981 invoke-static {v0}, Landroid/support/v4/media/session/MediaSessionCompat$QueueItem;->fromQueueItemList(Ljava/util/List;)Ljava/util/List; move-result-object v0 goto :goto_0 :cond_0 const/4 v0, 0x0 :goto_0 return-object v0 .end method .method public getQueueTitle()Ljava/lang/CharSequence; .locals 1 .line 2023 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mControllerObj:Ljava/lang/Object; invoke-static {v0}, Landroid/support/v4/media/session/MediaControllerCompatApi21;->getQueueTitle(Ljava/lang/Object;)Ljava/lang/CharSequence; move-result-object v0 return-object v0 .end method .method public getRatingType()I .locals 3 .line 2033 sget v0, Landroid/os/Build$VERSION;->SDK_INT:I const/16 v1, 0x16 if-ge v0, v1, :cond_0 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mExtraBinder:Landroid/support/v4/media/session/IMediaSession; if-eqz v0, :cond_0 .line 2035 :try_start_0 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mExtraBinder:Landroid/support/v4/media/session/IMediaSession; invoke-interface {v0}, Landroid/support/v4/media/session/IMediaSession;->getRatingType()I move-result v0 :try_end_0 .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0 return v0 :catch_0 move-exception v0 const-string v1, "MediaControllerCompat" const-string v2, "Dead object in getRatingType." .line 2037 invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I .line 2040 :cond_0 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mControllerObj:Ljava/lang/Object; invoke-static {v0}, Landroid/support/v4/media/session/MediaControllerCompatApi21;->getRatingType(Ljava/lang/Object;)I move-result v0 return v0 .end method .method public getRepeatMode()I .locals 3 .line 2057 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mExtraBinder:Landroid/support/v4/media/session/IMediaSession; if-eqz v0, :cond_0 .line 2059 :try_start_0 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mExtraBinder:Landroid/support/v4/media/session/IMediaSession; invoke-interface {v0}, Landroid/support/v4/media/session/IMediaSession;->getRepeatMode()I move-result v0 :try_end_0 .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0 return v0 :catch_0 move-exception v0 const-string v1, "MediaControllerCompat" const-string v2, "Dead object in getRepeatMode." .line 2061 invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I :cond_0 const/4 v0, -0x1 return v0 .end method .method public getSessionActivity()Landroid/app/PendingIntent; .locals 1 .line 2097 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mControllerObj:Ljava/lang/Object; invoke-static {v0}, Landroid/support/v4/media/session/MediaControllerCompatApi21;->getSessionActivity(Ljava/lang/Object;)Landroid/app/PendingIntent; move-result-object v0 return-object v0 .end method .method public getShuffleMode()I .locals 3 .line 2069 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mExtraBinder:Landroid/support/v4/media/session/IMediaSession; if-eqz v0, :cond_0 .line 2071 :try_start_0 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mExtraBinder:Landroid/support/v4/media/session/IMediaSession; invoke-interface {v0}, Landroid/support/v4/media/session/IMediaSession;->getShuffleMode()I move-result v0 :try_end_0 .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0 return v0 :catch_0 move-exception v0 const-string v1, "MediaControllerCompat" const-string v2, "Dead object in getShuffleMode." .line 2073 invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I :cond_0 const/4 v0, -0x1 return v0 .end method .method public getTransportControls()Landroid/support/v4/media/session/MediaControllerCompat$TransportControls; .locals 2 .line 1955 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mControllerObj:Ljava/lang/Object; invoke-static {v0}, Landroid/support/v4/media/session/MediaControllerCompatApi21;->getTransportControls(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 if-eqz v0, :cond_0 .line 1956 new-instance v1, Landroid/support/v4/media/session/MediaControllerCompat$TransportControlsApi21; invoke-direct {v1, v0}, Landroid/support/v4/media/session/MediaControllerCompat$TransportControlsApi21;->(Ljava/lang/Object;)V goto :goto_0 :cond_0 const/4 v1, 0x0 :goto_0 return-object v1 .end method .method public isCaptioningEnabled()Z .locals 3 .line 2045 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mExtraBinder:Landroid/support/v4/media/session/IMediaSession; if-eqz v0, :cond_0 .line 2047 :try_start_0 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mExtraBinder:Landroid/support/v4/media/session/IMediaSession; invoke-interface {v0}, Landroid/support/v4/media/session/IMediaSession;->isCaptioningEnabled()Z move-result v0 :try_end_0 .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0 return v0 :catch_0 move-exception v0 const-string v1, "MediaControllerCompat" const-string v2, "Dead object in isCaptioningEnabled." .line 2049 invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I :cond_0 const/4 v0, 0x0 return v0 .end method .method public isSessionReady()Z .locals 1 .line 2117 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mExtraBinder:Landroid/support/v4/media/session/IMediaSession; if-eqz v0, :cond_0 const/4 v0, 0x1 goto :goto_0 :cond_0 const/4 v0, 0x0 :goto_0 return v0 .end method .method public final registerCallback(Landroid/support/v4/media/session/MediaControllerCompat$Callback;Landroid/os/Handler;)V .locals 2 .line 1909 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mControllerObj:Ljava/lang/Object; .line 1910 invoke-static {p1}, Landroid/support/v4/media/session/MediaControllerCompat$Callback;->access$000(Landroid/support/v4/media/session/MediaControllerCompat$Callback;)Ljava/lang/Object; move-result-object v1 .line 1909 invoke-static {v0, v1, p2}, Landroid/support/v4/media/session/MediaControllerCompatApi21;->registerCallback(Ljava/lang/Object;Ljava/lang/Object;Landroid/os/Handler;)V .line 1911 iget-object p2, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mExtraBinder:Landroid/support/v4/media/session/IMediaSession; if-eqz p2, :cond_0 .line 1912 new-instance p2, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21$ExtraCallback; invoke-direct {p2, p1}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21$ExtraCallback;->(Landroid/support/v4/media/session/MediaControllerCompat$Callback;)V .line 1913 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mCallbackMap:Ljava/util/HashMap; invoke-virtual {v0, p1, p2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; const/4 v0, 0x1 .line 1914 iput-boolean v0, p1, Landroid/support/v4/media/session/MediaControllerCompat$Callback;->mHasExtraCallback:Z .line 1916 :try_start_0 iget-object p1, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mExtraBinder:Landroid/support/v4/media/session/IMediaSession; invoke-interface {p1, p2}, Landroid/support/v4/media/session/IMediaSession;->registerCallbackListener(Landroid/support/v4/media/session/IMediaControllerCallback;)V :try_end_0 .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0 goto :goto_0 :catch_0 move-exception p1 const-string p2, "MediaControllerCompat" const-string v0, "Dead object in registerCallback." .line 1918 invoke-static {p2, v0, p1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I goto :goto_0 .line 1921 :cond_0 iget-object p2, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mPendingCallbacks:Ljava/util/List; monitor-enter p2 const/4 v0, 0x0 .line 1922 :try_start_1 iput-boolean v0, p1, Landroid/support/v4/media/session/MediaControllerCompat$Callback;->mHasExtraCallback:Z .line 1923 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mPendingCallbacks:Ljava/util/List; invoke-interface {v0, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z .line 1924 monitor-exit p2 :goto_0 return-void :catchall_0 move-exception p1 monitor-exit p2 :try_end_1 .catchall {:try_start_1 .. :try_end_1} :catchall_0 throw p1 .end method .method public removeQueueItem(Landroid/support/v4/media/MediaDescriptionCompat;)V .locals 5 .line 2011 invoke-virtual {p0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->getFlags()J move-result-wide v0 const-wide/16 v2, 0x4 and-long/2addr v0, v2 const-wide/16 v2, 0x0 cmp-long v4, v0, v2 if-eqz v4, :cond_0 .line 2016 new-instance v0, Landroid/os/Bundle; invoke-direct {v0}, Landroid/os/Bundle;->()V const-string v1, "android.support.v4.media.session.command.ARGUMENT_MEDIA_DESCRIPTION" .line 2017 invoke-virtual {v0, v1, p1}, Landroid/os/Bundle;->putParcelable(Ljava/lang/String;Landroid/os/Parcelable;)V const-string p1, "android.support.v4.media.session.command.REMOVE_QUEUE_ITEM" const/4 v1, 0x0 .line 2018 invoke-virtual {p0, p1, v0, v1}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->sendCommand(Ljava/lang/String;Landroid/os/Bundle;Landroid/os/ResultReceiver;)V return-void .line 2013 :cond_0 new-instance p1, Ljava/lang/UnsupportedOperationException; const-string v0, "This session doesn\'t support queue management operations" invoke-direct {p1, v0}, Ljava/lang/UnsupportedOperationException;->(Ljava/lang/String;)V throw p1 .end method .method public sendCommand(Ljava/lang/String;Landroid/os/Bundle;Landroid/os/ResultReceiver;)V .locals 1 .line 2112 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mControllerObj:Ljava/lang/Object; invoke-static {v0, p1, p2, p3}, Landroid/support/v4/media/session/MediaControllerCompatApi21;->sendCommand(Ljava/lang/Object;Ljava/lang/String;Landroid/os/Bundle;Landroid/os/ResultReceiver;)V return-void .end method .method public setVolumeTo(II)V .locals 1 .line 2102 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mControllerObj:Ljava/lang/Object; invoke-static {v0, p1, p2}, Landroid/support/v4/media/session/MediaControllerCompatApi21;->setVolumeTo(Ljava/lang/Object;II)V return-void .end method .method public final unregisterCallback(Landroid/support/v4/media/session/MediaControllerCompat$Callback;)V .locals 2 .line 1930 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mControllerObj:Ljava/lang/Object; invoke-static {p1}, Landroid/support/v4/media/session/MediaControllerCompat$Callback;->access$000(Landroid/support/v4/media/session/MediaControllerCompat$Callback;)Ljava/lang/Object; move-result-object v1 invoke-static {v0, v1}, Landroid/support/v4/media/session/MediaControllerCompatApi21;->unregisterCallback(Ljava/lang/Object;Ljava/lang/Object;)V .line 1931 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mExtraBinder:Landroid/support/v4/media/session/IMediaSession; if-eqz v0, :cond_0 .line 1933 :try_start_0 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mCallbackMap:Ljava/util/HashMap; invoke-virtual {v0, p1}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21$ExtraCallback; if-eqz v0, :cond_1 const/4 v1, 0x0 .line 1935 iput-boolean v1, p1, Landroid/support/v4/media/session/MediaControllerCompat$Callback;->mHasExtraCallback:Z .line 1936 iget-object p1, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mExtraBinder:Landroid/support/v4/media/session/IMediaSession; invoke-interface {p1, v0}, Landroid/support/v4/media/session/IMediaSession;->unregisterCallbackListener(Landroid/support/v4/media/session/IMediaControllerCallback;)V :try_end_0 .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0 goto :goto_0 :catch_0 move-exception p1 const-string v0, "MediaControllerCompat" const-string v1, "Dead object in unregisterCallback." .line 1939 invoke-static {v0, v1, p1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I goto :goto_0 .line 1942 :cond_0 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mPendingCallbacks:Ljava/util/List; monitor-enter v0 .line 1943 :try_start_1 iget-object v1, p0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->mPendingCallbacks:Ljava/util/List; invoke-interface {v1, p1}, Ljava/util/List;->remove(Ljava/lang/Object;)Z .line 1944 monitor-exit v0 :cond_1 :goto_0 return-void :catchall_0 move-exception p1 monitor-exit v0 :try_end_1 .catchall {:try_start_1 .. :try_end_1} :catchall_0 throw p1 .end method