public abstract class android.media.MediaPlaylistAgent
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: android.media.MediaPlaylistAgent
  super_class: java.lang.Object
{
  public static final int REPEAT_MODE_NONE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final int REPEAT_MODE_ONE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int REPEAT_MODE_ALL;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final int REPEAT_MODE_GROUP;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  public static final int SHUFFLE_MODE_NONE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final int SHUFFLE_MODE_ALL;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int SHUFFLE_MODE_GROUP;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private final android.media.update.MediaPlaylistAgentProvider mProvider;
    descriptor: Landroid/media/update/MediaPlaylistAgentProvider;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // android.media.MediaPlaylistAgent this
         0: .line 150
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 151
            aload 0 /* this */
            invokestatic android.media.update.ApiLoader.getProvider:()Landroid/media/update/StaticProvider;
            aload 0 /* this */
            invokeinterface android.media.update.StaticProvider.createMediaPlaylistAgent:(Landroid/media/MediaPlaylistAgent;)Landroid/media/update/MediaPlaylistAgentProvider;
            putfield android.media.MediaPlaylistAgent.mProvider:Landroid/media/update/MediaPlaylistAgentProvider;
         2: .line 152
            return
        end local 0 // android.media.MediaPlaylistAgent this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Landroid/media/MediaPlaylistAgent;

  public final void registerPlaylistEventCallback(java.util.concurrent.Executor, android.media.MediaPlaylistAgent$PlaylistEventCallback);
    descriptor: (Ljava/util/concurrent/Executor;Landroid/media/MediaPlaylistAgent$PlaylistEventCallback;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // android.media.MediaPlaylistAgent this
        start local 1 // java.util.concurrent.Executor executor
        start local 2 // android.media.MediaPlaylistAgent$PlaylistEventCallback callback
         0: .line 164
            aload 0 /* this */
            getfield android.media.MediaPlaylistAgent.mProvider:Landroid/media/update/MediaPlaylistAgentProvider;
            aload 1 /* executor */
            aload 2 /* callback */
            invokeinterface android.media.update.MediaPlaylistAgentProvider.registerPlaylistEventCallback_impl:(Ljava/util/concurrent/Executor;Landroid/media/MediaPlaylistAgent$PlaylistEventCallback;)V
         1: .line 165
            return
        end local 2 // android.media.MediaPlaylistAgent$PlaylistEventCallback callback
        end local 1 // java.util.concurrent.Executor executor
        end local 0 // android.media.MediaPlaylistAgent this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Landroid/media/MediaPlaylistAgent;
            0    2     1  executor  Ljava/util/concurrent/Executor;
            0    2     2  callback  Landroid/media/MediaPlaylistAgent$PlaylistEventCallback;
    MethodParameters:
          Name  Flags
      executor  
      callback  

  public final void unregisterPlaylistEventCallback(android.media.MediaPlaylistAgent$PlaylistEventCallback);
    descriptor: (Landroid/media/MediaPlaylistAgent$PlaylistEventCallback;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.media.MediaPlaylistAgent this
        start local 1 // android.media.MediaPlaylistAgent$PlaylistEventCallback callback
         0: .line 174
            aload 0 /* this */
            getfield android.media.MediaPlaylistAgent.mProvider:Landroid/media/update/MediaPlaylistAgentProvider;
            aload 1 /* callback */
            invokeinterface android.media.update.MediaPlaylistAgentProvider.unregisterPlaylistEventCallback_impl:(Landroid/media/MediaPlaylistAgent$PlaylistEventCallback;)V
         1: .line 175
            return
        end local 1 // android.media.MediaPlaylistAgent$PlaylistEventCallback callback
        end local 0 // android.media.MediaPlaylistAgent this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Landroid/media/MediaPlaylistAgent;
            0    2     1  callback  Landroid/media/MediaPlaylistAgent$PlaylistEventCallback;
    MethodParameters:
          Name  Flags
      callback  

  public final void notifyPlaylistChanged();
    descriptor: ()V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.media.MediaPlaylistAgent this
         0: .line 178
            aload 0 /* this */
            getfield android.media.MediaPlaylistAgent.mProvider:Landroid/media/update/MediaPlaylistAgentProvider;
            invokeinterface android.media.update.MediaPlaylistAgentProvider.notifyPlaylistChanged_impl:()V
         1: .line 179
            return
        end local 0 // android.media.MediaPlaylistAgent this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Landroid/media/MediaPlaylistAgent;

  public final void notifyPlaylistMetadataChanged();
    descriptor: ()V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.media.MediaPlaylistAgent this
         0: .line 182
            aload 0 /* this */
            getfield android.media.MediaPlaylistAgent.mProvider:Landroid/media/update/MediaPlaylistAgentProvider;
            invokeinterface android.media.update.MediaPlaylistAgentProvider.notifyPlaylistMetadataChanged_impl:()V
         1: .line 183
            return
        end local 0 // android.media.MediaPlaylistAgent this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Landroid/media/MediaPlaylistAgent;

  public final void notifyShuffleModeChanged();
    descriptor: ()V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.media.MediaPlaylistAgent this
         0: .line 186
            aload 0 /* this */
            getfield android.media.MediaPlaylistAgent.mProvider:Landroid/media/update/MediaPlaylistAgentProvider;
            invokeinterface android.media.update.MediaPlaylistAgentProvider.notifyShuffleModeChanged_impl:()V
         1: .line 187
            return
        end local 0 // android.media.MediaPlaylistAgent this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Landroid/media/MediaPlaylistAgent;

  public final void notifyRepeatModeChanged();
    descriptor: ()V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.media.MediaPlaylistAgent this
         0: .line 190
            aload 0 /* this */
            getfield android.media.MediaPlaylistAgent.mProvider:Landroid/media/update/MediaPlaylistAgentProvider;
            invokeinterface android.media.update.MediaPlaylistAgentProvider.notifyRepeatModeChanged_impl:()V
         1: .line 191
            return
        end local 0 // android.media.MediaPlaylistAgent this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Landroid/media/MediaPlaylistAgent;

  public java.util.List<android.media.MediaItem2> getPlaylist();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.media.MediaPlaylistAgent this
         0: .line 199
            aload 0 /* this */
            getfield android.media.MediaPlaylistAgent.mProvider:Landroid/media/update/MediaPlaylistAgentProvider;
            invokeinterface android.media.update.MediaPlaylistAgentProvider.getPlaylist_impl:()Ljava/util/List;
            areturn
        end local 0 // android.media.MediaPlaylistAgent this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/media/MediaPlaylistAgent;
    Signature: ()Ljava/util/List<Landroid/media/MediaItem2;>;

  public void setPlaylist(java.util.List<android.media.MediaItem2>, android.media.MediaMetadata2);
    descriptor: (Ljava/util/List;Landroid/media/MediaMetadata2;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // android.media.MediaPlaylistAgent this
        start local 1 // java.util.List list
        start local 2 // android.media.MediaMetadata2 metadata
         0: .line 209
            aload 0 /* this */
            getfield android.media.MediaPlaylistAgent.mProvider:Landroid/media/update/MediaPlaylistAgentProvider;
            aload 1 /* list */
            aload 2 /* metadata */
            invokeinterface android.media.update.MediaPlaylistAgentProvider.setPlaylist_impl:(Ljava/util/List;Landroid/media/MediaMetadata2;)V
         1: .line 210
            return
        end local 2 // android.media.MediaMetadata2 metadata
        end local 1 // java.util.List list
        end local 0 // android.media.MediaPlaylistAgent this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Landroid/media/MediaPlaylistAgent;
            0    2     1      list  Ljava/util/List<Landroid/media/MediaItem2;>;
            0    2     2  metadata  Landroid/media/MediaMetadata2;
    Signature: (Ljava/util/List<Landroid/media/MediaItem2;>;Landroid/media/MediaMetadata2;)V
    MethodParameters:
          Name  Flags
      list      
      metadata  

  public android.media.MediaMetadata2 getPlaylistMetadata();
    descriptor: ()Landroid/media/MediaMetadata2;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.media.MediaPlaylistAgent this
         0: .line 218
            aload 0 /* this */
            getfield android.media.MediaPlaylistAgent.mProvider:Landroid/media/update/MediaPlaylistAgentProvider;
            invokeinterface android.media.update.MediaPlaylistAgentProvider.getPlaylistMetadata_impl:()Landroid/media/MediaMetadata2;
            areturn
        end local 0 // android.media.MediaPlaylistAgent this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/media/MediaPlaylistAgent;

  public void updatePlaylistMetadata(android.media.MediaMetadata2);
    descriptor: (Landroid/media/MediaMetadata2;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.media.MediaPlaylistAgent this
        start local 1 // android.media.MediaMetadata2 metadata
         0: .line 227
            aload 0 /* this */
            getfield android.media.MediaPlaylistAgent.mProvider:Landroid/media/update/MediaPlaylistAgentProvider;
            aload 1 /* metadata */
            invokeinterface android.media.update.MediaPlaylistAgentProvider.updatePlaylistMetadata_impl:(Landroid/media/MediaMetadata2;)V
         1: .line 228
            return
        end local 1 // android.media.MediaMetadata2 metadata
        end local 0 // android.media.MediaPlaylistAgent this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Landroid/media/MediaPlaylistAgent;
            0    2     1  metadata  Landroid/media/MediaMetadata2;
    MethodParameters:
          Name  Flags
      metadata  

  public void addPlaylistItem(int, android.media.MediaItem2);
    descriptor: (ILandroid/media/MediaItem2;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // android.media.MediaPlaylistAgent this
        start local 1 // int index
        start local 2 // android.media.MediaItem2 item
         0: .line 242
            aload 0 /* this */
            getfield android.media.MediaPlaylistAgent.mProvider:Landroid/media/update/MediaPlaylistAgentProvider;
            iload 1 /* index */
            aload 2 /* item */
            invokeinterface android.media.update.MediaPlaylistAgentProvider.addPlaylistItem_impl:(ILandroid/media/MediaItem2;)V
         1: .line 243
            return
        end local 2 // android.media.MediaItem2 item
        end local 1 // int index
        end local 0 // android.media.MediaPlaylistAgent this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Landroid/media/MediaPlaylistAgent;
            0    2     1  index  I
            0    2     2   item  Landroid/media/MediaItem2;
    MethodParameters:
       Name  Flags
      index  
      item   

  public void removePlaylistItem(android.media.MediaItem2);
    descriptor: (Landroid/media/MediaItem2;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.media.MediaPlaylistAgent this
        start local 1 // android.media.MediaItem2 item
         0: .line 251
            aload 0 /* this */
            getfield android.media.MediaPlaylistAgent.mProvider:Landroid/media/update/MediaPlaylistAgentProvider;
            aload 1 /* item */
            invokeinterface android.media.update.MediaPlaylistAgentProvider.removePlaylistItem_impl:(Landroid/media/MediaItem2;)V
         1: .line 252
            return
        end local 1 // android.media.MediaItem2 item
        end local 0 // android.media.MediaPlaylistAgent this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Landroid/media/MediaPlaylistAgent;
            0    2     1  item  Landroid/media/MediaItem2;
    MethodParameters:
      Name  Flags
      item  

  public void replacePlaylistItem(int, android.media.MediaItem2);
    descriptor: (ILandroid/media/MediaItem2;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // android.media.MediaPlaylistAgent this
        start local 1 // int index
        start local 2 // android.media.MediaItem2 item
         0: .line 262
            aload 0 /* this */
            getfield android.media.MediaPlaylistAgent.mProvider:Landroid/media/update/MediaPlaylistAgentProvider;
            iload 1 /* index */
            aload 2 /* item */
            invokeinterface android.media.update.MediaPlaylistAgentProvider.replacePlaylistItem_impl:(ILandroid/media/MediaItem2;)V
         1: .line 263
            return
        end local 2 // android.media.MediaItem2 item
        end local 1 // int index
        end local 0 // android.media.MediaPlaylistAgent this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Landroid/media/MediaPlaylistAgent;
            0    2     1  index  I
            0    2     2   item  Landroid/media/MediaItem2;
    MethodParameters:
       Name  Flags
      index  
      item   

  public void skipToPlaylistItem(android.media.MediaItem2);
    descriptor: (Landroid/media/MediaItem2;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.media.MediaPlaylistAgent this
        start local 1 // android.media.MediaItem2 item
         0: .line 271
            aload 0 /* this */
            getfield android.media.MediaPlaylistAgent.mProvider:Landroid/media/update/MediaPlaylistAgentProvider;
            aload 1 /* item */
            invokeinterface android.media.update.MediaPlaylistAgentProvider.skipToPlaylistItem_impl:(Landroid/media/MediaItem2;)V
         1: .line 272
            return
        end local 1 // android.media.MediaItem2 item
        end local 0 // android.media.MediaPlaylistAgent this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Landroid/media/MediaPlaylistAgent;
            0    2     1  item  Landroid/media/MediaItem2;
    MethodParameters:
      Name  Flags
      item  

  public void skipToPreviousItem();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.media.MediaPlaylistAgent this
         0: .line 278
            aload 0 /* this */
            getfield android.media.MediaPlaylistAgent.mProvider:Landroid/media/update/MediaPlaylistAgentProvider;
            invokeinterface android.media.update.MediaPlaylistAgentProvider.skipToPreviousItem_impl:()V
         1: .line 279
            return
        end local 0 // android.media.MediaPlaylistAgent this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Landroid/media/MediaPlaylistAgent;

  public void skipToNextItem();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.media.MediaPlaylistAgent this
         0: .line 285
            aload 0 /* this */
            getfield android.media.MediaPlaylistAgent.mProvider:Landroid/media/update/MediaPlaylistAgentProvider;
            invokeinterface android.media.update.MediaPlaylistAgentProvider.skipToNextItem_impl:()V
         1: .line 286
            return
        end local 0 // android.media.MediaPlaylistAgent this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Landroid/media/MediaPlaylistAgent;

  public int getRepeatMode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.media.MediaPlaylistAgent this
         0: .line 298
            aload 0 /* this */
            getfield android.media.MediaPlaylistAgent.mProvider:Landroid/media/update/MediaPlaylistAgentProvider;
            invokeinterface android.media.update.MediaPlaylistAgentProvider.getRepeatMode_impl:()I
            ireturn
        end local 0 // android.media.MediaPlaylistAgent this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/media/MediaPlaylistAgent;

  public void setRepeatMode(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.media.MediaPlaylistAgent this
        start local 1 // int repeatMode
         0: .line 311
            aload 0 /* this */
            getfield android.media.MediaPlaylistAgent.mProvider:Landroid/media/update/MediaPlaylistAgentProvider;
            iload 1 /* repeatMode */
            invokeinterface android.media.update.MediaPlaylistAgentProvider.setRepeatMode_impl:(I)V
         1: .line 312
            return
        end local 1 // int repeatMode
        end local 0 // android.media.MediaPlaylistAgent this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Landroid/media/MediaPlaylistAgent;
            0    2     1  repeatMode  I
    MethodParameters:
            Name  Flags
      repeatMode  

  public int getShuffleMode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.media.MediaPlaylistAgent this
         0: .line 323
            aload 0 /* this */
            getfield android.media.MediaPlaylistAgent.mProvider:Landroid/media/update/MediaPlaylistAgentProvider;
            invokeinterface android.media.update.MediaPlaylistAgentProvider.getShuffleMode_impl:()I
            ireturn
        end local 0 // android.media.MediaPlaylistAgent this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/media/MediaPlaylistAgent;

  public void setShuffleMode(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.media.MediaPlaylistAgent this
        start local 1 // int shuffleMode
         0: .line 335
            aload 0 /* this */
            getfield android.media.MediaPlaylistAgent.mProvider:Landroid/media/update/MediaPlaylistAgentProvider;
            iload 1 /* shuffleMode */
            invokeinterface android.media.update.MediaPlaylistAgentProvider.setShuffleMode_impl:(I)V
         1: .line 336
            return
        end local 1 // int shuffleMode
        end local 0 // android.media.MediaPlaylistAgent this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Landroid/media/MediaPlaylistAgent;
            0    2     1  shuffleMode  I
    MethodParameters:
             Name  Flags
      shuffleMode  

  public android.media.MediaItem2 getMediaItem(android.media.DataSourceDesc);
    descriptor: (Landroid/media/DataSourceDesc;)Landroid/media/MediaItem2;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.media.MediaPlaylistAgent this
        start local 1 // android.media.DataSourceDesc dsd
         0: .line 355
            aload 0 /* this */
            getfield android.media.MediaPlaylistAgent.mProvider:Landroid/media/update/MediaPlaylistAgentProvider;
            aload 1 /* dsd */
            invokeinterface android.media.update.MediaPlaylistAgentProvider.getMediaItem_impl:(Landroid/media/DataSourceDesc;)Landroid/media/MediaItem2;
            areturn
        end local 1 // android.media.DataSourceDesc dsd
        end local 0 // android.media.MediaPlaylistAgent this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/media/MediaPlaylistAgent;
            0    1     1   dsd  Landroid/media/DataSourceDesc;
    MethodParameters:
      Name  Flags
      dsd   
}
SourceFile: "MediaPlaylistAgent.java"
NestMembers:
  android.media.MediaPlaylistAgent$PlaylistEventCallback  android.media.MediaPlaylistAgent$RepeatMode  android.media.MediaPlaylistAgent$ShuffleMode
InnerClasses:
  public abstract PlaylistEventCallback = android.media.MediaPlaylistAgent$PlaylistEventCallback of android.media.MediaPlaylistAgent
  public abstract RepeatMode = android.media.MediaPlaylistAgent$RepeatMode of android.media.MediaPlaylistAgent
  public abstract ShuffleMode = android.media.MediaPlaylistAgent$ShuffleMode of android.media.MediaPlaylistAgent