final class okhttp3.internal.cache.DiskLruCache$Entry
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: okhttp3.internal.cache.DiskLruCache$Entry
  super_class: java.lang.Object
{
  final java.lang.String key;
    descriptor: Ljava/lang/String;
    flags: (0x0010) ACC_FINAL

  final long[] lengths;
    descriptor: [J
    flags: (0x0010) ACC_FINAL

  final java.io.File[] cleanFiles;
    descriptor: [Ljava/io/File;
    flags: (0x0010) ACC_FINAL

  final java.io.File[] dirtyFiles;
    descriptor: [Ljava/io/File;
    flags: (0x0010) ACC_FINAL

  boolean readable;
    descriptor: Z
    flags: (0x0000) 

  okhttp3.internal.cache.DiskLruCache$Editor currentEditor;
    descriptor: Lokhttp3/internal/cache/DiskLruCache$Editor;
    flags: (0x0000) 

  long sequenceNumber;
    descriptor: J
    flags: (0x0000) 

  final okhttp3.internal.cache.DiskLruCache this$0;
    descriptor: Lokhttp3/internal/cache/DiskLruCache;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  void <init>(okhttp3.internal.cache.DiskLruCache, java.lang.String);
    descriptor: (Lokhttp3/internal/cache/DiskLruCache;Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=6, args_size=3
        start local 0 // okhttp3.internal.cache.DiskLruCache$Entry this
        start local 2 // java.lang.String key
         0: .line 974
            aload 0 /* this */
            aload 1
            putfield okhttp3.internal.cache.DiskLruCache$Entry.this$0:Lokhttp3/internal/cache/DiskLruCache;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 975
            aload 0 /* this */
            aload 2 /* key */
            putfield okhttp3.internal.cache.DiskLruCache$Entry.key:Ljava/lang/String;
         2: .line 977
            aload 0 /* this */
            aload 1
            getfield okhttp3.internal.cache.DiskLruCache.valueCount:I
            newarray 11
            putfield okhttp3.internal.cache.DiskLruCache$Entry.lengths:[J
         3: .line 978
            aload 0 /* this */
            aload 1
            getfield okhttp3.internal.cache.DiskLruCache.valueCount:I
            anewarray java.io.File
            putfield okhttp3.internal.cache.DiskLruCache$Entry.cleanFiles:[Ljava/io/File;
         4: .line 979
            aload 0 /* this */
            aload 1
            getfield okhttp3.internal.cache.DiskLruCache.valueCount:I
            anewarray java.io.File
            putfield okhttp3.internal.cache.DiskLruCache$Entry.dirtyFiles:[Ljava/io/File;
         5: .line 982
            new java.lang.StringBuilder
            dup
            aload 2 /* key */
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            bipush 46
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            astore 3 /* fileBuilder */
        start local 3 // java.lang.StringBuilder fileBuilder
         6: .line 983
            aload 3 /* fileBuilder */
            invokevirtual java.lang.StringBuilder.length:()I
            istore 4 /* truncateTo */
        start local 4 // int truncateTo
         7: .line 984
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         8: goto 15
         9: .line 985
      StackMap locals: okhttp3.internal.cache.DiskLruCache$Entry okhttp3.internal.cache.DiskLruCache java.lang.String java.lang.StringBuilder int int
      StackMap stack:
            aload 3 /* fileBuilder */
            iload 5 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            pop
        10: .line 986
            aload 0 /* this */
            getfield okhttp3.internal.cache.DiskLruCache$Entry.cleanFiles:[Ljava/io/File;
            iload 5 /* i */
            new java.io.File
            dup
            aload 1
            getfield okhttp3.internal.cache.DiskLruCache.directory:Ljava/io/File;
            aload 3 /* fileBuilder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            aastore
        11: .line 987
            aload 3 /* fileBuilder */
            ldc ".tmp"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        12: .line 988
            aload 0 /* this */
            getfield okhttp3.internal.cache.DiskLruCache$Entry.dirtyFiles:[Ljava/io/File;
            iload 5 /* i */
            new java.io.File
            dup
            aload 1
            getfield okhttp3.internal.cache.DiskLruCache.directory:Ljava/io/File;
            aload 3 /* fileBuilder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
            aastore
        13: .line 989
            aload 3 /* fileBuilder */
            iload 4 /* truncateTo */
            invokevirtual java.lang.StringBuilder.setLength:(I)V
        14: .line 984
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 5 /* i */
            aload 1
            getfield okhttp3.internal.cache.DiskLruCache.valueCount:I
            if_icmplt 9
        end local 5 // int i
        16: .line 991
            return
        end local 4 // int truncateTo
        end local 3 // java.lang.StringBuilder fileBuilder
        end local 2 // java.lang.String key
        end local 0 // okhttp3.internal.cache.DiskLruCache$Entry this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   17     0         this  Lokhttp3/internal/cache/DiskLruCache$Entry;
            0   17     2          key  Ljava/lang/String;
            6   17     3  fileBuilder  Ljava/lang/StringBuilder;
            7   17     4   truncateTo  I
            8   16     5            i  I
    MethodParameters:
        Name  Flags
      this$0  final
      key     

  void setLengths(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // okhttp3.internal.cache.DiskLruCache$Entry this
        start local 1 // java.lang.String[] strings
         0: .line 995
            aload 1 /* strings */
            arraylength
            aload 0 /* this */
            getfield okhttp3.internal.cache.DiskLruCache$Entry.this$0:Lokhttp3/internal/cache/DiskLruCache;
            getfield okhttp3.internal.cache.DiskLruCache.valueCount:I
            if_icmpeq 2
         1: .line 996
            aload 0 /* this */
            aload 1 /* strings */
            invokevirtual okhttp3.internal.cache.DiskLruCache$Entry.invalidLengths:([Ljava/lang/String;)Ljava/io/IOException;
            athrow
         2: .line 1000
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 6
         4: .line 1001
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield okhttp3.internal.cache.DiskLruCache$Entry.lengths:[J
            iload 2 /* i */
            aload 1 /* strings */
            iload 2 /* i */
            aaload
            invokestatic java.lang.Long.parseLong:(Ljava/lang/String;)J
            lastore
         5: .line 1000
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            aload 1 /* strings */
            arraylength
            if_icmplt 4
        end local 2 // int i
         7: .line 1003
            goto 10
      StackMap locals: okhttp3.internal.cache.DiskLruCache$Entry java.lang.String[]
      StackMap stack: java.lang.NumberFormatException
         8: pop
         9: .line 1004
            aload 0 /* this */
            aload 1 /* strings */
            invokevirtual okhttp3.internal.cache.DiskLruCache$Entry.invalidLengths:([Ljava/lang/String;)Ljava/io/IOException;
            athrow
        10: .line 1006
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String[] strings
        end local 0 // okhttp3.internal.cache.DiskLruCache$Entry this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Lokhttp3/internal/cache/DiskLruCache$Entry;
            0   11     1  strings  [Ljava/lang/String;
            3    7     2        i  I
      Exception table:
        from    to  target  type
           2     7       8  Class java.lang.NumberFormatException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      strings  

  void writeLengths(okio.BufferedSink);
    descriptor: (Lokio/BufferedSink;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // okhttp3.internal.cache.DiskLruCache$Entry this
        start local 1 // okio.BufferedSink writer
         0: .line 1010
            aload 0 /* this */
            getfield okhttp3.internal.cache.DiskLruCache$Entry.lengths:[J
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 4
      StackMap locals: okhttp3.internal.cache.DiskLruCache$Entry okio.BufferedSink top top int int long[]
      StackMap stack:
         1: aload 6
            iload 4
            laload
            lstore 2 /* length */
        start local 2 // long length
         2: .line 1011
            aload 1 /* writer */
            bipush 32
            invokeinterface okio.BufferedSink.writeByte:(I)Lokio/BufferedSink;
            lload 2 /* length */
            invokeinterface okio.BufferedSink.writeDecimalLong:(J)Lokio/BufferedSink;
            pop
        end local 2 // long length
         3: .line 1010
            iinc 4 1
      StackMap locals:
      StackMap stack:
         4: iload 4
            iload 5
            if_icmplt 1
         5: .line 1013
            return
        end local 1 // okio.BufferedSink writer
        end local 0 // okhttp3.internal.cache.DiskLruCache$Entry this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lokhttp3/internal/cache/DiskLruCache$Entry;
            0    6     1  writer  Lokio/BufferedSink;
            2    3     2  length  J
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      writer  

  private java.io.IOException invalidLengths(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)Ljava/io/IOException;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // okhttp3.internal.cache.DiskLruCache$Entry this
        start local 1 // java.lang.String[] strings
         0: .line 1016
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "unexpected journal line: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* strings */
            invokestatic java.util.Arrays.toString:([Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.String[] strings
        end local 0 // okhttp3.internal.cache.DiskLruCache$Entry this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lokhttp3/internal/cache/DiskLruCache$Entry;
            0    1     1  strings  [Ljava/lang/String;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      strings  

  okhttp3.internal.cache.DiskLruCache$Snapshot snapshot();
    descriptor: ()Lokhttp3/internal/cache/DiskLruCache$Snapshot;
    flags: (0x0000) 
    Code:
      stack=8, locals=4, args_size=1
        start local 0 // okhttp3.internal.cache.DiskLruCache$Entry this
         0: .line 1025
            aload 0 /* this */
            getfield okhttp3.internal.cache.DiskLruCache$Entry.this$0:Lokhttp3/internal/cache/DiskLruCache;
            invokestatic java.lang.Thread.holdsLock:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1027
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield okhttp3.internal.cache.DiskLruCache$Entry.this$0:Lokhttp3/internal/cache/DiskLruCache;
            getfield okhttp3.internal.cache.DiskLruCache.valueCount:I
            anewarray okio.Source
            astore 1 /* sources */
        start local 1 // okio.Source[] sources
         2: .line 1028
            aload 0 /* this */
            getfield okhttp3.internal.cache.DiskLruCache$Entry.lengths:[J
            invokevirtual long[].clone:()Ljava/lang/Object;
            checkcast long[]
            astore 2 /* lengths */
        start local 2 // long[] lengths
         3: .line 1030
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         4: goto 7
         5: .line 1031
      StackMap locals: okio.Source[] long[] int
      StackMap stack:
            aload 1 /* sources */
            iload 3 /* i */
            aload 0 /* this */
            getfield okhttp3.internal.cache.DiskLruCache$Entry.this$0:Lokhttp3/internal/cache/DiskLruCache;
            getfield okhttp3.internal.cache.DiskLruCache.fileSystem:Lokhttp3/internal/io/FileSystem;
            aload 0 /* this */
            getfield okhttp3.internal.cache.DiskLruCache$Entry.cleanFiles:[Ljava/io/File;
            iload 3 /* i */
            aaload
            invokeinterface okhttp3.internal.io.FileSystem.source:(Ljava/io/File;)Lokio/Source;
            aastore
         6: .line 1030
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 3 /* i */
            aload 0 /* this */
            getfield okhttp3.internal.cache.DiskLruCache$Entry.this$0:Lokhttp3/internal/cache/DiskLruCache;
            getfield okhttp3.internal.cache.DiskLruCache.valueCount:I
            if_icmplt 5
        end local 3 // int i
         8: .line 1033
            new okhttp3.internal.cache.DiskLruCache$Snapshot
            dup
            aload 0 /* this */
            getfield okhttp3.internal.cache.DiskLruCache$Entry.this$0:Lokhttp3/internal/cache/DiskLruCache;
            aload 0 /* this */
            getfield okhttp3.internal.cache.DiskLruCache$Entry.key:Ljava/lang/String;
            aload 0 /* this */
            getfield okhttp3.internal.cache.DiskLruCache$Entry.sequenceNumber:J
            aload 1 /* sources */
            aload 2 /* lengths */
            invokespecial okhttp3.internal.cache.DiskLruCache$Snapshot.<init>:(Lokhttp3/internal/cache/DiskLruCache;Ljava/lang/String;J[Lokio/Source;[J)V
         9: areturn
        10: .line 1034
      StackMap locals: okhttp3.internal.cache.DiskLruCache$Entry okio.Source[] long[]
      StackMap stack: java.io.FileNotFoundException
            pop
        11: .line 1036
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        12: goto 16
        13: .line 1037
      StackMap locals: int
      StackMap stack:
            aload 1 /* sources */
            iload 3 /* i */
            aaload
            ifnull 17
        14: .line 1038
            aload 1 /* sources */
            iload 3 /* i */
            aaload
            invokestatic okhttp3.internal.Util.closeQuietly:(Ljava/io/Closeable;)V
        15: .line 1036
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 3 /* i */
            aload 0 /* this */
            getfield okhttp3.internal.cache.DiskLruCache$Entry.this$0:Lokhttp3/internal/cache/DiskLruCache;
            getfield okhttp3.internal.cache.DiskLruCache.valueCount:I
            if_icmplt 13
        end local 3 // int i
        17: .line 1046
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield okhttp3.internal.cache.DiskLruCache$Entry.this$0:Lokhttp3/internal/cache/DiskLruCache;
            aload 0 /* this */
            invokevirtual okhttp3.internal.cache.DiskLruCache.removeEntry:(Lokhttp3/internal/cache/DiskLruCache$Entry;)Z
            pop
        18: .line 1047
            goto 20
      StackMap locals:
      StackMap stack: java.io.IOException
        19: pop
        20: .line 1049
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // long[] lengths
        end local 1 // okio.Source[] sources
        end local 0 // okhttp3.internal.cache.DiskLruCache$Entry this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   21     0     this  Lokhttp3/internal/cache/DiskLruCache$Entry;
            2   21     1  sources  [Lokio/Source;
            3   21     2  lengths  [J
            4    8     3        i  I
           12   17     3        i  I
      Exception table:
        from    to  target  type
           3     9      10  Class java.io.FileNotFoundException
          17    18      19  Class java.io.IOException
}
SourceFile: "DiskLruCache.java"
NestHost: okhttp3.internal.cache.DiskLruCache
InnerClasses:
  public final Editor = okhttp3.internal.cache.DiskLruCache$Editor of okhttp3.internal.cache.DiskLruCache
  private final Entry = okhttp3.internal.cache.DiskLruCache$Entry of okhttp3.internal.cache.DiskLruCache
  public final Snapshot = okhttp3.internal.cache.DiskLruCache$Snapshot of okhttp3.internal.cache.DiskLruCache