public class android.media.RemoteController$MetadataEditor extends android.media.MediaMetadataEditor
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: android.media.RemoteController$MetadataEditor
  super_class: android.media.MediaMetadataEditor
{
  final android.media.RemoteController this$0;
    descriptor: Landroid/media/RemoteController;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  protected void <init>(android.media.RemoteController);
    descriptor: (Landroid/media/RemoteController;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.media.RemoteController$MetadataEditor this
         0: .line 398
            aload 0 /* this */
            aload 1
            putfield android.media.RemoteController$MetadataEditor.this$0:Landroid/media/RemoteController;
            aload 0 /* this */
            invokespecial android.media.MediaMetadataEditor.<init>:()V
            return
        end local 0 // android.media.RemoteController$MetadataEditor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/media/RemoteController$MetadataEditor;
    MethodParameters:
        Name  Flags
      this$0  final

  protected void <init>(android.media.RemoteController, android.os.Bundle, long);
    descriptor: (Landroid/media/RemoteController;Landroid/os/Bundle;J)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // android.media.RemoteController$MetadataEditor this
        start local 2 // android.os.Bundle metadata
        start local 3 // long editableKeys
         0: .line 403
            aload 0 /* this */
            aload 1
            putfield android.media.RemoteController$MetadataEditor.this$0:Landroid/media/RemoteController;
            aload 0 /* this */
            invokespecial android.media.MediaMetadataEditor.<init>:()V
         1: .line 404
            aload 0 /* this */
            aload 2 /* metadata */
            putfield android.media.RemoteController$MetadataEditor.mEditorMetadata:Landroid/os/Bundle;
         2: .line 405
            aload 0 /* this */
            lload 3 /* editableKeys */
            putfield android.media.RemoteController$MetadataEditor.mEditableKeys:J
         3: .line 407
            aload 0 /* this */
            aload 2 /* metadata */
         4: .line 408
            bipush 100
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
         5: .line 407
            invokevirtual android.os.Bundle.getParcelable:(Ljava/lang/String;)Landroid/os/Parcelable;
            checkcast android.graphics.Bitmap
            putfield android.media.RemoteController$MetadataEditor.mEditorArtwork:Landroid/graphics/Bitmap;
         6: .line 409
            aload 0 /* this */
            getfield android.media.RemoteController$MetadataEditor.mEditorArtwork:Landroid/graphics/Bitmap;
            ifnull 8
         7: .line 410
            aload 0 /* this */
            bipush 100
            invokevirtual android.media.RemoteController$MetadataEditor.cleanupBitmapFromBundle:(I)V
         8: .line 413
      StackMap locals: android.media.RemoteController$MetadataEditor android.media.RemoteController android.os.Bundle long
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield android.media.RemoteController$MetadataEditor.mMetadataChanged:Z
         9: .line 414
            aload 0 /* this */
            iconst_1
            putfield android.media.RemoteController$MetadataEditor.mArtworkChanged:Z
        10: .line 415
            aload 0 /* this */
            iconst_0
            putfield android.media.RemoteController$MetadataEditor.mApplied:Z
        11: .line 416
            return
        end local 3 // long editableKeys
        end local 2 // android.os.Bundle metadata
        end local 0 // android.media.RemoteController$MetadataEditor this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   12     0          this  Landroid/media/RemoteController$MetadataEditor;
            0   12     2      metadata  Landroid/os/Bundle;
            0   12     3  editableKeys  J
    MethodParameters:
              Name  Flags
      this$0        final
      metadata      
      editableKeys  

  private void cleanupBitmapFromBundle(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // android.media.RemoteController$MetadataEditor this
        start local 1 // int key
         0: .line 419
            getstatic android.media.RemoteController$MetadataEditor.METADATA_KEYS_TYPE:Landroid/util/SparseIntArray;
            iload 1 /* key */
            iconst_m1
            invokevirtual android.util.SparseIntArray.get:(II)I
            iconst_2
            if_icmpne 2
         1: .line 420
            aload 0 /* this */
            getfield android.media.RemoteController$MetadataEditor.mEditorMetadata:Landroid/os/Bundle;
            iload 1 /* key */
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            invokevirtual android.os.Bundle.remove:(Ljava/lang/String;)V
         2: .line 422
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int key
        end local 0 // android.media.RemoteController$MetadataEditor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Landroid/media/RemoteController$MetadataEditor;
            0    3     1   key  I
    MethodParameters:
      Name  Flags
      key   

  public synchronized void apply();
    descriptor: ()V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // android.media.RemoteController$MetadataEditor this
         0: .line 433
            aload 0 /* this */
            getfield android.media.RemoteController$MetadataEditor.mMetadataChanged:Z
            ifne 2
         1: .line 434
            return
         2: .line 436
      StackMap locals:
      StackMap stack:
            getstatic android.media.RemoteController.mInfoLock:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         3: .line 437
            aload 0 /* this */
            getfield android.media.RemoteController$MetadataEditor.this$0:Landroid/media/RemoteController;
            getfield android.media.RemoteController.mCurrentSession:Landroid/media/session/MediaController;
            ifnull 13
         4: .line 438
            aload 0 /* this */
            getfield android.media.RemoteController$MetadataEditor.mEditorMetadata:Landroid/os/Bundle;
         5: .line 439
            ldc 268435457
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
         6: .line 438
            invokevirtual android.os.Bundle.containsKey:(Ljava/lang/String;)Z
         7: .line 439
            ifeq 13
         8: .line 440
            aload 0 /* this */
         9: .line 441
            ldc 268435457
            aconst_null
        10: .line 440
            invokevirtual android.media.RemoteController$MetadataEditor.getObject:(ILjava/lang/Object;)Ljava/lang/Object;
            checkcast android.media.Rating
            astore 2 /* rating */
        start local 2 // android.media.Rating rating
        11: .line 442
            aload 2 /* rating */
            ifnull 13
        12: .line 443
            aload 0 /* this */
            getfield android.media.RemoteController$MetadataEditor.this$0:Landroid/media/RemoteController;
            getfield android.media.RemoteController.mCurrentSession:Landroid/media/session/MediaController;
            invokevirtual android.media.session.MediaController.getTransportControls:()Landroid/media/session/MediaController$TransportControls;
            aload 2 /* rating */
            invokevirtual android.media.session.MediaController$TransportControls.setRating:(Landroid/media/Rating;)V
        end local 2 // android.media.Rating rating
        13: .line 436
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 1
            monitorexit
        14: goto 17
      StackMap locals:
      StackMap stack: java.lang.Throwable
        15: aload 1
            monitorexit
        16: athrow
        17: .line 451
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield android.media.RemoteController$MetadataEditor.mApplied:Z
        18: .line 452
            return
        end local 0 // android.media.RemoteController$MetadataEditor this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   19     0    this  Landroid/media/RemoteController$MetadataEditor;
           11   13     2  rating  Landroid/media/Rating;
      Exception table:
        from    to  target  type
           3    14      15  any
          15    16      15  any
}
SourceFile: "RemoteController.java"
NestHost: android.media.RemoteController
InnerClasses:
  public MetadataEditor = android.media.RemoteController$MetadataEditor of android.media.RemoteController
  public final TransportControls = android.media.session.MediaController$TransportControls of android.media.session.MediaController