DiskLruCache$Editor.smali
.class public final Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;
.super Ljava/lang/Object;
.source "DiskLruCache.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/bumptech/glide/disklrucache/DiskLruCache;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x11
name = "Editor"
.end annotation
# instance fields
.field private committed:Z
.field private final entry:Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;
.field final synthetic this$0:Lcom/bumptech/glide/disklrucache/DiskLruCache;
.field private final written:[Z
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method private constructor <init>(Lcom/bumptech/glide/disklrucache/DiskLruCache;Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;)V
.registers 4
.param p1, "this$0" # Lcom/bumptech/glide/disklrucache/DiskLruCache;
.param p2, "entry" # Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;
.line 764
iput-object p1, p0, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->this$0:Lcom/bumptech/glide/disklrucache/DiskLruCache;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 765
iput-object p2, p0, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->entry:Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;
.line 766
# getter for: Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;->readable:Z
invoke-static {p2}, Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;->access$700(Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;)Z
move-result v0
if-eqz v0, :cond_f
const/4 v0, 0x0
goto :goto_15
:cond_f
# getter for: Lcom/bumptech/glide/disklrucache/DiskLruCache;->valueCount:I
invoke-static {p1}, Lcom/bumptech/glide/disklrucache/DiskLruCache;->access$1900(Lcom/bumptech/glide/disklrucache/DiskLruCache;)I
move-result v0
new-array v0, v0, [Z
:goto_15
iput-object v0, p0, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->written:[Z
.line 767
return-void
.end method
.method synthetic constructor <init>(Lcom/bumptech/glide/disklrucache/DiskLruCache;Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;Lcom/bumptech/glide/disklrucache/DiskLruCache$1;)V
.registers 4
.param p1, "x0" # Lcom/bumptech/glide/disklrucache/DiskLruCache;
.param p2, "x1" # Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;
.param p3, "x2" # Lcom/bumptech/glide/disklrucache/DiskLruCache$1;
.line 759
invoke-direct {p0, p1, p2}, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;-><init>(Lcom/bumptech/glide/disklrucache/DiskLruCache;Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;)V
return-void
.end method
.method static synthetic access$1500(Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;)Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;
.registers 2
.param p0, "x0" # Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;
.line 759
iget-object v0, p0, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->entry:Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;
return-object v0
.end method
.method static synthetic access$1600(Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;)[Z
.registers 2
.param p0, "x0" # Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;
.line 759
iget-object v0, p0, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->written:[Z
return-object v0
.end method
.method private newInputStream(I)Ljava/io/InputStream;
.registers 6
.param p1, "index" # I
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 774
iget-object v0, p0, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->this$0:Lcom/bumptech/glide/disklrucache/DiskLruCache;
monitor-enter v0
.line 775
:try_start_3
iget-object v1, p0, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->entry:Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;
# getter for: Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;->currentEditor:Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;
invoke-static {v1}, Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;->access$800(Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;)Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;
move-result-object v1
if-ne v1, p0, :cond_26
.line 778
iget-object v1, p0, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->entry:Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;
# getter for: Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;->readable:Z
invoke-static {v1}, Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;->access$700(Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;)Z
move-result v1
const/4 v2, 0x0
if-nez v1, :cond_16
.line 779
monitor-exit v0
:try_end_15
.catchall {:try_start_3 .. :try_end_15} :catchall_2c
return-object v2
.line 782
:cond_16
:try_start_16
new-instance v1, Ljava/io/FileInputStream;
iget-object v3, p0, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->entry:Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;
invoke-virtual {v3, p1}, Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;->getCleanFile(I)Ljava/io/File;
move-result-object v3
invoke-direct {v1, v3}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V
:try_end_21
.catch Ljava/io/FileNotFoundException; {:try_start_16 .. :try_end_21} :catch_23
.catchall {:try_start_16 .. :try_end_21} :catchall_2c
:try_start_21
monitor-exit v0
return-object v1
.line 783
:catch_23
move-exception v1
.line 784
.local v1, "e":Ljava/io/FileNotFoundException;
monitor-exit v0
return-object v2
.line 776
.end local v1 # "e":Ljava/io/FileNotFoundException;
:cond_26
new-instance v1, Ljava/lang/IllegalStateException;
invoke-direct {v1}, Ljava/lang/IllegalStateException;-><init>()V
.end local p1 # "index":I
throw v1
.line 786
.restart local p1 # "index":I
:catchall_2c
move-exception v1
monitor-exit v0
:try_end_2e
.catchall {:try_start_21 .. :try_end_2e} :catchall_2c
throw v1
.end method
# virtual methods
.method public abort()V
.registers 3
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 844
iget-object v0, p0, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->this$0:Lcom/bumptech/glide/disklrucache/DiskLruCache;
const/4 v1, 0x0
# invokes: Lcom/bumptech/glide/disklrucache/DiskLruCache;->completeEdit(Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;Z)V
invoke-static {v0, p0, v1}, Lcom/bumptech/glide/disklrucache/DiskLruCache;->access$2100(Lcom/bumptech/glide/disklrucache/DiskLruCache;Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;Z)V
.line 845
return-void
.end method
.method public abortUnlessCommitted()V
.registers 2
.line 848
iget-boolean v0, p0, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->committed:Z
if-nez v0, :cond_9
.line 850
:try_start_4
invoke-virtual {p0}, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->abort()V
:try_end_7
.catch Ljava/io/IOException; {:try_start_4 .. :try_end_7} :catch_8
.line 852
goto :goto_9
.line 851
:catch_8
move-exception v0
.line 854
:cond_9
:goto_9
return-void
.end method
.method public commit()V
.registers 3
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 835
iget-object v0, p0, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->this$0:Lcom/bumptech/glide/disklrucache/DiskLruCache;
const/4 v1, 0x1
# invokes: Lcom/bumptech/glide/disklrucache/DiskLruCache;->completeEdit(Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;Z)V
invoke-static {v0, p0, v1}, Lcom/bumptech/glide/disklrucache/DiskLruCache;->access$2100(Lcom/bumptech/glide/disklrucache/DiskLruCache;Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;Z)V
.line 836
iput-boolean v1, p0, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->committed:Z
.line 837
return-void
.end method
.method public getFile(I)Ljava/io/File;
.registers 5
.param p1, "index" # I
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 799
iget-object v0, p0, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->this$0:Lcom/bumptech/glide/disklrucache/DiskLruCache;
monitor-enter v0
.line 800
:try_start_3
iget-object v1, p0, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->entry:Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;
# getter for: Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;->currentEditor:Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;
invoke-static {v1}, Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;->access$800(Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;)Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;
move-result-object v1
if-ne v1, p0, :cond_35
.line 803
iget-object v1, p0, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->entry:Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;
# getter for: Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;->readable:Z
invoke-static {v1}, Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;->access$700(Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;)Z
move-result v1
if-nez v1, :cond_18
.line 804
iget-object v1, p0, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->written:[Z
const/4 v2, 0x1
aput-boolean v2, v1, p1
.line 806
:cond_18
iget-object v1, p0, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->entry:Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;
invoke-virtual {v1, p1}, Lcom/bumptech/glide/disklrucache/DiskLruCache$Entry;->getDirtyFile(I)Ljava/io/File;
move-result-object v1
.line 807
.local v1, "dirtyFile":Ljava/io/File;
iget-object v2, p0, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->this$0:Lcom/bumptech/glide/disklrucache/DiskLruCache;
# getter for: Lcom/bumptech/glide/disklrucache/DiskLruCache;->directory:Ljava/io/File;
invoke-static {v2}, Lcom/bumptech/glide/disklrucache/DiskLruCache;->access$2000(Lcom/bumptech/glide/disklrucache/DiskLruCache;)Ljava/io/File;
move-result-object v2
invoke-virtual {v2}, Ljava/io/File;->exists()Z
move-result v2
if-nez v2, :cond_33
.line 808
iget-object v2, p0, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->this$0:Lcom/bumptech/glide/disklrucache/DiskLruCache;
# getter for: Lcom/bumptech/glide/disklrucache/DiskLruCache;->directory:Ljava/io/File;
invoke-static {v2}, Lcom/bumptech/glide/disklrucache/DiskLruCache;->access$2000(Lcom/bumptech/glide/disklrucache/DiskLruCache;)Ljava/io/File;
move-result-object v2
invoke-virtual {v2}, Ljava/io/File;->mkdirs()Z
.line 810
:cond_33
monitor-exit v0
return-object v1
.line 801
.end local v1 # "dirtyFile":Ljava/io/File;
:cond_35
new-instance v1, Ljava/lang/IllegalStateException;
invoke-direct {v1}, Ljava/lang/IllegalStateException;-><init>()V
.end local p1 # "index":I
throw v1
.line 811
.restart local p1 # "index":I
:catchall_3b
move-exception v1
monitor-exit v0
:try_end_3d
.catchall {:try_start_3 .. :try_end_3d} :catchall_3b
throw v1
.end method
.method public getString(I)Ljava/lang/String;
.registers 4
.param p1, "index" # I
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 794
invoke-direct {p0, p1}, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->newInputStream(I)Ljava/io/InputStream;
move-result-object v0
.line 795
.local v0, "in":Ljava/io/InputStream;
if-eqz v0, :cond_b
# invokes: Lcom/bumptech/glide/disklrucache/DiskLruCache;->inputStreamToString(Ljava/io/InputStream;)Ljava/lang/String;
invoke-static {v0}, Lcom/bumptech/glide/disklrucache/DiskLruCache;->access$1800(Ljava/io/InputStream;)Ljava/lang/String;
move-result-object v1
goto :goto_c
:cond_b
const/4 v1, 0x0
:goto_c
return-object v1
.end method
.method public set(ILjava/lang/String;)V
.registers 7
.param p1, "index" # I
.param p2, "value" # Ljava/lang/String;
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 816
const/4 v0, 0x0
.line 818
.local v0, "writer":Ljava/io/Writer;
:try_start_1
new-instance v1, Ljava/io/FileOutputStream;
invoke-virtual {p0, p1}, Lcom/bumptech/glide/disklrucache/DiskLruCache$Editor;->getFile(I)Ljava/io/File;
move-result-object v2
invoke-direct {v1, v2}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;)V
.line 819
.local v1, "os":Ljava/io/OutputStream;
new-instance v2, Ljava/io/OutputStreamWriter;
sget-object v3, Lcom/bumptech/glide/disklrucache/Util;->UTF_8:Ljava/nio/charset/Charset;
invoke-direct {v2, v1, v3}, Ljava/io/OutputStreamWriter;-><init>(Ljava/io/OutputStream;Ljava/nio/charset/Charset;)V
move-object v0, v2
.line 820
invoke-virtual {v0, p2}, Ljava/io/Writer;->write(Ljava/lang/String;)V
:try_end_15
.catchall {:try_start_1 .. :try_end_15} :catchall_1a
.line 822
.end local v1 # "os":Ljava/io/OutputStream;
invoke-static {v0}, Lcom/bumptech/glide/disklrucache/Util;->closeQuietly(Ljava/io/Closeable;)V
.line 823
nop
.line 824
return-void
.line 822
:catchall_1a
move-exception v1
invoke-static {v0}, Lcom/bumptech/glide/disklrucache/Util;->closeQuietly(Ljava/io/Closeable;)V
.line 823
throw v1
.end method