Weather/smali/com/badlogic/gdx/files/FileHandle.smali
2021-05-10 10:13:34 +02:00

1459 lines
37 KiB
Smali

.class public Lcom/badlogic/gdx/files/FileHandle;
.super Ljava/lang/Object;
.source "FileHandle.java"
# instance fields
.field protected a:Ljava/io/File;
.field protected b:Lcom/badlogic/gdx/Files$FileType;
# direct methods
.method protected constructor <init>()V
.locals 0
.line 55
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method protected constructor <init>(Ljava/io/File;Lcom/badlogic/gdx/Files$FileType;)V
.locals 0
.line 79
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 80
iput-object p1, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
.line 81
iput-object p2, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
return-void
.end method
.method protected constructor <init>(Ljava/lang/String;Lcom/badlogic/gdx/Files$FileType;)V
.locals 0
.line 74
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 75
iput-object p2, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
.line 76
new-instance p2, Ljava/io/File;
invoke-direct {p2, p1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
iput-object p2, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
return-void
.end method
.method private p()I
.locals 2
.line 233
invoke-virtual {p0}, Lcom/badlogic/gdx/files/FileHandle;->e()J
move-result-wide v0
long-to-int v0, v0
if-eqz v0, :cond_0
goto :goto_0
:cond_0
const/16 v0, 0x200
:goto_0
return v0
.end method
# virtual methods
.method public a()Lcom/badlogic/gdx/files/FileHandle;
.locals 3
.line 502
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v0}, Ljava/io/File;->getParentFile()Ljava/io/File;
move-result-object v0
if-nez v0, :cond_1
.line 504
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
sget-object v1, Lcom/badlogic/gdx/Files$FileType;->Absolute:Lcom/badlogic/gdx/Files$FileType;
if-ne v0, v1, :cond_0
.line 505
new-instance v0, Ljava/io/File;
const-string v1, "/"
invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
goto :goto_0
.line 507
:cond_0
new-instance v0, Ljava/io/File;
const-string v1, ""
invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
.line 509
:cond_1
:goto_0
new-instance v1, Lcom/badlogic/gdx/files/FileHandle;
iget-object v2, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
invoke-direct {v1, v0, v2}, Lcom/badlogic/gdx/files/FileHandle;-><init>(Ljava/io/File;Lcom/badlogic/gdx/Files$FileType;)V
return-object v1
.end method
.method public a(Ljava/lang/String;)Lcom/badlogic/gdx/files/FileHandle;
.locals 3
.line 490
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v0}, Ljava/io/File;->getPath()Ljava/lang/String;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/String;->length()I
move-result v0
if-nez v0, :cond_0
new-instance v0, Lcom/badlogic/gdx/files/FileHandle;
new-instance v1, Ljava/io/File;
invoke-direct {v1, p1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
iget-object p1, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
invoke-direct {v0, v1, p1}, Lcom/badlogic/gdx/files/FileHandle;-><init>(Ljava/io/File;Lcom/badlogic/gdx/Files$FileType;)V
return-object v0
.line 491
:cond_0
new-instance v0, Lcom/badlogic/gdx/files/FileHandle;
new-instance v1, Ljava/io/File;
iget-object v2, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-direct {v1, v2, p1}, Ljava/io/File;-><init>(Ljava/io/File;Ljava/lang/String;)V
iget-object p1, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
invoke-direct {v0, v1, p1}, Lcom/badlogic/gdx/files/FileHandle;-><init>(Ljava/io/File;Lcom/badlogic/gdx/Files$FileType;)V
return-object v0
.end method
.method public a(I)Ljava/io/BufferedInputStream;
.locals 2
.line 151
new-instance v0, Ljava/io/BufferedInputStream;
invoke-virtual {p0}, Lcom/badlogic/gdx/files/FileHandle;->b()Ljava/io/InputStream;
move-result-object v1
invoke-direct {v0, v1, p1}, Ljava/io/BufferedInputStream;-><init>(Ljava/io/InputStream;I)V
return-object v0
.end method
.method public a(Z)Ljava/io/OutputStream;
.locals 3
.line 264
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
sget-object v1, Lcom/badlogic/gdx/Files$FileType;->Classpath:Lcom/badlogic/gdx/Files$FileType;
if-eq v0, v1, :cond_2
.line 265
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
sget-object v1, Lcom/badlogic/gdx/Files$FileType;->Internal:Lcom/badlogic/gdx/Files$FileType;
if-eq v0, v1, :cond_1
.line 266
invoke-virtual {p0}, Lcom/badlogic/gdx/files/FileHandle;->a()Lcom/badlogic/gdx/files/FileHandle;
move-result-object v0
invoke-virtual {v0}, Lcom/badlogic/gdx/files/FileHandle;->o()V
.line 268
:try_start_0
new-instance v0, Ljava/io/FileOutputStream;
invoke-virtual {p0}, Lcom/badlogic/gdx/files/FileHandle;->f()Ljava/io/File;
move-result-object v1
invoke-direct {v0, v1, p1}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;Z)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-object v0
:catch_0
move-exception p1
.line 270
invoke-virtual {p0}, Lcom/badlogic/gdx/files/FileHandle;->f()Ljava/io/File;
move-result-object v0
invoke-virtual {v0}, Ljava/io/File;->isDirectory()Z
move-result v0
if-eqz v0, :cond_0
.line 271
new-instance v0, Lcom/badlogic/gdx/utils/GdxRuntimeException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "Cannot open a stream to a directory: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v2, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v2, " ("
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v2, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v2, ")"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1, p1}, Lcom/badlogic/gdx/utils/GdxRuntimeException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v0
.line 272
:cond_0
new-instance v0, Lcom/badlogic/gdx/utils/GdxRuntimeException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "Error writing file: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v2, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v2, " ("
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v2, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v2, ")"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1, p1}, Lcom/badlogic/gdx/utils/GdxRuntimeException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v0
.line 265
:cond_1
new-instance p1, Lcom/badlogic/gdx/utils/GdxRuntimeException;
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Cannot write to an internal file: "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Lcom/badlogic/gdx/utils/GdxRuntimeException;-><init>(Ljava/lang/String;)V
throw p1
.line 264
:cond_2
new-instance p1, Lcom/badlogic/gdx/utils/GdxRuntimeException;
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Cannot write to a classpath file: "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Lcom/badlogic/gdx/utils/GdxRuntimeException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public b(Ljava/lang/String;)Lcom/badlogic/gdx/files/FileHandle;
.locals 3
.line 497
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v0}, Ljava/io/File;->getPath()Ljava/lang/String;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/String;->length()I
move-result v0
if-eqz v0, :cond_0
.line 498
new-instance v0, Lcom/badlogic/gdx/files/FileHandle;
new-instance v1, Ljava/io/File;
iget-object v2, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v2}, Ljava/io/File;->getParent()Ljava/lang/String;
move-result-object v2
invoke-direct {v1, v2, p1}, Ljava/io/File;-><init>(Ljava/lang/String;Ljava/lang/String;)V
iget-object p1, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
invoke-direct {v0, v1, p1}, Lcom/badlogic/gdx/files/FileHandle;-><init>(Ljava/io/File;Lcom/badlogic/gdx/Files$FileType;)V
return-object v0
.line 497
:cond_0
new-instance p1, Lcom/badlogic/gdx/utils/GdxRuntimeException;
const-string v0, "Cannot get the sibling of the root."
invoke-direct {p1, v0}, Lcom/badlogic/gdx/utils/GdxRuntimeException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public b(I)Ljava/io/BufferedReader;
.locals 3
.line 175
new-instance v0, Ljava/io/BufferedReader;
new-instance v1, Ljava/io/InputStreamReader;
invoke-virtual {p0}, Lcom/badlogic/gdx/files/FileHandle;->b()Ljava/io/InputStream;
move-result-object v2
invoke-direct {v1, v2}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;)V
invoke-direct {v0, v1, p1}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;I)V
return-object v0
.end method
.method public b()Ljava/io/InputStream;
.locals 5
.line 133
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
sget-object v1, Lcom/badlogic/gdx/Files$FileType;->Classpath:Lcom/badlogic/gdx/Files$FileType;
if-eq v0, v1, :cond_3
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
sget-object v1, Lcom/badlogic/gdx/Files$FileType;->Internal:Lcom/badlogic/gdx/Files$FileType;
if-ne v0, v1, :cond_0
invoke-virtual {p0}, Lcom/badlogic/gdx/files/FileHandle;->f()Ljava/io/File;
move-result-object v0
invoke-virtual {v0}, Ljava/io/File;->exists()Z
move-result v0
if-eqz v0, :cond_3
:cond_0
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
sget-object v1, Lcom/badlogic/gdx/Files$FileType;->Local:Lcom/badlogic/gdx/Files$FileType;
if-ne v0, v1, :cond_1
.line 134
invoke-virtual {p0}, Lcom/badlogic/gdx/files/FileHandle;->f()Ljava/io/File;
move-result-object v0
invoke-virtual {v0}, Ljava/io/File;->exists()Z
move-result v0
if-nez v0, :cond_1
goto :goto_0
.line 140
:cond_1
:try_start_0
new-instance v0, Ljava/io/FileInputStream;
invoke-virtual {p0}, Lcom/badlogic/gdx/files/FileHandle;->f()Ljava/io/File;
move-result-object v1
invoke-direct {v0, v1}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-object v0
:catch_0
move-exception v0
.line 142
invoke-virtual {p0}, Lcom/badlogic/gdx/files/FileHandle;->f()Ljava/io/File;
move-result-object v1
invoke-virtual {v1}, Ljava/io/File;->isDirectory()Z
move-result v1
if-eqz v1, :cond_2
.line 143
new-instance v1, Lcom/badlogic/gdx/utils/GdxRuntimeException;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "Cannot open a stream to a directory: "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v3, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v3, " ("
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v3, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v3, ")"
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-direct {v1, v2, v0}, Lcom/badlogic/gdx/utils/GdxRuntimeException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
.line 144
:cond_2
new-instance v1, Lcom/badlogic/gdx/utils/GdxRuntimeException;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "Error reading file: "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v3, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v3, " ("
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v3, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v3, ")"
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-direct {v1, v2, v0}, Lcom/badlogic/gdx/utils/GdxRuntimeException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
.line 135
:cond_3
:goto_0
const-class v0, Lcom/badlogic/gdx/files/FileHandle;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "/"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v2, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v2}, Ljava/io/File;->getPath()Ljava/lang/String;
move-result-object v2
const/16 v3, 0x5c
const/16 v4, 0x2f
invoke-virtual {v2, v3, v4}, Ljava/lang/String;->replace(CC)Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/Class;->getResourceAsStream(Ljava/lang/String;)Ljava/io/InputStream;
move-result-object v0
if-eqz v0, :cond_4
return-object v0
.line 136
:cond_4
new-instance v0, Lcom/badlogic/gdx/utils/GdxRuntimeException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "File not found: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v2, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v2, " ("
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v2, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v2, ")"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Lcom/badlogic/gdx/utils/GdxRuntimeException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public c(Ljava/lang/String;)Ljava/io/Reader;
.locals 3
.line 163
invoke-virtual {p0}, Lcom/badlogic/gdx/files/FileHandle;->b()Ljava/io/InputStream;
move-result-object v0
.line 165
:try_start_0
new-instance v1, Ljava/io/InputStreamReader;
invoke-direct {v1, v0, p1}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;Ljava/lang/String;)V
:try_end_0
.catch Ljava/io/UnsupportedEncodingException; {:try_start_0 .. :try_end_0} :catch_0
return-object v1
:catch_0
move-exception p1
.line 167
invoke-static {v0}, Lcom/badlogic/gdx/utils/StreamUtils;->a(Ljava/io/Closeable;)V
.line 168
new-instance v0, Lcom/badlogic/gdx/utils/GdxRuntimeException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "Error reading file: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1, p1}, Lcom/badlogic/gdx/utils/GdxRuntimeException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v0
.end method
.method public c()Z
.locals 2
.line 484
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
sget-object v1, Lcom/badlogic/gdx/Files$FileType;->Classpath:Lcom/badlogic/gdx/Files$FileType;
if-ne v0, v1, :cond_0
const/4 v0, 0x0
return v0
.line 485
:cond_0
invoke-virtual {p0}, Lcom/badlogic/gdx/files/FileHandle;->f()Ljava/io/File;
move-result-object v0
invoke-virtual {v0}, Ljava/io/File;->isDirectory()Z
move-result v0
return v0
.end method
.method public d(Ljava/lang/String;)Ljava/lang/String;
.locals 4
.line 198
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {p0}, Lcom/badlogic/gdx/files/FileHandle;->p()I
move-result v1
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(I)V
const/4 v1, 0x0
if-nez p1, :cond_0
.line 202
:try_start_0
new-instance p1, Ljava/io/InputStreamReader;
invoke-virtual {p0}, Lcom/badlogic/gdx/files/FileHandle;->b()Ljava/io/InputStream;
move-result-object v2
invoke-direct {p1, v2}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;)V
move-object v1, p1
goto :goto_0
:catchall_0
move-exception p1
goto :goto_3
:catch_0
move-exception p1
goto :goto_2
.line 204
:cond_0
new-instance v2, Ljava/io/InputStreamReader;
invoke-virtual {p0}, Lcom/badlogic/gdx/files/FileHandle;->b()Ljava/io/InputStream;
move-result-object v3
invoke-direct {v2, v3, p1}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;Ljava/lang/String;)V
move-object v1, v2
:goto_0
const/16 p1, 0x100
.line 205
new-array p1, p1, [C
.line 207
:goto_1
invoke-virtual {v1, p1}, Ljava/io/InputStreamReader;->read([C)I
move-result v2
:try_end_0
.catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
const/4 v3, -0x1
if-ne v2, v3, :cond_1
.line 214
invoke-static {v1}, Lcom/badlogic/gdx/utils/StreamUtils;->a(Ljava/io/Closeable;)V
.line 216
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
return-object p1
:cond_1
const/4 v3, 0x0
.line 209
:try_start_1
invoke-virtual {v0, p1, v3, v2}, Ljava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder;
:try_end_1
.catch Ljava/io/IOException; {:try_start_1 .. :try_end_1} :catch_0
.catchall {:try_start_1 .. :try_end_1} :catchall_0
goto :goto_1
.line 212
:goto_2
:try_start_2
new-instance v0, Lcom/badlogic/gdx/utils/GdxRuntimeException;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "Error reading layout file: "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-direct {v0, v2, p1}, Lcom/badlogic/gdx/utils/GdxRuntimeException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v0
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_0
.line 214
:goto_3
invoke-static {v1}, Lcom/badlogic/gdx/utils/StreamUtils;->a(Ljava/io/Closeable;)V
.line 215
throw p1
.end method
.method public d()Z
.locals 6
.line 522
sget-object v0, Lcom/badlogic/gdx/files/FileHandle$1;->a:[I
iget-object v1, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
invoke-virtual {v1}, Lcom/badlogic/gdx/Files$FileType;->ordinal()I
move-result v1
aget v0, v0, v1
const/4 v1, 0x1
packed-switch v0, :pswitch_data_0
.line 529
invoke-virtual {p0}, Lcom/badlogic/gdx/files/FileHandle;->f()Ljava/io/File;
move-result-object v0
invoke-virtual {v0}, Ljava/io/File;->exists()Z
move-result v0
return v0
.line 524
:pswitch_0
invoke-virtual {p0}, Lcom/badlogic/gdx/files/FileHandle;->f()Ljava/io/File;
move-result-object v0
invoke-virtual {v0}, Ljava/io/File;->exists()Z
move-result v0
if-eqz v0, :cond_0
return v1
.line 527
:cond_0
:pswitch_1
const-class v0, Lcom/badlogic/gdx/files/FileHandle;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "/"
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v3, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v3}, Ljava/io/File;->getPath()Ljava/lang/String;
move-result-object v3
const/16 v4, 0x5c
const/16 v5, 0x2f
invoke-virtual {v3, v4, v5}, Ljava/lang/String;->replace(CC)Ljava/lang/String;
move-result-object v3
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-virtual {v0, v2}, Ljava/lang/Class;->getResource(Ljava/lang/String;)Ljava/net/URL;
move-result-object v0
if-eqz v0, :cond_1
goto :goto_0
:cond_1
const/4 v1, 0x0
:goto_0
return v1
:pswitch_data_0
.packed-switch 0x1
:pswitch_0
:pswitch_1
.end packed-switch
.end method
.method public e()J
.locals 3
.line 601
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
sget-object v1, Lcom/badlogic/gdx/Files$FileType;->Classpath:Lcom/badlogic/gdx/Files$FileType;
if-eq v0, v1, :cond_1
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
sget-object v1, Lcom/badlogic/gdx/Files$FileType;->Internal:Lcom/badlogic/gdx/Files$FileType;
if-ne v0, v1, :cond_0
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v0}, Ljava/io/File;->exists()Z
move-result v0
if-nez v0, :cond_0
goto :goto_0
.line 611
:cond_0
invoke-virtual {p0}, Lcom/badlogic/gdx/files/FileHandle;->f()Ljava/io/File;
move-result-object v0
invoke-virtual {v0}, Ljava/io/File;->length()J
move-result-wide v0
return-wide v0
.line 602
:cond_1
:goto_0
invoke-virtual {p0}, Lcom/badlogic/gdx/files/FileHandle;->b()Ljava/io/InputStream;
move-result-object v0
.line 604
:try_start_0
invoke-virtual {v0}, Ljava/io/InputStream;->available()I
move-result v1
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
int-to-long v1, v1
.line 607
invoke-static {v0}, Lcom/badlogic/gdx/utils/StreamUtils;->a(Ljava/io/Closeable;)V
return-wide v1
:catchall_0
move-exception v1
invoke-static {v0}, Lcom/badlogic/gdx/utils/StreamUtils;->a(Ljava/io/Closeable;)V
.line 608
throw v1
.line 607
:catch_0
invoke-static {v0}, Lcom/badlogic/gdx/utils/StreamUtils;->a(Ljava/io/Closeable;)V
const-wide/16 v0, 0x0
return-wide v0
.end method
.method public equals(Ljava/lang/Object;)Z
.locals 3
.line 623
instance-of v0, p1, Lcom/badlogic/gdx/files/FileHandle;
const/4 v1, 0x0
if-nez v0, :cond_0
return v1
.line 624
:cond_0
check-cast p1, Lcom/badlogic/gdx/files/FileHandle;
.line 625
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
iget-object v2, p1, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
if-ne v0, v2, :cond_1
invoke-virtual {p0}, Lcom/badlogic/gdx/files/FileHandle;->g()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1}, Lcom/badlogic/gdx/files/FileHandle;->g()Ljava/lang/String;
move-result-object p1
invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_1
const/4 v1, 0x1
:cond_1
return v1
.end method
.method public f()Ljava/io/File;
.locals 3
.line 126
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
sget-object v1, Lcom/badlogic/gdx/Files$FileType;->External:Lcom/badlogic/gdx/Files$FileType;
if-ne v0, v1, :cond_0
new-instance v0, Ljava/io/File;
sget-object v1, Lcom/badlogic/gdx/Gdx;->d:Lcom/badlogic/gdx/Files;
invoke-interface {v1}, Lcom/badlogic/gdx/Files;->a()Ljava/lang/String;
move-result-object v1
iget-object v2, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v2}, Ljava/io/File;->getPath()Ljava/lang/String;
move-result-object v2
invoke-direct {v0, v1, v2}, Ljava/io/File;-><init>(Ljava/lang/String;Ljava/lang/String;)V
return-object v0
.line 127
:cond_0
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
return-object v0
.end method
.method public g()Ljava/lang/String;
.locals 3
.line 87
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v0}, Ljava/io/File;->getPath()Ljava/lang/String;
move-result-object v0
const/16 v1, 0x5c
const/16 v2, 0x2f
invoke-virtual {v0, v1, v2}, Ljava/lang/String;->replace(CC)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public h()Ljava/lang/String;
.locals 1
.line 92
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v0}, Ljava/io/File;->getName()Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public hashCode()I
.locals 2
.line 631
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
invoke-virtual {v0}, Lcom/badlogic/gdx/Files$FileType;->hashCode()I
move-result v0
const/16 v1, 0x25
add-int/2addr v1, v0
mul-int/lit8 v1, v1, 0x43
.line 632
invoke-virtual {p0}, Lcom/badlogic/gdx/files/FileHandle;->g()Ljava/lang/String;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/String;->hashCode()I
move-result v0
add-int/2addr v1, v0
return v1
.end method
.method public i()Ljava/lang/String;
.locals 3
.line 96
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v0}, Ljava/io/File;->getName()Ljava/lang/String;
move-result-object v0
const/16 v1, 0x2e
.line 97
invoke-virtual {v0, v1}, Ljava/lang/String;->lastIndexOf(I)I
move-result v1
const/4 v2, -0x1
if-ne v1, v2, :cond_0
const-string v0, ""
return-object v0
:cond_0
add-int/lit8 v1, v1, 0x1
.line 99
invoke-virtual {v0, v1}, Ljava/lang/String;->substring(I)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public j()Ljava/lang/String;
.locals 3
.line 104
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v0}, Ljava/io/File;->getName()Ljava/lang/String;
move-result-object v0
const/16 v1, 0x2e
.line 105
invoke-virtual {v0, v1}, Ljava/lang/String;->lastIndexOf(I)I
move-result v1
const/4 v2, -0x1
if-ne v1, v2, :cond_0
return-object v0
:cond_0
const/4 v2, 0x0
.line 107
invoke-virtual {v0, v2, v1}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public k()Ljava/lang/String;
.locals 3
.line 113
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v0}, Ljava/io/File;->getPath()Ljava/lang/String;
move-result-object v0
const/16 v1, 0x5c
const/16 v2, 0x2f
invoke-virtual {v0, v1, v2}, Ljava/lang/String;->replace(CC)Ljava/lang/String;
move-result-object v0
const/16 v1, 0x2e
.line 114
invoke-virtual {v0, v1}, Ljava/lang/String;->lastIndexOf(I)I
move-result v1
const/4 v2, -0x1
if-ne v1, v2, :cond_0
return-object v0
:cond_0
const/4 v2, 0x0
.line 116
invoke-virtual {v0, v2, v1}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public l()Lcom/badlogic/gdx/Files$FileType;
.locals 1
.line 120
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
return-object v0
.end method
.method public m()Ljava/lang/String;
.locals 1
const/4 v0, 0x0
.line 191
invoke-virtual {p0, v0}, Lcom/badlogic/gdx/files/FileHandle;->d(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public n()[B
.locals 5
.line 222
invoke-virtual {p0}, Lcom/badlogic/gdx/files/FileHandle;->b()Ljava/io/InputStream;
move-result-object v0
.line 224
:try_start_0
invoke-direct {p0}, Lcom/badlogic/gdx/files/FileHandle;->p()I
move-result v1
invoke-static {v0, v1}, Lcom/badlogic/gdx/utils/StreamUtils;->a(Ljava/io/InputStream;I)[B
move-result-object v1
:try_end_0
.catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 228
invoke-static {v0}, Lcom/badlogic/gdx/utils/StreamUtils;->a(Ljava/io/Closeable;)V
return-object v1
:catchall_0
move-exception v1
goto :goto_0
:catch_0
move-exception v1
.line 226
:try_start_1
new-instance v2, Lcom/badlogic/gdx/utils/GdxRuntimeException;
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "Error reading file: "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-direct {v2, v3, v1}, Lcom/badlogic/gdx/utils/GdxRuntimeException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v2
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
.line 228
:goto_0
invoke-static {v0}, Lcom/badlogic/gdx/utils/StreamUtils;->a(Ljava/io/Closeable;)V
.line 229
throw v1
.end method
.method public o()V
.locals 3
.line 514
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
sget-object v1, Lcom/badlogic/gdx/Files$FileType;->Classpath:Lcom/badlogic/gdx/Files$FileType;
if-eq v0, v1, :cond_1
.line 515
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->b:Lcom/badlogic/gdx/Files$FileType;
sget-object v1, Lcom/badlogic/gdx/Files$FileType;->Internal:Lcom/badlogic/gdx/Files$FileType;
if-eq v0, v1, :cond_0
.line 516
invoke-virtual {p0}, Lcom/badlogic/gdx/files/FileHandle;->f()Ljava/io/File;
move-result-object v0
invoke-virtual {v0}, Ljava/io/File;->mkdirs()Z
return-void
.line 515
:cond_0
new-instance v0, Lcom/badlogic/gdx/utils/GdxRuntimeException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "Cannot mkdirs with an internal file: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v2, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Lcom/badlogic/gdx/utils/GdxRuntimeException;-><init>(Ljava/lang/String;)V
throw v0
.line 514
:cond_1
new-instance v0, Lcom/badlogic/gdx/utils/GdxRuntimeException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "Cannot mkdirs with a classpath file: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v2, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Lcom/badlogic/gdx/utils/GdxRuntimeException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public toString()Ljava/lang/String;
.locals 3
.line 637
iget-object v0, p0, Lcom/badlogic/gdx/files/FileHandle;->a:Ljava/io/File;
invoke-virtual {v0}, Ljava/io/File;->getPath()Ljava/lang/String;
move-result-object v0
const/16 v1, 0x5c
const/16 v2, 0x2f
invoke-virtual {v0, v1, v2}, Ljava/lang/String;->replace(CC)Ljava/lang/String;
move-result-object v0
return-object v0
.end method