class android.app.DownloadManager$CursorTranslator extends android.database.CursorWrapper
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: android.app.DownloadManager$CursorTranslator
  super_class: android.database.CursorWrapper
{
  private final android.net.Uri mBaseUri;
    descriptor: Landroid/net/Uri;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean mAccessFilename;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 1483
            ldc Landroid/app/DownloadManager;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic android.app.DownloadManager$CursorTranslator.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(android.database.Cursor, android.net.Uri, boolean);
    descriptor: (Landroid/database/Cursor;Landroid/net/Uri;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // android.app.DownloadManager$CursorTranslator this
        start local 1 // android.database.Cursor cursor
        start local 2 // android.net.Uri baseUri
        start local 3 // boolean accessFilename
         0: .line 1488
            aload 0 /* this */
            aload 1 /* cursor */
            invokespecial android.database.CursorWrapper.<init>:(Landroid/database/Cursor;)V
         1: .line 1489
            aload 0 /* this */
            aload 2 /* baseUri */
            putfield android.app.DownloadManager$CursorTranslator.mBaseUri:Landroid/net/Uri;
         2: .line 1490
            aload 0 /* this */
            iload 3 /* accessFilename */
            putfield android.app.DownloadManager$CursorTranslator.mAccessFilename:Z
         3: .line 1491
            return
        end local 3 // boolean accessFilename
        end local 2 // android.net.Uri baseUri
        end local 1 // android.database.Cursor cursor
        end local 0 // android.app.DownloadManager$CursorTranslator this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0            this  Landroid/app/DownloadManager$CursorTranslator;
            0    4     1          cursor  Landroid/database/Cursor;
            0    4     2         baseUri  Landroid/net/Uri;
            0    4     3  accessFilename  Z
    MethodParameters:
                Name  Flags
      cursor          
      baseUri         
      accessFilename  

  public int getInt(int);
    descriptor: (I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.app.DownloadManager$CursorTranslator this
        start local 1 // int columnIndex
         0: .line 1495
            aload 0 /* this */
            iload 1 /* columnIndex */
            invokevirtual android.app.DownloadManager$CursorTranslator.getLong:(I)J
            l2i
            ireturn
        end local 1 // int columnIndex
        end local 0 // android.app.DownloadManager$CursorTranslator this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Landroid/app/DownloadManager$CursorTranslator;
            0    1     1  columnIndex  I
    MethodParameters:
             Name  Flags
      columnIndex  

  public long getLong(int);
    descriptor: (I)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // android.app.DownloadManager$CursorTranslator this
        start local 1 // int columnIndex
         0: .line 1500
            aload 0 /* this */
            iload 1 /* columnIndex */
            invokevirtual android.app.DownloadManager$CursorTranslator.getColumnName:(I)Ljava/lang/String;
            ldc "reason"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 1501
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            ldc "status"
            invokevirtual android.app.DownloadManager$CursorTranslator.getColumnIndex:(Ljava/lang/String;)I
            invokespecial android.database.CursorWrapper.getInt:(I)I
            invokevirtual android.app.DownloadManager$CursorTranslator.getReason:(I)J
            lreturn
         2: .line 1502
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* columnIndex */
            invokevirtual android.app.DownloadManager$CursorTranslator.getColumnName:(I)Ljava/lang/String;
            ldc "status"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 1503
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            ldc "status"
            invokevirtual android.app.DownloadManager$CursorTranslator.getColumnIndex:(Ljava/lang/String;)I
            invokespecial android.database.CursorWrapper.getInt:(I)I
            invokevirtual android.app.DownloadManager$CursorTranslator.translateStatus:(I)I
            i2l
            lreturn
         4: .line 1505
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* columnIndex */
            invokespecial android.database.CursorWrapper.getLong:(I)J
            lreturn
        end local 1 // int columnIndex
        end local 0 // android.app.DownloadManager$CursorTranslator this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Landroid/app/DownloadManager$CursorTranslator;
            0    5     1  columnIndex  I
    MethodParameters:
             Name  Flags
      columnIndex  

  public java.lang.String getString(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // android.app.DownloadManager$CursorTranslator this
        start local 1 // int columnIndex
         0: .line 1511
            aload 0 /* this */
            iload 1 /* columnIndex */
            invokevirtual android.app.DownloadManager$CursorTranslator.getColumnName:(I)Ljava/lang/String;
            astore 2 /* columnName */
        start local 2 // java.lang.String columnName
         1: .line 1512
            aload 2 /* columnName */
            dup
            astore 3
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 2
          -1204869480: 2
             22072411: 3
              default: 9
          }
      StackMap locals: java.lang.String java.lang.String
      StackMap stack:
         2: aload 3
            ldc "local_uri"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 4
            goto 9
      StackMap locals:
      StackMap stack:
         3: aload 3
            ldc "local_filename"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 5
            goto 9
         4: .line 1514
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual android.app.DownloadManager$CursorTranslator.getLocalUri:()Ljava/lang/String;
            areturn
         5: .line 1516
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.app.DownloadManager$CursorTranslator.mAccessFilename:Z
            ifne 9
         6: .line 1517
            new java.lang.SecurityException
            dup
         7: .line 1518
            ldc "COLUMN_LOCAL_FILENAME is deprecated; use ContentResolver.openFileDescriptor() instead"
         8: .line 1517
            invokespecial java.lang.SecurityException.<init>:(Ljava/lang/String;)V
            athrow
         9: .line 1522
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* columnIndex */
            invokespecial android.database.CursorWrapper.getString:(I)Ljava/lang/String;
            areturn
        end local 2 // java.lang.String columnName
        end local 1 // int columnIndex
        end local 0 // android.app.DownloadManager$CursorTranslator this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0         this  Landroid/app/DownloadManager$CursorTranslator;
            0   10     1  columnIndex  I
            1   10     2   columnName  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      columnIndex  

  private java.lang.String getLocalUri();
    descriptor: ()Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // android.app.DownloadManager$CursorTranslator this
         0: .line 1527
            aload 0 /* this */
            aload 0 /* this */
            ldc "destination"
            invokevirtual android.app.DownloadManager$CursorTranslator.getColumnIndex:(Ljava/lang/String;)I
            invokevirtual android.app.DownloadManager$CursorTranslator.getLong:(I)J
            lstore 1 /* destinationType */
        start local 1 // long destinationType
         1: .line 1528
            lload 1 /* destinationType */
            ldc 4
            lcmp
            ifeq 4
         2: .line 1529
            lload 1 /* destinationType */
            lconst_0
            lcmp
            ifeq 4
         3: .line 1530
            lload 1 /* destinationType */
            ldc 6
            lcmp
            ifne 8
         4: .line 1531
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            ldc "local_filename"
            invokevirtual android.app.DownloadManager$CursorTranslator.getColumnIndex:(Ljava/lang/String;)I
            invokespecial android.database.CursorWrapper.getString:(I)Ljava/lang/String;
            astore 3 /* localPath */
        start local 3 // java.lang.String localPath
         5: .line 1532
            aload 3 /* localPath */
            ifnonnull 7
         6: .line 1533
            aconst_null
            areturn
         7: .line 1535
      StackMap locals: java.lang.String
      StackMap stack:
            new java.io.File
            dup
            aload 3 /* localPath */
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            invokestatic android.net.Uri.fromFile:(Ljava/io/File;)Landroid/net/Uri;
            invokevirtual android.net.Uri.toString:()Ljava/lang/String;
            areturn
        end local 3 // java.lang.String localPath
         8: .line 1539
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            ldc "_id"
            invokevirtual android.app.DownloadManager$CursorTranslator.getColumnIndex:(Ljava/lang/String;)I
            invokevirtual android.app.DownloadManager$CursorTranslator.getLong:(I)J
            lstore 3 /* downloadId */
        start local 3 // long downloadId
         9: .line 1540
            getstatic android.provider.Downloads$Impl.ALL_DOWNLOADS_CONTENT_URI:Landroid/net/Uri;
            lload 3 /* downloadId */
            invokestatic android.content.ContentUris.withAppendedId:(Landroid/net/Uri;J)Landroid/net/Uri;
            invokevirtual android.net.Uri.toString:()Ljava/lang/String;
            areturn
        end local 3 // long downloadId
        end local 1 // long destinationType
        end local 0 // android.app.DownloadManager$CursorTranslator this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   10     0             this  Landroid/app/DownloadManager$CursorTranslator;
            1   10     1  destinationType  J
            5    8     3        localPath  Ljava/lang/String;
            9   10     3       downloadId  J

  private long getReason(int);
    descriptor: (I)J
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.app.DownloadManager$CursorTranslator this
        start local 1 // int status
         0: .line 1544
            aload 0 /* this */
            iload 1 /* status */
            invokevirtual android.app.DownloadManager$CursorTranslator.translateStatus:(I)I
            lookupswitch { // 2
                    4: 2
                   16: 1
              default: 3
          }
         1: .line 1546
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* status */
            invokevirtual android.app.DownloadManager$CursorTranslator.getErrorCode:(I)J
            lreturn
         2: .line 1549
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* status */
            invokevirtual android.app.DownloadManager$CursorTranslator.getPausedReason:(I)J
            lreturn
         3: .line 1552
      StackMap locals:
      StackMap stack:
            lconst_0
            lreturn
        end local 1 // int status
        end local 0 // android.app.DownloadManager$CursorTranslator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Landroid/app/DownloadManager$CursorTranslator;
            0    4     1  status  I
    MethodParameters:
        Name  Flags
      status  

  private long getPausedReason(int);
    descriptor: (I)J
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.app.DownloadManager$CursorTranslator this
        start local 1 // int status
         0: .line 1557
            iload 1 /* status */
            tableswitch { // 194 - 196
                  194: 1
                  195: 2
                  196: 3
              default: 4
          }
         1: .line 1559
      StackMap locals:
      StackMap stack:
            lconst_1
            lreturn
         2: .line 1562
      StackMap locals:
      StackMap stack:
            ldc 2
            lreturn
         3: .line 1565
      StackMap locals:
      StackMap stack:
            ldc 3
            lreturn
         4: .line 1568
      StackMap locals:
      StackMap stack:
            ldc 4
            lreturn
        end local 1 // int status
        end local 0 // android.app.DownloadManager$CursorTranslator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Landroid/app/DownloadManager$CursorTranslator;
            0    5     1  status  I
    MethodParameters:
        Name  Flags
      status  

  private long getErrorCode(int);
    descriptor: (I)J
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.app.DownloadManager$CursorTranslator this
        start local 1 // int status
         0: .line 1573
            sipush 400
            iload 1 /* status */
            if_icmpgt 1
            iload 1 /* status */
            sipush 488
            if_icmplt 2
         1: .line 1574
      StackMap locals:
      StackMap stack:
            sipush 500
            iload 1 /* status */
            if_icmpgt 3
            iload 1 /* status */
            sipush 600
            if_icmpge 3
         2: .line 1576
      StackMap locals:
      StackMap stack:
            iload 1 /* status */
            i2l
            lreturn
         3: .line 1579
      StackMap locals:
      StackMap stack:
            iload 1 /* status */
            lookupswitch { // 9
                  198: 8
                  199: 9
                  488: 11
                  489: 10
                  492: 4
                  493: 5
                  494: 5
                  495: 6
                  497: 7
              default: 12
          }
         4: .line 1581
      StackMap locals:
      StackMap stack:
            ldc 1001
            lreturn
         5: .line 1585
      StackMap locals:
      StackMap stack:
            ldc 1002
            lreturn
         6: .line 1588
      StackMap locals:
      StackMap stack:
            ldc 1004
            lreturn
         7: .line 1591
      StackMap locals:
      StackMap stack:
            ldc 1005
            lreturn
         8: .line 1594
      StackMap locals:
      StackMap stack:
            ldc 1006
            lreturn
         9: .line 1597
      StackMap locals:
      StackMap stack:
            ldc 1007
            lreturn
        10: .line 1600
      StackMap locals:
      StackMap stack:
            ldc 1008
            lreturn
        11: .line 1603
      StackMap locals:
      StackMap stack:
            ldc 1009
            lreturn
        12: .line 1606
      StackMap locals:
      StackMap stack:
            ldc 1000
            lreturn
        end local 1 // int status
        end local 0 // android.app.DownloadManager$CursorTranslator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   13     0    this  Landroid/app/DownloadManager$CursorTranslator;
            0   13     1  status  I
    MethodParameters:
        Name  Flags
      status  

  private int translateStatus(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.app.DownloadManager$CursorTranslator this
        start local 1 // int status
         0: .line 1611
            iload 1 /* status */
            tableswitch { // 190 - 200
                  190: 1
                  191: 5
                  192: 2
                  193: 3
                  194: 3
                  195: 3
                  196: 3
                  197: 5
                  198: 5
                  199: 5
                  200: 4
              default: 5
          }
         1: .line 1613
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         2: .line 1616
      StackMap locals:
      StackMap stack:
            iconst_2
            ireturn
         3: .line 1622
      StackMap locals:
      StackMap stack:
            iconst_4
            ireturn
         4: .line 1625
      StackMap locals:
      StackMap stack:
            bipush 8
            ireturn
         5: .line 1628
      StackMap locals:
      StackMap stack:
            getstatic android.app.DownloadManager$CursorTranslator.$assertionsDisabled:Z
            ifne 6
            iload 1 /* status */
            invokestatic android.provider.Downloads$Impl.isStatusError:(I)Z
            ifne 6
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         6: .line 1629
      StackMap locals:
      StackMap stack:
            bipush 16
            ireturn
        end local 1 // int status
        end local 0 // android.app.DownloadManager$CursorTranslator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Landroid/app/DownloadManager$CursorTranslator;
            0    7     1  status  I
    MethodParameters:
        Name  Flags
      status  
}
SourceFile: "DownloadManager.java"
NestHost: android.app.DownloadManager
InnerClasses:
  private CursorTranslator = android.app.DownloadManager$CursorTranslator of android.app.DownloadManager
  public final Impl = android.provider.Downloads$Impl of android.provider.Downloads