Path: blob/master/Compiled_apk/smali/org/apache/commons/io/FileUtils.smali
2476 views
.class public Lorg/apache/commons/io/FileUtils; .super Ljava/lang/Object; .source "FileUtils.java" # static fields .field public static final EMPTY_FILE_ARRAY:[Ljava/io/File; .field private static final FIFTY_MB:J = 0x3200000L .field public static final ONE_GB:J = 0x40000000L .field public static final ONE_KB:J = 0x400L .field public static final ONE_MB:J = 0x100000L .field private static final UTF8:Ljava/nio/charset/Charset; # direct methods .method static constructor <clinit>()V .locals 1 .line 116 const/4 v0, 0x0 new-array v0, v0, [Ljava/io/File; sput-object v0, Lorg/apache/commons/io/FileUtils;->EMPTY_FILE_ARRAY:[Ljava/io/File; .line 121 const-string v0, "UTF-8" invoke-static {v0}, Ljava/nio/charset/Charset;->forName(Ljava/lang/String;)Ljava/nio/charset/Charset; move-result-object v0 sput-object v0, Lorg/apache/commons/io/FileUtils;->UTF8:Ljava/nio/charset/Charset; return-void .end method .method public constructor <init>()V .locals 0 .line 90 invoke-direct {p0}, Ljava/lang/Object;-><init>()V .line 91 return-void .end method .method public static byteCountToDisplaySize(J)Ljava/lang/String; .locals 7 .param p0, "size" # J .line 258 const-wide/32 v0, 0x40000000 div-long v2, p0, v0 const-wide/16 v4, 0x0 cmp-long v6, v2, v4 if-lez v6, :cond_0 .line 259 new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V div-long v0, p0, v0 invoke-static {v0, v1}, Ljava/lang/String;->valueOf(J)Ljava/lang/String; move-result-object v0 invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; const-string v0, " GB" invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 .local v0, "displaySize":Ljava/lang/String; goto :goto_0 .line 260 .end local v0 # "displaySize":Ljava/lang/String; :cond_0 const-wide/32 v0, 0x100000 div-long v2, p0, v0 cmp-long v6, v2, v4 if-lez v6, :cond_1 .line 261 new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V div-long v0, p0, v0 invoke-static {v0, v1}, Ljava/lang/String;->valueOf(J)Ljava/lang/String; move-result-object v0 invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; const-string v0, " MB" invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 .restart local v0 # "displaySize":Ljava/lang/String; goto :goto_0 .line 262 .end local v0 # "displaySize":Ljava/lang/String; :cond_1 const-wide/16 v0, 0x400 div-long v2, p0, v0 cmp-long v6, v2, v4 if-lez v6, :cond_2 .line 263 new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V div-long v0, p0, v0 invoke-static {v0, v1}, Ljava/lang/String;->valueOf(J)Ljava/lang/String; move-result-object v0 invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; const-string v0, " KB" invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 .restart local v0 # "displaySize":Ljava/lang/String; goto :goto_0 .line 265 .end local v0 # "displaySize":Ljava/lang/String; :cond_2 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V invoke-static {p0, p1}, Ljava/lang/String;->valueOf(J)Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; const-string v1, " bytes" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 .line 267 .restart local v0 # "displaySize":Ljava/lang/String; :goto_0 return-object v0 .end method .method public static checksum(Ljava/io/File;Ljava/util/zip/Checksum;)Ljava/util/zip/Checksum; .locals 3 .param p0, "file" # Ljava/io/File; .param p1, "checksum" # Ljava/util/zip/Checksum; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1988 invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z move-result v0 if-nez v0, :cond_0 .line 1991 const/4 v0, 0x0 .line 1993 .local v0, "in":Ljava/io/InputStream; :try_start_0 new-instance v1, Ljava/util/zip/CheckedInputStream; new-instance v2, Ljava/io/FileInputStream; invoke-direct {v2, p0}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V invoke-direct {v1, v2, p1}, Ljava/util/zip/CheckedInputStream;-><init>(Ljava/io/InputStream;Ljava/util/zip/Checksum;)V move-object v0, v1 .line 1994 new-instance v1, Lorg/apache/commons/io/output/NullOutputStream; invoke-direct {v1}, Lorg/apache/commons/io/output/NullOutputStream;-><init>()V invoke-static {v0, v1}, Lorg/apache/commons/io/IOUtils;->copy(Ljava/io/InputStream;Ljava/io/OutputStream;)I :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 .line 1996 invoke-static {v0}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/InputStream;)V .line 1997 nop .line 1998 return-object p1 .line 1996 :catchall_0 move-exception v1 invoke-static {v0}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/InputStream;)V throw v1 .line 1989 .end local v0 # "in":Ljava/io/InputStream; :cond_0 new-instance v0, Ljava/lang/IllegalArgumentException; const-string v1, "Checksums can\'t be computed on directories" invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V throw v0 .end method .method public static checksumCRC32(Ljava/io/File;)J .locals 3 .param p0, "file" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1965 new-instance v0, Ljava/util/zip/CRC32; invoke-direct {v0}, Ljava/util/zip/CRC32;-><init>()V .line 1966 .local v0, "crc":Ljava/util/zip/CRC32; invoke-static {p0, v0}, Lorg/apache/commons/io/FileUtils;->checksum(Ljava/io/File;Ljava/util/zip/Checksum;)Ljava/util/zip/Checksum; .line 1967 invoke-virtual {v0}, Ljava/util/zip/CRC32;->getValue()J move-result-wide v1 return-wide v1 .end method .method public static cleanDirectory(Ljava/io/File;)V .locals 7 .param p0, "directory" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1250 invoke-virtual {p0}, Ljava/io/File;->exists()Z move-result v0 if-eqz v0, :cond_4 .line 1255 invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z move-result v0 if-eqz v0, :cond_3 .line 1260 invoke-virtual {p0}, Ljava/io/File;->listFiles()[Ljava/io/File; move-result-object v0 .line 1261 .local v0, "files":[Ljava/io/File; if-eqz v0, :cond_2 .line 1265 const/4 v1, 0x0 .line 1266 .local v1, "exception":Ljava/io/IOException; move-object v2, v0 .local v2, "arr$":[Ljava/io/File; array-length v3, v2 .local v3, "len$":I const/4 v4, 0x0 .local v4, "i$":I :goto_0 if-ge v4, v3, :cond_0 aget-object v5, v2, v4 .line 1268 .local v5, "file":Ljava/io/File; :try_start_0 invoke-static {v5}, Lorg/apache/commons/io/FileUtils;->forceDelete(Ljava/io/File;)V :try_end_0 .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0 .line 1271 goto :goto_1 .line 1269 :catch_0 move-exception v6 .line 1270 .local v6, "ioe":Ljava/io/IOException; move-object v1, v6 .line 1266 .end local v5 # "file":Ljava/io/File; .end local v6 # "ioe":Ljava/io/IOException; :goto_1 add-int/lit8 v4, v4, 0x1 goto :goto_0 .line 1274 .end local v2 # "arr$":[Ljava/io/File; .end local v3 # "len$":I .end local v4 # "i$":I :cond_0 if-nez v1, :cond_1 .line 1277 return-void .line 1275 :cond_1 throw v1 .line 1262 .end local v1 # "exception":Ljava/io/IOException; :cond_2 new-instance v1, Ljava/io/IOException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V const-string v3, "Failed to list contents of " 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 {v1, v2}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v1 .line 1256 .end local v0 # "files":[Ljava/io/File; :cond_3 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, " is not a directory" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 .line 1257 .local v0, "message":Ljava/lang/String; new-instance v1, Ljava/lang/IllegalArgumentException; invoke-direct {v1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V throw v1 .line 1251 .end local v0 # "message":Ljava/lang/String; :cond_4 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, " does not exist" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 .line 1252 .restart local v0 # "message":Ljava/lang/String; new-instance v1, Ljava/lang/IllegalArgumentException; invoke-direct {v1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V goto :goto_3 :goto_2 throw v1 :goto_3 goto :goto_2 .end method .method private static cleanDirectoryOnExit(Ljava/io/File;)V .locals 7 .param p0, "directory" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1690 invoke-virtual {p0}, Ljava/io/File;->exists()Z move-result v0 if-eqz v0, :cond_4 .line 1695 invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z move-result v0 if-eqz v0, :cond_3 .line 1700 invoke-virtual {p0}, Ljava/io/File;->listFiles()[Ljava/io/File; move-result-object v0 .line 1701 .local v0, "files":[Ljava/io/File; if-eqz v0, :cond_2 .line 1705 const/4 v1, 0x0 .line 1706 .local v1, "exception":Ljava/io/IOException; move-object v2, v0 .local v2, "arr$":[Ljava/io/File; array-length v3, v2 .local v3, "len$":I const/4 v4, 0x0 .local v4, "i$":I :goto_0 if-ge v4, v3, :cond_0 aget-object v5, v2, v4 .line 1708 .local v5, "file":Ljava/io/File; :try_start_0 invoke-static {v5}, Lorg/apache/commons/io/FileUtils;->forceDeleteOnExit(Ljava/io/File;)V :try_end_0 .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0 .line 1711 goto :goto_1 .line 1709 :catch_0 move-exception v6 .line 1710 .local v6, "ioe":Ljava/io/IOException; move-object v1, v6 .line 1706 .end local v5 # "file":Ljava/io/File; .end local v6 # "ioe":Ljava/io/IOException; :goto_1 add-int/lit8 v4, v4, 0x1 goto :goto_0 .line 1714 .end local v2 # "arr$":[Ljava/io/File; .end local v3 # "len$":I .end local v4 # "i$":I :cond_0 if-nez v1, :cond_1 .line 1717 return-void .line 1715 :cond_1 throw v1 .line 1702 .end local v1 # "exception":Ljava/io/IOException; :cond_2 new-instance v1, Ljava/io/IOException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V const-string v3, "Failed to list contents of " 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 {v1, v2}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v1 .line 1696 .end local v0 # "files":[Ljava/io/File; :cond_3 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, " is not a directory" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 .line 1697 .local v0, "message":Ljava/lang/String; new-instance v1, Ljava/lang/IllegalArgumentException; invoke-direct {v1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V throw v1 .line 1691 .end local v0 # "message":Ljava/lang/String; :cond_4 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, " does not exist" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 .line 1692 .restart local v0 # "message":Ljava/lang/String; new-instance v1, Ljava/lang/IllegalArgumentException; invoke-direct {v1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V goto :goto_3 :goto_2 throw v1 :goto_3 goto :goto_2 .end method .method public static contentEquals(Ljava/io/File;Ljava/io/File;)Z .locals 8 .param p0, "file1" # Ljava/io/File; .param p1, "file2" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 481 invoke-virtual {p0}, Ljava/io/File;->exists()Z move-result v0 .line 482 .local v0, "file1Exists":Z invoke-virtual {p1}, Ljava/io/File;->exists()Z move-result v1 const/4 v2, 0x0 if-eq v0, v1, :cond_0 .line 483 return v2 .line 486 :cond_0 const/4 v1, 0x1 if-nez v0, :cond_1 .line 488 return v1 .line 491 :cond_1 invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z move-result v3 if-nez v3, :cond_4 invoke-virtual {p1}, Ljava/io/File;->isDirectory()Z move-result v3 if-nez v3, :cond_4 .line 496 invoke-virtual {p0}, Ljava/io/File;->length()J move-result-wide v3 invoke-virtual {p1}, Ljava/io/File;->length()J move-result-wide v5 cmp-long v7, v3, v5 if-eqz v7, :cond_2 .line 498 return v2 .line 501 :cond_2 invoke-virtual {p0}, Ljava/io/File;->getCanonicalFile()Ljava/io/File; move-result-object v2 invoke-virtual {p1}, Ljava/io/File;->getCanonicalFile()Ljava/io/File; move-result-object v3 invoke-virtual {v2, v3}, Ljava/io/File;->equals(Ljava/lang/Object;)Z move-result v2 if-eqz v2, :cond_3 .line 503 return v1 .line 506 :cond_3 const/4 v1, 0x0 .line 507 .local v1, "input1":Ljava/io/InputStream; const/4 v2, 0x0 .line 509 .local v2, "input2":Ljava/io/InputStream; :try_start_0 new-instance v3, Ljava/io/FileInputStream; invoke-direct {v3, p0}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V move-object v1, v3 .line 510 new-instance v3, Ljava/io/FileInputStream; invoke-direct {v3, p1}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V move-object v2, v3 .line 511 invoke-static {v1, v2}, Lorg/apache/commons/io/IOUtils;->contentEquals(Ljava/io/InputStream;Ljava/io/InputStream;)Z move-result v3 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 .line 514 invoke-static {v1}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/InputStream;)V .line 515 invoke-static {v2}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/InputStream;)V return v3 .line 514 :catchall_0 move-exception v3 invoke-static {v1}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/InputStream;)V .line 515 invoke-static {v2}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/InputStream;)V throw v3 .line 493 .end local v1 # "input1":Ljava/io/InputStream; .end local v2 # "input2":Ljava/io/InputStream; :cond_4 new-instance v1, Ljava/io/IOException; const-string v2, "Can\'t compare directories, only files" invoke-direct {v1, v2}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v1 .end method .method public static convertFileCollectionToFileArray(Ljava/util/Collection;)[Ljava/io/File; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/Collection<", "Ljava/io/File;", ">;)[", "Ljava/io/File;" } .end annotation .line 304 .local p0, "files":Ljava/util/Collection;, "Ljava/util/Collection<Ljava/io/File;>;" invoke-interface {p0}, Ljava/util/Collection;->size()I move-result v0 new-array v0, v0, [Ljava/io/File; invoke-interface {p0, v0}, Ljava/util/Collection;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; move-result-object v0 check-cast v0, [Ljava/io/File; return-object v0 .end method .method public static copyDirectory(Ljava/io/File;Ljava/io/File;)V .locals 1 .param p0, "srcDir" # Ljava/io/File; .param p1, "destDir" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 896 const/4 v0, 0x1 invoke-static {p0, p1, v0}, Lorg/apache/commons/io/FileUtils;->copyDirectory(Ljava/io/File;Ljava/io/File;Z)V .line 897 return-void .end method .method public static copyDirectory(Ljava/io/File;Ljava/io/File;Ljava/io/FileFilter;)V .locals 1 .param p0, "srcDir" # Ljava/io/File; .param p1, "destDir" # Ljava/io/File; .param p2, "filter" # Ljava/io/FileFilter; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 976 const/4 v0, 0x1 invoke-static {p0, p1, p2, v0}, Lorg/apache/commons/io/FileUtils;->copyDirectory(Ljava/io/File;Ljava/io/File;Ljava/io/FileFilter;Z)V .line 977 return-void .end method .method public static copyDirectory(Ljava/io/File;Ljava/io/File;Ljava/io/FileFilter;Z)V .locals 8 .param p0, "srcDir" # Ljava/io/File; .param p1, "destDir" # Ljava/io/File; .param p2, "filter" # Ljava/io/FileFilter; .param p3, "preserveFileDate" # Z .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1027 if-eqz p0, :cond_6 .line 1030 if-eqz p1, :cond_5 .line 1033 invoke-virtual {p0}, Ljava/io/File;->exists()Z move-result v0 const-string v1, "Source \'" if-eqz v0, :cond_4 .line 1036 invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z move-result v0 if-eqz v0, :cond_3 .line 1039 invoke-virtual {p0}, Ljava/io/File;->getCanonicalPath()Ljava/lang/String; move-result-object v0 invoke-virtual {p1}, Ljava/io/File;->getCanonicalPath()Ljava/lang/String; move-result-object v2 invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v0 if-nez v0, :cond_2 .line 1044 const/4 v0, 0x0 .line 1045 .local v0, "exclusionList":Ljava/util/List;, "Ljava/util/List<Ljava/lang/String;>;" invoke-virtual {p1}, Ljava/io/File;->getCanonicalPath()Ljava/lang/String; move-result-object v1 invoke-virtual {p0}, Ljava/io/File;->getCanonicalPath()Ljava/lang/String; move-result-object v2 invoke-virtual {v1, v2}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z move-result v1 if-eqz v1, :cond_1 .line 1046 if-nez p2, :cond_0 invoke-virtual {p0}, Ljava/io/File;->listFiles()[Ljava/io/File; move-result-object v1 goto :goto_0 :cond_0 invoke-virtual {p0, p2}, Ljava/io/File;->listFiles(Ljava/io/FileFilter;)[Ljava/io/File; move-result-object v1 .line 1047 .local v1, "srcFiles":[Ljava/io/File; :goto_0 if-eqz v1, :cond_1 array-length v2, v1 if-lez v2, :cond_1 .line 1048 new-instance v2, Ljava/util/ArrayList; array-length v3, v1 invoke-direct {v2, v3}, Ljava/util/ArrayList;-><init>(I)V move-object v0, v2 .line 1049 move-object v2, v1 .local v2, "arr$":[Ljava/io/File; array-length v3, v2 .local v3, "len$":I const/4 v4, 0x0 .local v4, "i$":I :goto_1 if-ge v4, v3, :cond_1 aget-object v5, v2, v4 .line 1050 .local v5, "srcFile":Ljava/io/File; new-instance v6, Ljava/io/File; invoke-virtual {v5}, Ljava/io/File;->getName()Ljava/lang/String; move-result-object v7 invoke-direct {v6, p1, v7}, Ljava/io/File;-><init>(Ljava/io/File;Ljava/lang/String;)V .line 1051 .local v6, "copiedFile":Ljava/io/File; invoke-virtual {v6}, Ljava/io/File;->getCanonicalPath()Ljava/lang/String; move-result-object v7 invoke-interface {v0, v7}, Ljava/util/List;->add(Ljava/lang/Object;)Z .line 1049 .end local v5 # "srcFile":Ljava/io/File; .end local v6 # "copiedFile":Ljava/io/File; add-int/lit8 v4, v4, 0x1 goto :goto_1 .line 1055 .end local v1 # "srcFiles":[Ljava/io/File; .end local v2 # "arr$":[Ljava/io/File; .end local v3 # "len$":I .end local v4 # "i$":I :cond_1 invoke-static {p0, p1, p2, p3, v0}, Lorg/apache/commons/io/FileUtils;->doCopyDirectory(Ljava/io/File;Ljava/io/File;Ljava/io/FileFilter;ZLjava/util/List;)V .line 1056 return-void .line 1040 .end local v0 # "exclusionList":Ljava/util/List;, "Ljava/util/List<Ljava/lang/String;>;" :cond_2 new-instance v0, Ljava/io/IOException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, "\' and destination \'" invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, "\' are the same" invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v0 .line 1037 :cond_3 new-instance v0, Ljava/io/IOException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, "\' exists but is not a directory" invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v0 .line 1034 :cond_4 new-instance v0, Ljava/io/FileNotFoundException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, "\' does not exist" invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/io/FileNotFoundException;-><init>(Ljava/lang/String;)V throw v0 .line 1031 :cond_5 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "Destination must not be null" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V throw v0 .line 1028 :cond_6 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "Source must not be null" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V goto :goto_3 :goto_2 throw v0 :goto_3 goto :goto_2 .end method .method public static copyDirectory(Ljava/io/File;Ljava/io/File;Z)V .locals 1 .param p0, "srcDir" # Ljava/io/File; .param p1, "destDir" # Ljava/io/File; .param p2, "preserveFileDate" # Z .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 927 const/4 v0, 0x0 invoke-static {p0, p1, v0, p2}, Lorg/apache/commons/io/FileUtils;->copyDirectory(Ljava/io/File;Ljava/io/File;Ljava/io/FileFilter;Z)V .line 928 return-void .end method .method public static copyDirectoryToDirectory(Ljava/io/File;Ljava/io/File;)V .locals 4 .param p0, "srcDir" # Ljava/io/File; .param p1, "destDir" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 856 if-eqz p0, :cond_5 .line 859 invoke-virtual {p0}, Ljava/io/File;->exists()Z move-result v0 const-string v1, "\' is not a directory" if-eqz v0, :cond_1 invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z move-result v0 if-eqz v0, :cond_0 goto :goto_0 .line 860 :cond_0 new-instance v0, Ljava/lang/IllegalArgumentException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V const-string v3, "Source \'" invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V throw v0 .line 862 :cond_1 :goto_0 if-eqz p1, :cond_4 .line 865 invoke-virtual {p1}, Ljava/io/File;->exists()Z move-result v0 if-eqz v0, :cond_3 invoke-virtual {p1}, Ljava/io/File;->isDirectory()Z move-result v0 if-eqz v0, :cond_2 goto :goto_1 .line 866 :cond_2 new-instance v0, Ljava/lang/IllegalArgumentException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V const-string v3, "Destination \'" invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V throw v0 .line 868 :cond_3 :goto_1 new-instance v0, Ljava/io/File; invoke-virtual {p0}, Ljava/io/File;->getName()Ljava/lang/String; move-result-object v1 invoke-direct {v0, p1, v1}, Ljava/io/File;-><init>(Ljava/io/File;Ljava/lang/String;)V const/4 v1, 0x1 invoke-static {p0, v0, v1}, Lorg/apache/commons/io/FileUtils;->copyDirectory(Ljava/io/File;Ljava/io/File;Z)V .line 869 return-void .line 863 :cond_4 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "Destination must not be null" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V throw v0 .line 857 :cond_5 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "Source must not be null" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V throw v0 .end method .method public static copyFile(Ljava/io/File;Ljava/io/File;)V .locals 1 .param p0, "srcFile" # Ljava/io/File; .param p1, "destFile" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 731 const/4 v0, 0x1 invoke-static {p0, p1, v0}, Lorg/apache/commons/io/FileUtils;->copyFile(Ljava/io/File;Ljava/io/File;Z)V .line 732 return-void .end method .method public static copyFile(Ljava/io/File;Ljava/io/File;Z)V .locals 3 .param p0, "srcFile" # Ljava/io/File; .param p1, "destFile" # Ljava/io/File; .param p2, "preserveFileDate" # Z .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 760 if-eqz p0, :cond_8 .line 763 if-eqz p1, :cond_7 .line 766 invoke-virtual {p0}, Ljava/io/File;->exists()Z move-result v0 const-string v1, "Source \'" if-eqz v0, :cond_6 .line 769 invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z move-result v0 if-nez v0, :cond_5 .line 772 invoke-virtual {p0}, Ljava/io/File;->getCanonicalPath()Ljava/lang/String; move-result-object v0 invoke-virtual {p1}, Ljava/io/File;->getCanonicalPath()Ljava/lang/String; move-result-object v2 invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v0 if-nez v0, :cond_4 .line 775 invoke-virtual {p1}, Ljava/io/File;->getParentFile()Ljava/io/File; move-result-object v0 const-string v1, "Destination \'" if-eqz v0, :cond_1 invoke-virtual {p1}, Ljava/io/File;->getParentFile()Ljava/io/File; move-result-object v0 invoke-virtual {v0}, Ljava/io/File;->exists()Z move-result v0 if-nez v0, :cond_1 .line 776 invoke-virtual {p1}, Ljava/io/File;->getParentFile()Ljava/io/File; move-result-object v0 invoke-virtual {v0}, Ljava/io/File;->mkdirs()Z move-result v0 if-eqz v0, :cond_0 goto :goto_0 .line 777 :cond_0 new-instance v0, Ljava/io/IOException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, "\' directory cannot be created" invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v0 .line 780 :cond_1 :goto_0 invoke-virtual {p1}, Ljava/io/File;->exists()Z move-result v0 if-eqz v0, :cond_3 invoke-virtual {p1}, Ljava/io/File;->canWrite()Z move-result v0 if-eqz v0, :cond_2 goto :goto_1 .line 781 :cond_2 new-instance v0, Ljava/io/IOException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, "\' exists but is read-only" invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v0 .line 783 :cond_3 :goto_1 invoke-static {p0, p1, p2}, Lorg/apache/commons/io/FileUtils;->doCopyFile(Ljava/io/File;Ljava/io/File;Z)V .line 784 return-void .line 773 :cond_4 new-instance v0, Ljava/io/IOException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, "\' and destination \'" invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, "\' are the same" invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v0 .line 770 :cond_5 new-instance v0, Ljava/io/IOException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, "\' exists but is a directory" invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v0 .line 767 :cond_6 new-instance v0, Ljava/io/FileNotFoundException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, "\' does not exist" invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/io/FileNotFoundException;-><init>(Ljava/lang/String;)V throw v0 .line 764 :cond_7 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "Destination must not be null" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V throw v0 .line 761 :cond_8 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "Source must not be null" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V throw v0 .end method .method public static copyFileToDirectory(Ljava/io/File;Ljava/io/File;)V .locals 1 .param p0, "srcFile" # Ljava/io/File; .param p1, "destDir" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 670 const/4 v0, 0x1 invoke-static {p0, p1, v0}, Lorg/apache/commons/io/FileUtils;->copyFileToDirectory(Ljava/io/File;Ljava/io/File;Z)V .line 671 return-void .end method .method public static copyFileToDirectory(Ljava/io/File;Ljava/io/File;Z)V .locals 3 .param p0, "srcFile" # Ljava/io/File; .param p1, "destDir" # Ljava/io/File; .param p2, "preserveFileDate" # Z .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 699 if-eqz p1, :cond_2 .line 702 invoke-virtual {p1}, Ljava/io/File;->exists()Z move-result v0 if-eqz v0, :cond_1 invoke-virtual {p1}, Ljava/io/File;->isDirectory()Z move-result v0 if-eqz v0, :cond_0 goto :goto_0 .line 703 :cond_0 new-instance v0, Ljava/lang/IllegalArgumentException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V const-string v2, "Destination \'" invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v2, "\' is not a directory" 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}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V throw v0 .line 705 :cond_1 :goto_0 new-instance v0, Ljava/io/File; invoke-virtual {p0}, Ljava/io/File;->getName()Ljava/lang/String; move-result-object v1 invoke-direct {v0, p1, v1}, Ljava/io/File;-><init>(Ljava/io/File;Ljava/lang/String;)V .line 706 .local v0, "destFile":Ljava/io/File; invoke-static {p0, v0, p2}, Lorg/apache/commons/io/FileUtils;->copyFile(Ljava/io/File;Ljava/io/File;Z)V .line 707 return-void .line 700 .end local v0 # "destFile":Ljava/io/File; :cond_2 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "Destination must not be null" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V throw v0 .end method .method public static copyInputStreamToFile(Ljava/io/InputStream;Ljava/io/File;)V .locals 2 .param p0, "source" # Ljava/io/InputStream; .param p1, "destination" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1176 :try_start_0 invoke-static {p1}, Lorg/apache/commons/io/FileUtils;->openOutputStream(Ljava/io/File;)Ljava/io/FileOutputStream; move-result-object v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_1 .line 1178 .local v0, "output":Ljava/io/FileOutputStream; :try_start_1 invoke-static {p0, v0}, Lorg/apache/commons/io/IOUtils;->copy(Ljava/io/InputStream;Ljava/io/OutputStream;)I :try_end_1 .catchall {:try_start_1 .. :try_end_1} :catchall_0 .line 1180 :try_start_2 invoke-static {v0}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/OutputStream;)V :try_end_2 .catchall {:try_start_2 .. :try_end_2} :catchall_1 .line 1181 nop .line 1183 .end local v0 # "output":Ljava/io/FileOutputStream; invoke-static {p0}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/InputStream;)V .line 1184 nop .line 1185 return-void .line 1180 .restart local v0 # "output":Ljava/io/FileOutputStream; :catchall_0 move-exception v1 :try_start_3 invoke-static {v0}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/OutputStream;)V .end local p0 # "source":Ljava/io/InputStream; .end local p1 # "destination":Ljava/io/File; throw v1 :try_end_3 .catchall {:try_start_3 .. :try_end_3} :catchall_1 .line 1183 .end local v0 # "output":Ljava/io/FileOutputStream; .restart local p0 # "source":Ljava/io/InputStream; .restart local p1 # "destination":Ljava/io/File; :catchall_1 move-exception v0 invoke-static {p0}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/InputStream;)V throw v0 .end method .method public static copyURLToFile(Ljava/net/URL;Ljava/io/File;)V .locals 1 .param p0, "source" # Ljava/net/URL; .param p1, "destination" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1126 invoke-virtual {p0}, Ljava/net/URL;->openStream()Ljava/io/InputStream; move-result-object v0 .line 1127 .local v0, "input":Ljava/io/InputStream; invoke-static {v0, p1}, Lorg/apache/commons/io/FileUtils;->copyInputStreamToFile(Ljava/io/InputStream;Ljava/io/File;)V .line 1128 return-void .end method .method public static copyURLToFile(Ljava/net/URL;Ljava/io/File;II)V .locals 2 .param p0, "source" # Ljava/net/URL; .param p1, "destination" # Ljava/io/File; .param p2, "connectionTimeout" # I .param p3, "readTimeout" # I .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1152 invoke-virtual {p0}, Ljava/net/URL;->openConnection()Ljava/net/URLConnection; move-result-object v0 .line 1153 .local v0, "connection":Ljava/net/URLConnection; invoke-virtual {v0, p2}, Ljava/net/URLConnection;->setConnectTimeout(I)V .line 1154 invoke-virtual {v0, p3}, Ljava/net/URLConnection;->setReadTimeout(I)V .line 1155 invoke-virtual {v0}, Ljava/net/URLConnection;->getInputStream()Ljava/io/InputStream; move-result-object v1 .line 1156 .local v1, "input":Ljava/io/InputStream; invoke-static {v1, p1}, Lorg/apache/commons/io/FileUtils;->copyInputStreamToFile(Ljava/io/InputStream;Ljava/io/File;)V .line 1157 return-void .end method .method static decodeUrl(Ljava/lang/String;)Ljava/lang/String; .locals 8 .param p0, "url" # Ljava/lang/String; .line 559 move-object v0, p0 .line 560 .local v0, "decoded":Ljava/lang/String; if-eqz p0, :cond_6 const/16 v1, 0x25 invoke-virtual {p0, v1}, Ljava/lang/String;->indexOf(I)I move-result v2 if-ltz v2, :cond_6 .line 561 invoke-virtual {p0}, Ljava/lang/String;->length()I move-result v2 .line 562 .local v2, "n":I new-instance v3, Ljava/lang/StringBuffer; invoke-direct {v3}, Ljava/lang/StringBuffer;-><init>()V .line 563 .local v3, "buffer":Ljava/lang/StringBuffer; invoke-static {v2}, Ljava/nio/ByteBuffer;->allocate(I)Ljava/nio/ByteBuffer; move-result-object v4 .line 564 .local v4, "bytes":Ljava/nio/ByteBuffer; const/4 v5, 0x0 .local v5, "i":I :cond_0 :goto_0 if-ge v5, v2, :cond_5 .line 565 invoke-virtual {p0, v5}, Ljava/lang/String;->charAt(I)C move-result v6 if-ne v6, v1, :cond_4 .line 568 :cond_1 add-int/lit8 v6, v5, 0x1 add-int/lit8 v7, v5, 0x3 :try_start_0 invoke-virtual {p0, v6, v7}, Ljava/lang/String;->substring(II)Ljava/lang/String; move-result-object v6 const/16 v7, 0x10 invoke-static {v6, v7}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;I)I move-result v6 int-to-byte v6, v6 .line 569 .local v6, "octet":B invoke-virtual {v4, v6}, Ljava/nio/ByteBuffer;->put(B)Ljava/nio/ByteBuffer; .line 570 nop .end local v6 # "octet":B add-int/lit8 v5, v5, 0x3 .line 571 if-ge v5, v2, :cond_2 invoke-virtual {p0, v5}, Ljava/lang/String;->charAt(I)C move-result v6 :try_end_0 .catch Ljava/lang/RuntimeException; {:try_start_0 .. :try_end_0} :catch_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 if-eq v6, v1, :cond_1 .line 577 :cond_2 invoke-virtual {v4}, Ljava/nio/ByteBuffer;->position()I move-result v6 if-lez v6, :cond_0 .line 578 invoke-virtual {v4}, Ljava/nio/ByteBuffer;->flip()Ljava/nio/Buffer; .line 579 sget-object v6, Lorg/apache/commons/io/FileUtils;->UTF8:Ljava/nio/charset/Charset; invoke-virtual {v6, v4}, Ljava/nio/charset/Charset;->decode(Ljava/nio/ByteBuffer;)Ljava/nio/CharBuffer; move-result-object v6 invoke-virtual {v6}, Ljava/nio/CharBuffer;->toString()Ljava/lang/String; move-result-object v6 invoke-virtual {v3, v6}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer; .line 580 invoke-virtual {v4}, Ljava/nio/ByteBuffer;->clear()Ljava/nio/Buffer; goto :goto_0 .line 577 :catchall_0 move-exception v1 invoke-virtual {v4}, Ljava/nio/ByteBuffer;->position()I move-result v6 if-lez v6, :cond_3 .line 578 invoke-virtual {v4}, Ljava/nio/ByteBuffer;->flip()Ljava/nio/Buffer; .line 579 sget-object v6, Lorg/apache/commons/io/FileUtils;->UTF8:Ljava/nio/charset/Charset; invoke-virtual {v6, v4}, Ljava/nio/charset/Charset;->decode(Ljava/nio/ByteBuffer;)Ljava/nio/CharBuffer; move-result-object v6 invoke-virtual {v6}, Ljava/nio/CharBuffer;->toString()Ljava/lang/String; move-result-object v6 invoke-virtual {v3, v6}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer; .line 580 invoke-virtual {v4}, Ljava/nio/ByteBuffer;->clear()Ljava/nio/Buffer; :cond_3 throw v1 .line 573 :catch_0 move-exception v6 .line 577 invoke-virtual {v4}, Ljava/nio/ByteBuffer;->position()I move-result v6 if-lez v6, :cond_4 .line 578 invoke-virtual {v4}, Ljava/nio/ByteBuffer;->flip()Ljava/nio/Buffer; .line 579 sget-object v6, Lorg/apache/commons/io/FileUtils;->UTF8:Ljava/nio/charset/Charset; invoke-virtual {v6, v4}, Ljava/nio/charset/Charset;->decode(Ljava/nio/ByteBuffer;)Ljava/nio/CharBuffer; move-result-object v6 invoke-virtual {v6}, Ljava/nio/CharBuffer;->toString()Ljava/lang/String; move-result-object v6 invoke-virtual {v3, v6}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer; .line 580 invoke-virtual {v4}, Ljava/nio/ByteBuffer;->clear()Ljava/nio/Buffer; .line 584 :cond_4 add-int/lit8 v6, v5, 0x1 .end local v5 # "i":I .local v6, "i":I invoke-virtual {p0, v5}, Ljava/lang/String;->charAt(I)C move-result v5 invoke-virtual {v3, v5}, Ljava/lang/StringBuffer;->append(C)Ljava/lang/StringBuffer; move v5, v6 goto :goto_0 .line 586 .end local v6 # "i":I :cond_5 invoke-virtual {v3}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String; move-result-object v0 .line 588 .end local v2 # "n":I .end local v3 # "buffer":Ljava/lang/StringBuffer; .end local v4 # "bytes":Ljava/nio/ByteBuffer; :cond_6 return-object v0 .end method .method public static deleteDirectory(Ljava/io/File;)V .locals 2 .param p0, "directory" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1195 invoke-virtual {p0}, Ljava/io/File;->exists()Z move-result v0 if-nez v0, :cond_0 .line 1196 return-void .line 1199 :cond_0 invoke-static {p0}, Lorg/apache/commons/io/FileUtils;->isSymlink(Ljava/io/File;)Z move-result v0 if-nez v0, :cond_1 .line 1200 invoke-static {p0}, Lorg/apache/commons/io/FileUtils;->cleanDirectory(Ljava/io/File;)V .line 1203 :cond_1 invoke-virtual {p0}, Ljava/io/File;->delete()Z move-result v0 if-eqz v0, :cond_2 .line 1208 return-void .line 1204 :cond_2 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V const-string v1, "Unable to delete directory " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, "." invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 .line 1206 .local v0, "message":Ljava/lang/String; new-instance v1, Ljava/io/IOException; invoke-direct {v1, v0}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v1 .end method .method private static deleteDirectoryOnExit(Ljava/io/File;)V .locals 1 .param p0, "directory" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1672 invoke-virtual {p0}, Ljava/io/File;->exists()Z move-result v0 if-nez v0, :cond_0 .line 1673 return-void .line 1676 :cond_0 invoke-static {p0}, Lorg/apache/commons/io/FileUtils;->isSymlink(Ljava/io/File;)Z move-result v0 if-nez v0, :cond_1 .line 1677 invoke-static {p0}, Lorg/apache/commons/io/FileUtils;->cleanDirectoryOnExit(Ljava/io/File;)V .line 1679 :cond_1 invoke-virtual {p0}, Ljava/io/File;->deleteOnExit()V .line 1680 return-void .end method .method public static deleteQuietly(Ljava/io/File;)Z .locals 2 .param p0, "file" # Ljava/io/File; .line 1226 const/4 v0, 0x0 if-nez p0, :cond_0 .line 1227 return v0 .line 1230 :cond_0 :try_start_0 invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z move-result v1 if-eqz v1, :cond_1 .line 1231 invoke-static {p0}, Lorg/apache/commons/io/FileUtils;->cleanDirectory(Ljava/io/File;)V :try_end_0 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0 .line 1234 :cond_1 goto :goto_0 .line 1233 :catch_0 move-exception v1 .line 1237 :goto_0 :try_start_1 invoke-virtual {p0}, Ljava/io/File;->delete()Z move-result v0 :try_end_1 .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1} :catch_1 return v0 .line 1238 :catch_1 move-exception v1 .line 1239 .local v1, "ignored":Ljava/lang/Exception; return v0 .end method .method private static doCopyDirectory(Ljava/io/File;Ljava/io/File;Ljava/io/FileFilter;ZLjava/util/List;)V .locals 7 .param p0, "srcDir" # Ljava/io/File; .param p1, "destDir" # Ljava/io/File; .param p2, "filter" # Ljava/io/FileFilter; .param p3, "preserveFileDate" # Z .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/io/File;", "Ljava/io/File;", "Ljava/io/FileFilter;", "Z", "Ljava/util/List<", "Ljava/lang/String;", ">;)V" } .end annotation .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1072 .local p4, "exclusionList":Ljava/util/List;, "Ljava/util/List<Ljava/lang/String;>;" if-nez p2, :cond_0 invoke-virtual {p0}, Ljava/io/File;->listFiles()[Ljava/io/File; move-result-object v0 goto :goto_0 :cond_0 invoke-virtual {p0, p2}, Ljava/io/File;->listFiles(Ljava/io/FileFilter;)[Ljava/io/File; move-result-object v0 .line 1073 .local v0, "files":[Ljava/io/File; :goto_0 if-eqz v0, :cond_a .line 1076 invoke-virtual {p1}, Ljava/io/File;->exists()Z move-result v1 const-string v2, "Destination \'" if-eqz v1, :cond_2 .line 1077 invoke-virtual {p1}, Ljava/io/File;->isDirectory()Z move-result v1 if-eqz v1, :cond_1 goto :goto_1 .line 1078 :cond_1 new-instance v1, Ljava/io/IOException; new-instance v3, Ljava/lang/StringBuilder; invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v2, "\' exists but is not a directory" invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v2 invoke-direct {v1, v2}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v1 .line 1081 :cond_2 invoke-virtual {p1}, Ljava/io/File;->mkdirs()Z move-result v1 if-eqz v1, :cond_9 .line 1085 :goto_1 invoke-virtual {p1}, Ljava/io/File;->canWrite()Z move-result v1 if-eqz v1, :cond_8 .line 1088 move-object v1, v0 .local v1, "arr$":[Ljava/io/File; array-length v2, v1 .local v2, "len$":I const/4 v3, 0x0 .local v3, "i$":I :goto_2 if-ge v3, v2, :cond_6 aget-object v4, v1, v3 .line 1089 .local v4, "file":Ljava/io/File; new-instance v5, Ljava/io/File; invoke-virtual {v4}, Ljava/io/File;->getName()Ljava/lang/String; move-result-object v6 invoke-direct {v5, p1, v6}, Ljava/io/File;-><init>(Ljava/io/File;Ljava/lang/String;)V .line 1090 .local v5, "copiedFile":Ljava/io/File; if-eqz p4, :cond_3 invoke-virtual {v4}, Ljava/io/File;->getCanonicalPath()Ljava/lang/String; move-result-object v6 invoke-interface {p4, v6}, Ljava/util/List;->contains(Ljava/lang/Object;)Z move-result v6 if-nez v6, :cond_5 .line 1091 :cond_3 invoke-virtual {v4}, Ljava/io/File;->isDirectory()Z move-result v6 if-eqz v6, :cond_4 .line 1092 invoke-static {v4, v5, p2, p3, p4}, Lorg/apache/commons/io/FileUtils;->doCopyDirectory(Ljava/io/File;Ljava/io/File;Ljava/io/FileFilter;ZLjava/util/List;)V goto :goto_3 .line 1094 :cond_4 invoke-static {v4, v5, p3}, Lorg/apache/commons/io/FileUtils;->doCopyFile(Ljava/io/File;Ljava/io/File;Z)V .line 1088 .end local v4 # "file":Ljava/io/File; .end local v5 # "copiedFile":Ljava/io/File; :cond_5 :goto_3 add-int/lit8 v3, v3, 0x1 goto :goto_2 .line 1100 .end local v1 # "arr$":[Ljava/io/File; .end local v2 # "len$":I .end local v3 # "i$":I :cond_6 if-eqz p3, :cond_7 .line 1101 invoke-virtual {p0}, Ljava/io/File;->lastModified()J move-result-wide v1 invoke-virtual {p1, v1, v2}, Ljava/io/File;->setLastModified(J)Z .line 1103 :cond_7 return-void .line 1086 :cond_8 new-instance v1, Ljava/io/IOException; new-instance v3, Ljava/lang/StringBuilder; invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v2, "\' cannot be written to" invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v2 invoke-direct {v1, v2}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v1 .line 1082 :cond_9 new-instance v1, Ljava/io/IOException; new-instance v3, Ljava/lang/StringBuilder; invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v2, "\' directory cannot be created" invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v2 invoke-direct {v1, v2}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v1 .line 1074 :cond_a new-instance v1, Ljava/io/IOException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V const-string v3, "Failed to list contents of " 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 {v1, v2}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V goto :goto_5 :goto_4 throw v1 :goto_5 goto :goto_4 .end method .method private static doCopyFile(Ljava/io/File;Ljava/io/File;Z)V .locals 17 .param p0, "srcFile" # Ljava/io/File; .param p1, "destFile" # Ljava/io/File; .param p2, "preserveFileDate" # Z .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 795 move-object/from16 v1, p0 move-object/from16 v2, p1 invoke-virtual/range {p1 .. p1}, Ljava/io/File;->exists()Z move-result v0 if-eqz v0, :cond_1 invoke-virtual/range {p1 .. p1}, Ljava/io/File;->isDirectory()Z move-result v0 if-nez v0, :cond_0 goto :goto_0 .line 796 :cond_0 new-instance v0, Ljava/io/IOException; new-instance v3, Ljava/lang/StringBuilder; invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V const-string v4, "Destination \'" invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v4, "\' exists but is a directory" invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v3 invoke-direct {v0, v3}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v0 .line 799 :cond_1 :goto_0 const/4 v3, 0x0 .line 800 .local v3, "fis":Ljava/io/FileInputStream; const/4 v4, 0x0 .line 801 .local v4, "fos":Ljava/io/FileOutputStream; const/4 v5, 0x0 .line 802 .local v5, "input":Ljava/nio/channels/FileChannel; const/4 v6, 0x0 .line 804 .local v6, "output":Ljava/nio/channels/FileChannel; :try_start_0 new-instance v0, Ljava/io/FileInputStream; invoke-direct {v0, v1}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V move-object v3, v0 .line 805 new-instance v0, Ljava/io/FileOutputStream; invoke-direct {v0, v2}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;)V move-object v4, v0 .line 806 invoke-virtual {v3}, Ljava/io/FileInputStream;->getChannel()Ljava/nio/channels/FileChannel; move-result-object v8 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_2 .line 807 .end local v5 # "input":Ljava/nio/channels/FileChannel; .local v8, "input":Ljava/nio/channels/FileChannel; :try_start_1 invoke-virtual {v4}, Ljava/io/FileOutputStream;->getChannel()Ljava/nio/channels/FileChannel; move-result-object v7 :try_end_1 .catchall {:try_start_1 .. :try_end_1} :catchall_1 .line 808 .end local v6 # "output":Ljava/nio/channels/FileChannel; .local v7, "output":Ljava/nio/channels/FileChannel; :try_start_2 invoke-virtual {v8}, Ljava/nio/channels/FileChannel;->size()J move-result-wide v5 .line 809 .local v5, "size":J const-wide/16 v9, 0x0 .line 810 .local v9, "pos":J const-wide/16 v11, 0x0 move-wide v13, v9 .line 811 .end local v9 # "pos":J .local v11, "count":J .local v13, "pos":J :goto_1 cmp-long v0, v13, v5 if-gez v0, :cond_3 .line 812 sub-long v9, v5, v13 const-wide/32 v15, 0x3200000 cmp-long v0, v9, v15 if-lez v0, :cond_2 goto :goto_2 :cond_2 sub-long v9, v5, v13 move-wide v15, v9 :goto_2 move-wide v11, v15 .line 813 move-wide v9, v13 invoke-virtual/range {v7 .. v12}, Ljava/nio/channels/FileChannel;->transferFrom(Ljava/nio/channels/ReadableByteChannel;JJ)J move-result-wide v9 :try_end_2 .catchall {:try_start_2 .. :try_end_2} :catchall_0 add-long/2addr v13, v9 goto :goto_1 .line 816 .end local v5 # "size":J .end local v11 # "count":J .end local v13 # "pos":J :cond_3 invoke-static {v7}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/Closeable;)V .line 817 invoke-static {v4}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/OutputStream;)V .line 818 invoke-static {v8}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/Closeable;)V .line 819 invoke-static {v3}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/InputStream;)V .line 820 nop .line 822 invoke-virtual/range {p0 .. p0}, Ljava/io/File;->length()J move-result-wide v5 invoke-virtual/range {p1 .. p1}, Ljava/io/File;->length()J move-result-wide v9 cmp-long v0, v5, v9 if-nez v0, :cond_5 .line 826 if-eqz p2, :cond_4 .line 827 invoke-virtual/range {p0 .. p0}, Ljava/io/File;->lastModified()J move-result-wide v5 invoke-virtual {v2, v5, v6}, Ljava/io/File;->setLastModified(J)Z .line 829 :cond_4 return-void .line 823 :cond_5 new-instance v0, Ljava/io/IOException; new-instance v5, Ljava/lang/StringBuilder; invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V const-string v6, "Failed to copy full contents from \'" invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v5, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v6, "\' to \'" invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v5, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v6, "\'" invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v5 invoke-direct {v0, v5}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v0 .line 816 :catchall_0 move-exception v0 move-object v6, v7 move-object v5, v8 goto :goto_3 .end local v7 # "output":Ljava/nio/channels/FileChannel; .restart local v6 # "output":Ljava/nio/channels/FileChannel; :catchall_1 move-exception v0 move-object v5, v8 goto :goto_3 .end local v8 # "input":Ljava/nio/channels/FileChannel; .local v5, "input":Ljava/nio/channels/FileChannel; :catchall_2 move-exception v0 :goto_3 invoke-static {v6}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/Closeable;)V .line 817 invoke-static {v4}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/OutputStream;)V .line 818 invoke-static {v5}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/Closeable;)V .line 819 invoke-static {v3}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/InputStream;)V goto :goto_5 :goto_4 throw v0 :goto_5 goto :goto_4 .end method .method public static forceDelete(Ljava/io/File;)V .locals 4 .param p0, "file" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1633 invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z move-result v0 if-eqz v0, :cond_0 .line 1634 invoke-static {p0}, Lorg/apache/commons/io/FileUtils;->deleteDirectory(Ljava/io/File;)V goto :goto_0 .line 1636 :cond_0 invoke-virtual {p0}, Ljava/io/File;->exists()Z move-result v0 .line 1637 .local v0, "filePresent":Z invoke-virtual {p0}, Ljava/io/File;->delete()Z move-result v1 if-nez v1, :cond_2 .line 1638 if-nez v0, :cond_1 .line 1639 new-instance v1, Ljava/io/FileNotFoundException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V const-string v3, "File does not exist: " 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 {v1, v2}, Ljava/io/FileNotFoundException;-><init>(Ljava/lang/String;)V throw v1 .line 1641 :cond_1 new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V const-string v2, "Unable to delete 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 .line 1643 .local v1, "message":Ljava/lang/String; new-instance v2, Ljava/io/IOException; invoke-direct {v2, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v2 .line 1646 .end local v0 # "filePresent":Z .end local v1 # "message":Ljava/lang/String; :cond_2 :goto_0 return-void .end method .method public static forceDeleteOnExit(Ljava/io/File;)V .locals 1 .param p0, "file" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1657 invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z move-result v0 if-eqz v0, :cond_0 .line 1658 invoke-static {p0}, Lorg/apache/commons/io/FileUtils;->deleteDirectoryOnExit(Ljava/io/File;)V goto :goto_0 .line 1660 :cond_0 invoke-virtual {p0}, Ljava/io/File;->deleteOnExit()V .line 1662 :goto_0 return-void .end method .method public static forceMkdir(Ljava/io/File;)V .locals 2 .param p0, "directory" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1731 invoke-virtual {p0}, Ljava/io/File;->exists()Z move-result v0 if-eqz v0, :cond_1 .line 1732 invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z move-result v0 if-eqz v0, :cond_0 goto :goto_0 .line 1733 :cond_0 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V const-string v1, "File " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, " exists and is " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; const-string v1, "not a directory. Unable to create directory." invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 .line 1738 .local v0, "message":Ljava/lang/String; new-instance v1, Ljava/io/IOException; invoke-direct {v1, v0}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v1 .line 1741 .end local v0 # "message":Ljava/lang/String; :cond_1 invoke-virtual {p0}, Ljava/io/File;->mkdirs()Z move-result v0 if-nez v0, :cond_3 .line 1744 invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z move-result v0 if-eqz v0, :cond_2 goto :goto_0 .line 1746 :cond_2 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V const-string v1, "Unable to create directory " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 .line 1748 .restart local v0 # "message":Ljava/lang/String; new-instance v1, Ljava/io/IOException; invoke-direct {v1, v0}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v1 .line 1752 .end local v0 # "message":Ljava/lang/String; :cond_3 :goto_0 return-void .end method .method public static getTempDirectory()Ljava/io/File; .locals 2 .line 143 new-instance v0, Ljava/io/File; invoke-static {}, Lorg/apache/commons/io/FileUtils;->getTempDirectoryPath()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V return-object v0 .end method .method public static getTempDirectoryPath()Ljava/lang/String; .locals 1 .line 132 const-string v0, "java.io.tmpdir" invoke-static {v0}, Ljava/lang/System;->getProperty(Ljava/lang/String;)Ljava/lang/String; move-result-object v0 return-object v0 .end method .method public static getUserDirectory()Ljava/io/File; .locals 2 .line 165 new-instance v0, Ljava/io/File; invoke-static {}, Lorg/apache/commons/io/FileUtils;->getUserDirectoryPath()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V return-object v0 .end method .method public static getUserDirectoryPath()Ljava/lang/String; .locals 1 .line 154 const-string v0, "user.home" invoke-static {v0}, Ljava/lang/System;->getProperty(Ljava/lang/String;)Ljava/lang/String; move-result-object v0 return-object v0 .end method .method private static innerListFiles(Ljava/util/Collection;Ljava/io/File;Lorg/apache/commons/io/filefilter/IOFileFilter;)V .locals 6 .param p1, "directory" # Ljava/io/File; .param p2, "filter" # Lorg/apache/commons/io/filefilter/IOFileFilter; .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/Collection<", "Ljava/io/File;", ">;", "Ljava/io/File;", "Lorg/apache/commons/io/filefilter/IOFileFilter;", ")V" } .end annotation .line 318 .local p0, "files":Ljava/util/Collection;, "Ljava/util/Collection<Ljava/io/File;>;" invoke-virtual {p1, p2}, Ljava/io/File;->listFiles(Ljava/io/FileFilter;)[Ljava/io/File; move-result-object v0 .line 319 .local v0, "found":[Ljava/io/File; if-eqz v0, :cond_1 .line 320 move-object v1, v0 .local v1, "arr$":[Ljava/io/File; array-length v2, v1 .local v2, "len$":I const/4 v3, 0x0 .local v3, "i$":I :goto_0 if-ge v3, v2, :cond_1 aget-object v4, v1, v3 .line 321 .local v4, "file":Ljava/io/File; invoke-virtual {v4}, Ljava/io/File;->isDirectory()Z move-result v5 if-eqz v5, :cond_0 .line 322 invoke-static {p0, v4, p2}, Lorg/apache/commons/io/FileUtils;->innerListFiles(Ljava/util/Collection;Ljava/io/File;Lorg/apache/commons/io/filefilter/IOFileFilter;)V goto :goto_1 .line 324 :cond_0 invoke-interface {p0, v4}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z .line 320 .end local v4 # "file":Ljava/io/File; :goto_1 add-int/lit8 v3, v3, 0x1 goto :goto_0 .line 328 .end local v1 # "arr$":[Ljava/io/File; .end local v2 # "len$":I .end local v3 # "i$":I :cond_1 return-void .end method .method public static isFileNewer(Ljava/io/File;J)Z .locals 4 .param p0, "file" # Ljava/io/File; .param p1, "timeMillis" # J .line 1876 if-eqz p0, :cond_2 .line 1879 invoke-virtual {p0}, Ljava/io/File;->exists()Z move-result v0 const/4 v1, 0x0 if-nez v0, :cond_0 .line 1880 return v1 .line 1882 :cond_0 invoke-virtual {p0}, Ljava/io/File;->lastModified()J move-result-wide v2 cmp-long v0, v2, p1 if-lez v0, :cond_1 const/4 v1, 0x1 :cond_1 return v1 .line 1877 :cond_2 new-instance v0, Ljava/lang/IllegalArgumentException; const-string v1, "No specified file" invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V throw v0 .end method .method public static isFileNewer(Ljava/io/File;Ljava/io/File;)Z .locals 3 .param p0, "file" # Ljava/io/File; .param p1, "reference" # Ljava/io/File; .line 1834 if-eqz p1, :cond_1 .line 1837 invoke-virtual {p1}, Ljava/io/File;->exists()Z move-result v0 if-eqz v0, :cond_0 .line 1841 invoke-virtual {p1}, Ljava/io/File;->lastModified()J move-result-wide v0 invoke-static {p0, v0, v1}, Lorg/apache/commons/io/FileUtils;->isFileNewer(Ljava/io/File;J)Z move-result v0 return v0 .line 1838 :cond_0 new-instance v0, Ljava/lang/IllegalArgumentException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V const-string v2, "The reference file \'" invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v2, "\' doesn\'t exist" 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}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V throw v0 .line 1835 :cond_1 new-instance v0, Ljava/lang/IllegalArgumentException; const-string v1, "No specified reference file" invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V throw v0 .end method .method public static isFileNewer(Ljava/io/File;Ljava/util/Date;)Z .locals 2 .param p0, "file" # Ljava/io/File; .param p1, "date" # Ljava/util/Date; .line 1857 if-eqz p1, :cond_0 .line 1860 invoke-virtual {p1}, Ljava/util/Date;->getTime()J move-result-wide v0 invoke-static {p0, v0, v1}, Lorg/apache/commons/io/FileUtils;->isFileNewer(Ljava/io/File;J)Z move-result v0 return v0 .line 1858 :cond_0 new-instance v0, Ljava/lang/IllegalArgumentException; const-string v1, "No specified date" invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V throw v0 .end method .method public static isFileOlder(Ljava/io/File;J)Z .locals 4 .param p0, "file" # Ljava/io/File; .param p1, "timeMillis" # J .line 1943 if-eqz p0, :cond_2 .line 1946 invoke-virtual {p0}, Ljava/io/File;->exists()Z move-result v0 const/4 v1, 0x0 if-nez v0, :cond_0 .line 1947 return v1 .line 1949 :cond_0 invoke-virtual {p0}, Ljava/io/File;->lastModified()J move-result-wide v2 cmp-long v0, v2, p1 if-gez v0, :cond_1 const/4 v1, 0x1 :cond_1 return v1 .line 1944 :cond_2 new-instance v0, Ljava/lang/IllegalArgumentException; const-string v1, "No specified file" invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V throw v0 .end method .method public static isFileOlder(Ljava/io/File;Ljava/io/File;)Z .locals 3 .param p0, "file" # Ljava/io/File; .param p1, "reference" # Ljava/io/File; .line 1901 if-eqz p1, :cond_1 .line 1904 invoke-virtual {p1}, Ljava/io/File;->exists()Z move-result v0 if-eqz v0, :cond_0 .line 1908 invoke-virtual {p1}, Ljava/io/File;->lastModified()J move-result-wide v0 invoke-static {p0, v0, v1}, Lorg/apache/commons/io/FileUtils;->isFileOlder(Ljava/io/File;J)Z move-result v0 return v0 .line 1905 :cond_0 new-instance v0, Ljava/lang/IllegalArgumentException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V const-string v2, "The reference file \'" invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v2, "\' doesn\'t exist" 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}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V throw v0 .line 1902 :cond_1 new-instance v0, Ljava/lang/IllegalArgumentException; const-string v1, "No specified reference file" invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V throw v0 .end method .method public static isFileOlder(Ljava/io/File;Ljava/util/Date;)Z .locals 2 .param p0, "file" # Ljava/io/File; .param p1, "date" # Ljava/util/Date; .line 1924 if-eqz p1, :cond_0 .line 1927 invoke-virtual {p1}, Ljava/util/Date;->getTime()J move-result-wide v0 invoke-static {p0, v0, v1}, Lorg/apache/commons/io/FileUtils;->isFileOlder(Ljava/io/File;J)Z move-result v0 return v0 .line 1925 :cond_0 new-instance v0, Ljava/lang/IllegalArgumentException; const-string v1, "No specified date" invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V throw v0 .end method .method public static isSymlink(Ljava/io/File;)Z .locals 5 .param p0, "file" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 2190 if-eqz p0, :cond_3 .line 2193 invoke-static {}, Lorg/apache/commons/io/FilenameUtils;->isSystemWindows()Z move-result v0 const/4 v1, 0x0 if-eqz v0, :cond_0 .line 2194 return v1 .line 2196 :cond_0 const/4 v0, 0x0 .line 2197 .local v0, "fileInCanonicalDir":Ljava/io/File; invoke-virtual {p0}, Ljava/io/File;->getParent()Ljava/lang/String; move-result-object v2 if-nez v2, :cond_1 .line 2198 move-object v0, p0 goto :goto_0 .line 2200 :cond_1 invoke-virtual {p0}, Ljava/io/File;->getParentFile()Ljava/io/File; move-result-object v2 invoke-virtual {v2}, Ljava/io/File;->getCanonicalFile()Ljava/io/File; move-result-object v2 .line 2201 .local v2, "canonicalDir":Ljava/io/File; new-instance v3, Ljava/io/File; invoke-virtual {p0}, Ljava/io/File;->getName()Ljava/lang/String; move-result-object v4 invoke-direct {v3, v2, v4}, Ljava/io/File;-><init>(Ljava/io/File;Ljava/lang/String;)V move-object v0, v3 .line 2204 .end local v2 # "canonicalDir":Ljava/io/File; :goto_0 invoke-virtual {v0}, Ljava/io/File;->getCanonicalFile()Ljava/io/File; move-result-object v2 invoke-virtual {v0}, Ljava/io/File;->getAbsoluteFile()Ljava/io/File; move-result-object v3 invoke-virtual {v2, v3}, Ljava/io/File;->equals(Ljava/lang/Object;)Z move-result v2 if-eqz v2, :cond_2 .line 2205 return v1 .line 2207 :cond_2 const/4 v1, 0x1 return v1 .line 2191 .end local v0 # "fileInCanonicalDir":Ljava/io/File; :cond_3 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "File must not be null" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V throw v0 .end method .method public static iterateFiles(Ljava/io/File;Lorg/apache/commons/io/filefilter/IOFileFilter;Lorg/apache/commons/io/filefilter/IOFileFilter;)Ljava/util/Iterator; .locals 1 .param p0, "directory" # Ljava/io/File; .param p1, "fileFilter" # Lorg/apache/commons/io/filefilter/IOFileFilter; .param p2, "dirFilter" # Lorg/apache/commons/io/filefilter/IOFileFilter; .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/io/File;", "Lorg/apache/commons/io/filefilter/IOFileFilter;", "Lorg/apache/commons/io/filefilter/IOFileFilter;", ")", "Ljava/util/Iterator<", "Ljava/io/File;", ">;" } .end annotation .line 404 invoke-static {p0, p1, p2}, Lorg/apache/commons/io/FileUtils;->listFiles(Ljava/io/File;Lorg/apache/commons/io/filefilter/IOFileFilter;Lorg/apache/commons/io/filefilter/IOFileFilter;)Ljava/util/Collection; move-result-object v0 invoke-interface {v0}, Ljava/util/Collection;->iterator()Ljava/util/Iterator; move-result-object v0 return-object v0 .end method .method public static iterateFiles(Ljava/io/File;[Ljava/lang/String;Z)Ljava/util/Iterator; .locals 1 .param p0, "directory" # Ljava/io/File; .param p1, "extensions" # [Ljava/lang/String; .param p2, "recursive" # Z .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/io/File;", "[", "Ljava/lang/String;", "Z)", "Ljava/util/Iterator<", "Ljava/io/File;", ">;" } .end annotation .line 461 invoke-static {p0, p1, p2}, Lorg/apache/commons/io/FileUtils;->listFiles(Ljava/io/File;[Ljava/lang/String;Z)Ljava/util/Collection; move-result-object v0 invoke-interface {v0}, Ljava/util/Collection;->iterator()Ljava/util/Iterator; move-result-object v0 return-object v0 .end method .method public static lineIterator(Ljava/io/File;)Lorg/apache/commons/io/LineIterator; .locals 1 .param p0, "file" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1455 const/4 v0, 0x0 invoke-static {p0, v0}, Lorg/apache/commons/io/FileUtils;->lineIterator(Ljava/io/File;Ljava/lang/String;)Lorg/apache/commons/io/LineIterator; move-result-object v0 return-object v0 .end method .method public static lineIterator(Ljava/io/File;Ljava/lang/String;)Lorg/apache/commons/io/LineIterator; .locals 2 .param p0, "file" # Ljava/io/File; .param p1, "encoding" # Ljava/lang/String; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1432 const/4 v0, 0x0 .line 1434 .local v0, "in":Ljava/io/InputStream; :try_start_0 invoke-static {p0}, Lorg/apache/commons/io/FileUtils;->openInputStream(Ljava/io/File;)Ljava/io/FileInputStream; move-result-object v1 move-object v0, v1 .line 1435 invoke-static {v0, p1}, Lorg/apache/commons/io/IOUtils;->lineIterator(Ljava/io/InputStream;Ljava/lang/String;)Lorg/apache/commons/io/LineIterator; move-result-object v1 :try_end_0 .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_1 .catch Ljava/lang/RuntimeException; {:try_start_0 .. :try_end_0} :catch_0 return-object v1 .line 1439 :catch_0 move-exception v1 .line 1440 .local v1, "ex":Ljava/lang/RuntimeException; invoke-static {v0}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/InputStream;)V .line 1441 throw v1 .line 1436 .end local v1 # "ex":Ljava/lang/RuntimeException; :catch_1 move-exception v1 .line 1437 .local v1, "ex":Ljava/io/IOException; invoke-static {v0}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/InputStream;)V .line 1438 throw v1 .end method .method public static listFiles(Ljava/io/File;Lorg/apache/commons/io/filefilter/IOFileFilter;Lorg/apache/commons/io/filefilter/IOFileFilter;)Ljava/util/Collection; .locals 6 .param p0, "directory" # Ljava/io/File; .param p1, "fileFilter" # Lorg/apache/commons/io/filefilter/IOFileFilter; .param p2, "dirFilter" # Lorg/apache/commons/io/filefilter/IOFileFilter; .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/io/File;", "Lorg/apache/commons/io/filefilter/IOFileFilter;", "Lorg/apache/commons/io/filefilter/IOFileFilter;", ")", "Ljava/util/Collection<", "Ljava/io/File;", ">;" } .end annotation .line 357 invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z move-result v0 if-eqz v0, :cond_2 .line 361 if-eqz p1, :cond_1 .line 366 const/4 v0, 0x2 new-array v1, v0, [Lorg/apache/commons/io/filefilter/IOFileFilter; const/4 v2, 0x0 aput-object p1, v1, v2 sget-object v3, Lorg/apache/commons/io/filefilter/DirectoryFileFilter;->INSTANCE:Lorg/apache/commons/io/filefilter/IOFileFilter; invoke-static {v3}, Lorg/apache/commons/io/filefilter/FileFilterUtils;->notFileFilter(Lorg/apache/commons/io/filefilter/IOFileFilter;)Lorg/apache/commons/io/filefilter/IOFileFilter; move-result-object v3 const/4 v4, 0x1 aput-object v3, v1, v4 invoke-static {v1}, Lorg/apache/commons/io/filefilter/FileFilterUtils;->and([Lorg/apache/commons/io/filefilter/IOFileFilter;)Lorg/apache/commons/io/filefilter/IOFileFilter; move-result-object v1 .line 371 .local v1, "effFileFilter":Lorg/apache/commons/io/filefilter/IOFileFilter; if-nez p2, :cond_0 .line 372 sget-object v3, Lorg/apache/commons/io/filefilter/FalseFileFilter;->INSTANCE:Lorg/apache/commons/io/filefilter/IOFileFilter; .local v3, "effDirFilter":Lorg/apache/commons/io/filefilter/IOFileFilter; goto :goto_0 .line 374 .end local v3 # "effDirFilter":Lorg/apache/commons/io/filefilter/IOFileFilter; :cond_0 new-array v3, v0, [Lorg/apache/commons/io/filefilter/IOFileFilter; aput-object p2, v3, v2 sget-object v5, Lorg/apache/commons/io/filefilter/DirectoryFileFilter;->INSTANCE:Lorg/apache/commons/io/filefilter/IOFileFilter; aput-object v5, v3, v4 invoke-static {v3}, Lorg/apache/commons/io/filefilter/FileFilterUtils;->and([Lorg/apache/commons/io/filefilter/IOFileFilter;)Lorg/apache/commons/io/filefilter/IOFileFilter; move-result-object v3 .line 379 .restart local v3 # "effDirFilter":Lorg/apache/commons/io/filefilter/IOFileFilter; :goto_0 new-instance v5, Ljava/util/LinkedList; invoke-direct {v5}, Ljava/util/LinkedList;-><init>()V .line 380 .local v5, "files":Ljava/util/Collection;, "Ljava/util/Collection<Ljava/io/File;>;" new-array v0, v0, [Lorg/apache/commons/io/filefilter/IOFileFilter; aput-object v1, v0, v2 aput-object v3, v0, v4 invoke-static {v0}, Lorg/apache/commons/io/filefilter/FileFilterUtils;->or([Lorg/apache/commons/io/filefilter/IOFileFilter;)Lorg/apache/commons/io/filefilter/IOFileFilter; move-result-object v0 invoke-static {v5, p0, v0}, Lorg/apache/commons/io/FileUtils;->innerListFiles(Ljava/util/Collection;Ljava/io/File;Lorg/apache/commons/io/filefilter/IOFileFilter;)V .line 382 return-object v5 .line 362 .end local v1 # "effFileFilter":Lorg/apache/commons/io/filefilter/IOFileFilter; .end local v3 # "effDirFilter":Lorg/apache/commons/io/filefilter/IOFileFilter; .end local v5 # "files":Ljava/util/Collection;, "Ljava/util/Collection<Ljava/io/File;>;" :cond_1 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "Parameter \'fileFilter\' is null" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V throw v0 .line 358 :cond_2 new-instance v0, Ljava/lang/IllegalArgumentException; const-string v1, "Parameter \'directory\' is not a directory" invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V throw v0 .end method .method public static listFiles(Ljava/io/File;[Ljava/lang/String;Z)Ljava/util/Collection; .locals 2 .param p0, "directory" # Ljava/io/File; .param p1, "extensions" # [Ljava/lang/String; .param p2, "recursive" # Z .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/io/File;", "[", "Ljava/lang/String;", "Z)", "Ljava/util/Collection<", "Ljava/io/File;", ">;" } .end annotation .line 437 if-nez p1, :cond_0 .line 438 sget-object v0, Lorg/apache/commons/io/filefilter/TrueFileFilter;->INSTANCE:Lorg/apache/commons/io/filefilter/IOFileFilter; .local v0, "filter":Lorg/apache/commons/io/filefilter/IOFileFilter; goto :goto_0 .line 440 .end local v0 # "filter":Lorg/apache/commons/io/filefilter/IOFileFilter; :cond_0 invoke-static {p1}, Lorg/apache/commons/io/FileUtils;->toSuffixes([Ljava/lang/String;)[Ljava/lang/String; move-result-object v0 .line 441 .local v0, "suffixes":[Ljava/lang/String; new-instance v1, Lorg/apache/commons/io/filefilter/SuffixFileFilter; invoke-direct {v1, v0}, Lorg/apache/commons/io/filefilter/SuffixFileFilter;-><init>([Ljava/lang/String;)V move-object v0, v1 .line 443 .local v0, "filter":Lorg/apache/commons/io/filefilter/IOFileFilter; :goto_0 if-eqz p2, :cond_1 sget-object v1, Lorg/apache/commons/io/filefilter/TrueFileFilter;->INSTANCE:Lorg/apache/commons/io/filefilter/IOFileFilter; goto :goto_1 :cond_1 sget-object v1, Lorg/apache/commons/io/filefilter/FalseFileFilter;->INSTANCE:Lorg/apache/commons/io/filefilter/IOFileFilter; :goto_1 invoke-static {p0, v0, v1}, Lorg/apache/commons/io/FileUtils;->listFiles(Ljava/io/File;Lorg/apache/commons/io/filefilter/IOFileFilter;Lorg/apache/commons/io/filefilter/IOFileFilter;)Ljava/util/Collection; move-result-object v1 return-object v1 .end method .method public static moveDirectory(Ljava/io/File;Ljava/io/File;)V .locals 4 .param p0, "srcDir" # Ljava/io/File; .param p1, "destDir" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 2014 if-eqz p0, :cond_6 .line 2017 if-eqz p1, :cond_5 .line 2020 invoke-virtual {p0}, Ljava/io/File;->exists()Z move-result v0 const-string v1, "Source \'" if-eqz v0, :cond_4 .line 2023 invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z move-result v0 if-eqz v0, :cond_3 .line 2026 invoke-virtual {p1}, Ljava/io/File;->exists()Z move-result v0 if-nez v0, :cond_2 .line 2029 invoke-virtual {p0, p1}, Ljava/io/File;->renameTo(Ljava/io/File;)Z move-result v0 .line 2030 .local v0, "rename":Z if-nez v0, :cond_1 .line 2031 invoke-static {p0, p1}, Lorg/apache/commons/io/FileUtils;->copyDirectory(Ljava/io/File;Ljava/io/File;)V .line 2032 invoke-static {p0}, Lorg/apache/commons/io/FileUtils;->deleteDirectory(Ljava/io/File;)V .line 2033 invoke-virtual {p0}, Ljava/io/File;->exists()Z move-result v1 if-nez v1, :cond_0 goto :goto_0 .line 2034 :cond_0 new-instance v1, Ljava/io/IOException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V const-string v3, "Failed to delete original directory \'" 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; const-string v3, "\' after copy to \'" invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p1}, 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}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v1 .line 2038 :cond_1 :goto_0 return-void .line 2027 .end local v0 # "rename":Z :cond_2 new-instance v0, Lorg/apache/commons/io/FileExistsException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V const-string v2, "Destination \'" invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v2, "\' already exists" 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}, Lorg/apache/commons/io/FileExistsException;-><init>(Ljava/lang/String;)V throw v0 .line 2024 :cond_3 new-instance v0, Ljava/io/IOException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, "\' is not a directory" invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v0 .line 2021 :cond_4 new-instance v0, Ljava/io/FileNotFoundException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, "\' does not exist" invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/io/FileNotFoundException;-><init>(Ljava/lang/String;)V throw v0 .line 2018 :cond_5 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "Destination must not be null" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V throw v0 .line 2015 :cond_6 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "Source must not be null" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V throw v0 .end method .method public static moveDirectoryToDirectory(Ljava/io/File;Ljava/io/File;Z)V .locals 3 .param p0, "src" # Ljava/io/File; .param p1, "destDir" # Ljava/io/File; .param p2, "createDestDir" # Z .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 2053 if-eqz p0, :cond_4 .line 2056 if-eqz p1, :cond_3 .line 2059 invoke-virtual {p1}, Ljava/io/File;->exists()Z move-result v0 if-nez v0, :cond_0 if-eqz p2, :cond_0 .line 2060 invoke-virtual {p1}, Ljava/io/File;->mkdirs()Z .line 2062 :cond_0 invoke-virtual {p1}, Ljava/io/File;->exists()Z move-result v0 if-eqz v0, :cond_2 .line 2066 invoke-virtual {p1}, Ljava/io/File;->isDirectory()Z move-result v0 if-eqz v0, :cond_1 .line 2069 new-instance v0, Ljava/io/File; invoke-virtual {p0}, Ljava/io/File;->getName()Ljava/lang/String; move-result-object v1 invoke-direct {v0, p1, v1}, Ljava/io/File;-><init>(Ljava/io/File;Ljava/lang/String;)V invoke-static {p0, v0}, Lorg/apache/commons/io/FileUtils;->moveDirectory(Ljava/io/File;Ljava/io/File;)V .line 2071 return-void .line 2067 :cond_1 new-instance v0, Ljava/io/IOException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V const-string v2, "Destination \'" invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v2, "\' is not a directory" 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}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v0 .line 2063 :cond_2 new-instance v0, Ljava/io/FileNotFoundException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V const-string v2, "Destination directory \'" invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v2, "\' does not exist [createDestDir=" invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(Z)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}, Ljava/io/FileNotFoundException;-><init>(Ljava/lang/String;)V throw v0 .line 2057 :cond_3 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "Destination directory must not be null" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V throw v0 .line 2054 :cond_4 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "Source must not be null" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V throw v0 .end method .method public static moveFile(Ljava/io/File;Ljava/io/File;)V .locals 4 .param p0, "srcFile" # Ljava/io/File; .param p1, "destFile" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 2086 if-eqz p0, :cond_7 .line 2089 if-eqz p1, :cond_6 .line 2092 invoke-virtual {p0}, Ljava/io/File;->exists()Z move-result v0 const-string v1, "Source \'" if-eqz v0, :cond_5 .line 2095 invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z move-result v0 const-string v2, "\' is a directory" if-nez v0, :cond_4 .line 2098 invoke-virtual {p1}, Ljava/io/File;->exists()Z move-result v0 const-string v1, "Destination \'" if-nez v0, :cond_3 .line 2101 invoke-virtual {p1}, Ljava/io/File;->isDirectory()Z move-result v0 if-nez v0, :cond_2 .line 2104 invoke-virtual {p0, p1}, Ljava/io/File;->renameTo(Ljava/io/File;)Z move-result v0 .line 2105 .local v0, "rename":Z if-nez v0, :cond_1 .line 2106 invoke-static {p0, p1}, Lorg/apache/commons/io/FileUtils;->copyFile(Ljava/io/File;Ljava/io/File;)V .line 2107 invoke-virtual {p0}, Ljava/io/File;->delete()Z move-result v1 if-eqz v1, :cond_0 goto :goto_0 .line 2108 :cond_0 invoke-static {p1}, Lorg/apache/commons/io/FileUtils;->deleteQuietly(Ljava/io/File;)Z .line 2109 new-instance v1, Ljava/io/IOException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V const-string v3, "Failed to delete original 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; const-string v3, "\' after copy to \'" invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p1}, 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}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v1 .line 2113 :cond_1 :goto_0 return-void .line 2102 .end local v0 # "rename":Z :cond_2 new-instance v0, Ljava/io/IOException; new-instance v3, Ljava/lang/StringBuilder; invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v0 .line 2099 :cond_3 new-instance v0, Lorg/apache/commons/io/FileExistsException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, "\' already exists" invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Lorg/apache/commons/io/FileExistsException;-><init>(Ljava/lang/String;)V throw v0 .line 2096 :cond_4 new-instance v0, Ljava/io/IOException; new-instance v3, Ljava/lang/StringBuilder; invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v3, v1}, 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, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v0 .line 2093 :cond_5 new-instance v0, Ljava/io/FileNotFoundException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, "\' does not exist" invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/io/FileNotFoundException;-><init>(Ljava/lang/String;)V throw v0 .line 2090 :cond_6 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "Destination must not be null" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V throw v0 .line 2087 :cond_7 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "Source must not be null" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V throw v0 .end method .method public static moveFileToDirectory(Ljava/io/File;Ljava/io/File;Z)V .locals 3 .param p0, "srcFile" # Ljava/io/File; .param p1, "destDir" # Ljava/io/File; .param p2, "createDestDir" # Z .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 2128 if-eqz p0, :cond_4 .line 2131 if-eqz p1, :cond_3 .line 2134 invoke-virtual {p1}, Ljava/io/File;->exists()Z move-result v0 if-nez v0, :cond_0 if-eqz p2, :cond_0 .line 2135 invoke-virtual {p1}, Ljava/io/File;->mkdirs()Z .line 2137 :cond_0 invoke-virtual {p1}, Ljava/io/File;->exists()Z move-result v0 if-eqz v0, :cond_2 .line 2141 invoke-virtual {p1}, Ljava/io/File;->isDirectory()Z move-result v0 if-eqz v0, :cond_1 .line 2144 new-instance v0, Ljava/io/File; invoke-virtual {p0}, Ljava/io/File;->getName()Ljava/lang/String; move-result-object v1 invoke-direct {v0, p1, v1}, Ljava/io/File;-><init>(Ljava/io/File;Ljava/lang/String;)V invoke-static {p0, v0}, Lorg/apache/commons/io/FileUtils;->moveFile(Ljava/io/File;Ljava/io/File;)V .line 2145 return-void .line 2142 :cond_1 new-instance v0, Ljava/io/IOException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V const-string v2, "Destination \'" invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v2, "\' is not a directory" 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}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v0 .line 2138 :cond_2 new-instance v0, Ljava/io/FileNotFoundException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V const-string v2, "Destination directory \'" invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v2, "\' does not exist [createDestDir=" invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(Z)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}, Ljava/io/FileNotFoundException;-><init>(Ljava/lang/String;)V throw v0 .line 2132 :cond_3 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "Destination directory must not be null" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V throw v0 .line 2129 :cond_4 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "Source must not be null" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V throw v0 .end method .method public static moveToDirectory(Ljava/io/File;Ljava/io/File;Z)V .locals 3 .param p0, "src" # Ljava/io/File; .param p1, "destDir" # Ljava/io/File; .param p2, "createDestDir" # Z .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 2162 if-eqz p0, :cond_3 .line 2165 if-eqz p1, :cond_2 .line 2168 invoke-virtual {p0}, Ljava/io/File;->exists()Z move-result v0 if-eqz v0, :cond_1 .line 2171 invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z move-result v0 if-eqz v0, :cond_0 .line 2172 invoke-static {p0, p1, p2}, Lorg/apache/commons/io/FileUtils;->moveDirectoryToDirectory(Ljava/io/File;Ljava/io/File;Z)V goto :goto_0 .line 2174 :cond_0 invoke-static {p0, p1, p2}, Lorg/apache/commons/io/FileUtils;->moveFileToDirectory(Ljava/io/File;Ljava/io/File;Z)V .line 2176 :goto_0 return-void .line 2169 :cond_1 new-instance v0, Ljava/io/FileNotFoundException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V const-string v2, "Source \'" 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; const-string v2, "\' does not exist" 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}, Ljava/io/FileNotFoundException;-><init>(Ljava/lang/String;)V throw v0 .line 2166 :cond_2 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "Destination must not be null" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V throw v0 .line 2163 :cond_3 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "Source must not be null" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V throw v0 .end method .method public static openInputStream(Ljava/io/File;)Ljava/io/FileInputStream; .locals 3 .param p0, "file" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 188 invoke-virtual {p0}, Ljava/io/File;->exists()Z move-result v0 const-string v1, "File \'" if-eqz v0, :cond_2 .line 189 invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z move-result v0 if-nez v0, :cond_1 .line 192 invoke-virtual {p0}, Ljava/io/File;->canRead()Z move-result v0 if-eqz v0, :cond_0 .line 198 new-instance v0, Ljava/io/FileInputStream; invoke-direct {v0, p0}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V return-object v0 .line 193 :cond_0 new-instance v0, Ljava/io/IOException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, "\' cannot be read" invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v0 .line 190 :cond_1 new-instance v0, Ljava/io/IOException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, "\' exists but is a directory" invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v0 .line 196 :cond_2 new-instance v0, Ljava/io/FileNotFoundException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, "\' does not exist" invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/io/FileNotFoundException;-><init>(Ljava/lang/String;)V throw v0 .end method .method public static openOutputStream(Ljava/io/File;)Ljava/io/FileOutputStream; .locals 4 .param p0, "file" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 223 invoke-virtual {p0}, Ljava/io/File;->exists()Z move-result v0 const-string v1, "File \'" if-eqz v0, :cond_2 .line 224 invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z move-result v0 if-nez v0, :cond_1 .line 227 invoke-virtual {p0}, Ljava/io/File;->canWrite()Z move-result v0 if-eqz v0, :cond_0 goto :goto_0 .line 228 :cond_0 new-instance v0, Ljava/io/IOException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, "\' cannot be written to" invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v0 .line 225 :cond_1 new-instance v0, Ljava/io/IOException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, "\' exists but is a directory" invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v0 .line 231 :cond_2 invoke-virtual {p0}, Ljava/io/File;->getParentFile()Ljava/io/File; move-result-object v0 .line 232 .local v0, "parent":Ljava/io/File; if-eqz v0, :cond_4 invoke-virtual {v0}, Ljava/io/File;->exists()Z move-result v2 if-nez v2, :cond_4 .line 233 invoke-virtual {v0}, Ljava/io/File;->mkdirs()Z move-result v2 if-eqz v2, :cond_3 goto :goto_0 .line 234 :cond_3 new-instance v2, Ljava/io/IOException; new-instance v3, Ljava/lang/StringBuilder; invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v3, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, "\' could not be created" invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-direct {v2, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v2 .line 238 .end local v0 # "parent":Ljava/io/File; :cond_4 :goto_0 new-instance v0, Ljava/io/FileOutputStream; invoke-direct {v0, p0}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;)V return-object v0 .end method .method public static readFileToByteArray(Ljava/io/File;)[B .locals 2 .param p0, "file" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1357 const/4 v0, 0x0 .line 1359 .local v0, "in":Ljava/io/InputStream; :try_start_0 invoke-static {p0}, Lorg/apache/commons/io/FileUtils;->openInputStream(Ljava/io/File;)Ljava/io/FileInputStream; move-result-object v1 move-object v0, v1 .line 1360 invoke-static {v0}, Lorg/apache/commons/io/IOUtils;->toByteArray(Ljava/io/InputStream;)[B move-result-object v1 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 .line 1362 invoke-static {v0}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/InputStream;)V return-object v1 :catchall_0 move-exception v1 invoke-static {v0}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/InputStream;)V throw v1 .end method .method public static readFileToString(Ljava/io/File;)Ljava/lang/String; .locals 1 .param p0, "file" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1344 const/4 v0, 0x0 invoke-static {p0, v0}, Lorg/apache/commons/io/FileUtils;->readFileToString(Ljava/io/File;Ljava/lang/String;)Ljava/lang/String; move-result-object v0 return-object v0 .end method .method public static readFileToString(Ljava/io/File;Ljava/lang/String;)Ljava/lang/String; .locals 2 .param p0, "file" # Ljava/io/File; .param p1, "encoding" # Ljava/lang/String; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1324 const/4 v0, 0x0 .line 1326 .local v0, "in":Ljava/io/InputStream; :try_start_0 invoke-static {p0}, Lorg/apache/commons/io/FileUtils;->openInputStream(Ljava/io/File;)Ljava/io/FileInputStream; move-result-object v1 move-object v0, v1 .line 1327 invoke-static {v0, p1}, Lorg/apache/commons/io/IOUtils;->toString(Ljava/io/InputStream;Ljava/lang/String;)Ljava/lang/String; move-result-object v1 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 .line 1329 invoke-static {v0}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/InputStream;)V return-object v1 :catchall_0 move-exception v1 invoke-static {v0}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/InputStream;)V throw v1 .end method .method public static readLines(Ljava/io/File;)Ljava/util/List; .locals 1 .param p0, "file" # Ljava/io/File; .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/io/File;", ")", "Ljava/util/List<", "Ljava/lang/String;", ">;" } .end annotation .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1397 const/4 v0, 0x0 invoke-static {p0, v0}, Lorg/apache/commons/io/FileUtils;->readLines(Ljava/io/File;Ljava/lang/String;)Ljava/util/List; move-result-object v0 return-object v0 .end method .method public static readLines(Ljava/io/File;Ljava/lang/String;)Ljava/util/List; .locals 2 .param p0, "file" # Ljava/io/File; .param p1, "encoding" # Ljava/lang/String; .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/io/File;", "Ljava/lang/String;", ")", "Ljava/util/List<", "Ljava/lang/String;", ">;" } .end annotation .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1378 const/4 v0, 0x0 .line 1380 .local v0, "in":Ljava/io/InputStream; :try_start_0 invoke-static {p0}, Lorg/apache/commons/io/FileUtils;->openInputStream(Ljava/io/File;)Ljava/io/FileInputStream; move-result-object v1 move-object v0, v1 .line 1381 invoke-static {v0, p1}, Lorg/apache/commons/io/IOUtils;->readLines(Ljava/io/InputStream;Ljava/lang/String;)Ljava/util/List; move-result-object v1 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 .line 1383 invoke-static {v0}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/InputStream;)V return-object v1 :catchall_0 move-exception v1 invoke-static {v0}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/InputStream;)V throw v1 .end method .method public static sizeOf(Ljava/io/File;)J .locals 2 .param p0, "file" # Ljava/io/File; .line 1775 invoke-virtual {p0}, Ljava/io/File;->exists()Z move-result v0 if-eqz v0, :cond_1 .line 1780 invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z move-result v0 if-eqz v0, :cond_0 .line 1781 invoke-static {p0}, Lorg/apache/commons/io/FileUtils;->sizeOfDirectory(Ljava/io/File;)J move-result-wide v0 return-wide v0 .line 1783 :cond_0 invoke-virtual {p0}, Ljava/io/File;->length()J move-result-wide v0 return-wide v0 .line 1776 :cond_1 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, " does not exist" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 .line 1777 .local v0, "message":Ljava/lang/String; new-instance v1, Ljava/lang/IllegalArgumentException; invoke-direct {v1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V throw v1 .end method .method public static sizeOfDirectory(Ljava/io/File;)J .locals 9 .param p0, "directory" # Ljava/io/File; .line 1796 invoke-virtual {p0}, Ljava/io/File;->exists()Z move-result v0 if-eqz v0, :cond_3 .line 1801 invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z move-result v0 if-eqz v0, :cond_2 .line 1806 const-wide/16 v0, 0x0 .line 1808 .local v0, "size":J invoke-virtual {p0}, Ljava/io/File;->listFiles()[Ljava/io/File; move-result-object v2 .line 1809 .local v2, "files":[Ljava/io/File; if-nez v2, :cond_0 .line 1810 const-wide/16 v3, 0x0 return-wide v3 .line 1812 :cond_0 move-object v3, v2 .local v3, "arr$":[Ljava/io/File; array-length v4, v3 .local v4, "len$":I const/4 v5, 0x0 .local v5, "i$":I :goto_0 if-ge v5, v4, :cond_1 aget-object v6, v3, v5 .line 1813 .local v6, "file":Ljava/io/File; invoke-static {v6}, Lorg/apache/commons/io/FileUtils;->sizeOf(Ljava/io/File;)J move-result-wide v7 add-long/2addr v0, v7 .line 1812 .end local v6 # "file":Ljava/io/File; add-int/lit8 v5, v5, 0x1 goto :goto_0 .line 1816 .end local v3 # "arr$":[Ljava/io/File; .end local v4 # "len$":I .end local v5 # "i$":I :cond_1 return-wide v0 .line 1802 .end local v0 # "size":J .end local v2 # "files":[Ljava/io/File; :cond_2 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, " is not a directory" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 .line 1803 .local v0, "message":Ljava/lang/String; new-instance v1, Ljava/lang/IllegalArgumentException; invoke-direct {v1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V throw v1 .line 1797 .end local v0 # "message":Ljava/lang/String; :cond_3 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string v1, " does not exist" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 .line 1798 .restart local v0 # "message":Ljava/lang/String; new-instance v1, Ljava/lang/IllegalArgumentException; invoke-direct {v1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V goto :goto_2 :goto_1 throw v1 :goto_2 goto :goto_1 .end method .method public static toFile(Ljava/net/URL;)Ljava/io/File; .locals 3 .param p0, "url" # Ljava/net/URL; .line 535 if-eqz p0, :cond_1 invoke-virtual {p0}, Ljava/net/URL;->getProtocol()Ljava/lang/String; move-result-object v0 const-string v1, "file" invoke-virtual {v1, v0}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z move-result v0 if-nez v0, :cond_0 goto :goto_0 .line 538 :cond_0 invoke-virtual {p0}, Ljava/net/URL;->getFile()Ljava/lang/String; move-result-object v0 const/16 v1, 0x2f sget-char v2, Ljava/io/File;->separatorChar:C invoke-virtual {v0, v1, v2}, Ljava/lang/String;->replace(CC)Ljava/lang/String; move-result-object v0 .line 539 .local v0, "filename":Ljava/lang/String; invoke-static {v0}, Lorg/apache/commons/io/FileUtils;->decodeUrl(Ljava/lang/String;)Ljava/lang/String; move-result-object v0 .line 540 new-instance v1, Ljava/io/File; invoke-direct {v1, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V return-object v1 .line 536 .end local v0 # "filename":Ljava/lang/String; :cond_1 :goto_0 const/4 v0, 0x0 return-object v0 .end method .method public static toFiles([Ljava/net/URL;)[Ljava/io/File; .locals 6 .param p0, "urls" # [Ljava/net/URL; .line 611 if-eqz p0, :cond_4 array-length v0, p0 if-nez v0, :cond_0 goto :goto_2 .line 614 :cond_0 array-length v0, p0 new-array v0, v0, [Ljava/io/File; .line 615 .local v0, "files":[Ljava/io/File; const/4 v1, 0x0 .local v1, "i":I :goto_0 array-length v2, p0 if-ge v1, v2, :cond_3 .line 616 aget-object v2, p0, v1 .line 617 .local v2, "url":Ljava/net/URL; if-eqz v2, :cond_2 .line 618 invoke-virtual {v2}, Ljava/net/URL;->getProtocol()Ljava/lang/String; move-result-object v3 const-string v4, "file" invoke-virtual {v3, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v3 if-eqz v3, :cond_1 .line 622 invoke-static {v2}, Lorg/apache/commons/io/FileUtils;->toFile(Ljava/net/URL;)Ljava/io/File; move-result-object v3 aput-object v3, v0, v1 goto :goto_1 .line 619 :cond_1 new-instance v3, Ljava/lang/IllegalArgumentException; new-instance v4, Ljava/lang/StringBuilder; invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V const-string v5, "URL could not be converted to a File: " invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v4 invoke-direct {v3, v4}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V throw v3 .line 615 .end local v2 # "url":Ljava/net/URL; :cond_2 :goto_1 add-int/lit8 v1, v1, 0x1 goto :goto_0 .line 625 .end local v1 # "i":I :cond_3 return-object v0 .line 612 .end local v0 # "files":[Ljava/io/File; :cond_4 :goto_2 sget-object v0, Lorg/apache/commons/io/FileUtils;->EMPTY_FILE_ARRAY:[Ljava/io/File; return-object v0 .end method .method private static toSuffixes([Ljava/lang/String;)[Ljava/lang/String; .locals 4 .param p0, "extensions" # [Ljava/lang/String; .line 416 array-length v0, p0 new-array v0, v0, [Ljava/lang/String; .line 417 .local v0, "suffixes":[Ljava/lang/String; const/4 v1, 0x0 .local v1, "i":I :goto_0 array-length v2, p0 if-ge v1, v2, :cond_0 .line 418 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; aget-object v3, p0, v1 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 aput-object v2, v0, v1 .line 417 add-int/lit8 v1, v1, 0x1 goto :goto_0 .line 420 .end local v1 # "i":I :cond_0 return-object v0 .end method .method public static toURLs([Ljava/io/File;)[Ljava/net/URL; .locals 3 .param p0, "files" # [Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 638 array-length v0, p0 new-array v0, v0, [Ljava/net/URL; .line 640 .local v0, "urls":[Ljava/net/URL; const/4 v1, 0x0 .local v1, "i":I :goto_0 array-length v2, v0 if-ge v1, v2, :cond_0 .line 641 aget-object v2, p0, v1 invoke-virtual {v2}, Ljava/io/File;->toURI()Ljava/net/URI; move-result-object v2 invoke-virtual {v2}, Ljava/net/URI;->toURL()Ljava/net/URL; move-result-object v2 aput-object v2, v0, v1 .line 640 add-int/lit8 v1, v1, 0x1 goto :goto_0 .line 644 .end local v1 # "i":I :cond_0 return-object v0 .end method .method public static touch(Ljava/io/File;)V .locals 4 .param p0, "file" # Ljava/io/File; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 284 invoke-virtual {p0}, Ljava/io/File;->exists()Z move-result v0 if-nez v0, :cond_0 .line 285 invoke-static {p0}, Lorg/apache/commons/io/FileUtils;->openOutputStream(Ljava/io/File;)Ljava/io/FileOutputStream; move-result-object v0 .line 286 .local v0, "out":Ljava/io/OutputStream; invoke-static {v0}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/OutputStream;)V .line 288 .end local v0 # "out":Ljava/io/OutputStream; :cond_0 invoke-static {}, Ljava/lang/System;->currentTimeMillis()J move-result-wide v0 invoke-virtual {p0, v0, v1}, Ljava/io/File;->setLastModified(J)Z move-result v0 .line 289 .local v0, "success":Z if-eqz v0, :cond_1 .line 292 return-void .line 290 :cond_1 new-instance v1, Ljava/io/IOException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V const-string v3, "Unable to set the last modification time for " 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 {v1, v2}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V throw v1 .end method .method public static waitFor(Ljava/io/File;I)Z .locals 4 .param p0, "file" # Ljava/io/File; .param p1, "seconds" # I .line 1292 const/4 v0, 0x0 .line 1293 .local v0, "timeout":I const/4 v1, 0x0 .line 1294 .local v1, "tick":I :goto_0 invoke-virtual {p0}, Ljava/io/File;->exists()Z move-result v2 if-nez v2, :cond_2 .line 1295 add-int/lit8 v2, v1, 0x1 .end local v1 # "tick":I .local v2, "tick":I const/16 v3, 0xa if-lt v1, v3, :cond_1 .line 1296 const/4 v1, 0x0 .line 1297 .end local v2 # "tick":I .restart local v1 # "tick":I add-int/lit8 v2, v0, 0x1 .end local v0 # "timeout":I .local v2, "timeout":I if-le v0, p1, :cond_0 .line 1298 const/4 v0, 0x0 return v0 .line 1297 :cond_0 move v0, v2 goto :goto_1 .line 1295 .end local v1 # "tick":I .restart local v0 # "timeout":I .local v2, "tick":I :cond_1 move v1, v2 .line 1302 .end local v2 # "tick":I .restart local v1 # "tick":I :goto_1 const-wide/16 v2, 0x64 :try_start_0 invoke-static {v2, v3}, Ljava/lang/Thread;->sleep(J)V :try_end_0 .catch Ljava/lang/InterruptedException; {:try_start_0 .. :try_end_0} :catch_1 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0 .line 1307 :goto_2 goto :goto_0 .line 1305 :catch_0 move-exception v2 .line 1306 .local v2, "ex":Ljava/lang/Exception; goto :goto_3 .line 1303 .end local v2 # "ex":Ljava/lang/Exception; :catch_1 move-exception v2 goto :goto_2 .line 1309 :cond_2 :goto_3 const/4 v2, 0x1 return v2 .end method .method public static write(Ljava/io/File;Ljava/lang/CharSequence;)V .locals 1 .param p0, "file" # Ljava/io/File; .param p1, "data" # Ljava/lang/CharSequence; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1501 if-nez p1, :cond_0 const/4 v0, 0x0 goto :goto_0 :cond_0 invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String; move-result-object v0 .line 1502 .local v0, "str":Ljava/lang/String; :goto_0 invoke-static {p0, v0}, Lorg/apache/commons/io/FileUtils;->writeStringToFile(Ljava/io/File;Ljava/lang/String;)V .line 1503 return-void .end method .method public static write(Ljava/io/File;Ljava/lang/CharSequence;Ljava/lang/String;)V .locals 1 .param p0, "file" # Ljava/io/File; .param p1, "data" # Ljava/lang/CharSequence; .param p2, "encoding" # Ljava/lang/String; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1516 if-nez p1, :cond_0 const/4 v0, 0x0 goto :goto_0 :cond_0 invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String; move-result-object v0 .line 1517 .local v0, "str":Ljava/lang/String; :goto_0 invoke-static {p0, v0, p2}, Lorg/apache/commons/io/FileUtils;->writeStringToFile(Ljava/io/File;Ljava/lang/String;Ljava/lang/String;)V .line 1518 return-void .end method .method public static writeByteArrayToFile(Ljava/io/File;[B)V .locals 2 .param p0, "file" # Ljava/io/File; .param p1, "data" # [B .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1532 const/4 v0, 0x0 .line 1534 .local v0, "out":Ljava/io/OutputStream; :try_start_0 invoke-static {p0}, Lorg/apache/commons/io/FileUtils;->openOutputStream(Ljava/io/File;)Ljava/io/FileOutputStream; move-result-object v1 move-object v0, v1 .line 1535 invoke-virtual {v0, p1}, Ljava/io/OutputStream;->write([B)V :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 .line 1537 invoke-static {v0}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/OutputStream;)V .line 1538 nop .line 1539 return-void .line 1537 :catchall_0 move-exception v1 invoke-static {v0}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/OutputStream;)V throw v1 .end method .method public static writeLines(Ljava/io/File;Ljava/lang/String;Ljava/util/Collection;)V .locals 1 .param p0, "file" # Ljava/io/File; .param p1, "encoding" # Ljava/lang/String; .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/io/File;", "Ljava/lang/String;", "Ljava/util/Collection<", "*>;)V" } .end annotation .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1557 .local p2, "lines":Ljava/util/Collection;, "Ljava/util/Collection<*>;" const/4 v0, 0x0 invoke-static {p0, p1, p2, v0}, Lorg/apache/commons/io/FileUtils;->writeLines(Ljava/io/File;Ljava/lang/String;Ljava/util/Collection;Ljava/lang/String;)V .line 1558 return-void .end method .method public static writeLines(Ljava/io/File;Ljava/lang/String;Ljava/util/Collection;Ljava/lang/String;)V .locals 2 .param p0, "file" # Ljava/io/File; .param p1, "encoding" # Ljava/lang/String; .param p3, "lineEnding" # Ljava/lang/String; .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/io/File;", "Ljava/lang/String;", "Ljava/util/Collection<", "*>;", "Ljava/lang/String;", ")V" } .end annotation .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1592 .local p2, "lines":Ljava/util/Collection;, "Ljava/util/Collection<*>;" const/4 v0, 0x0 .line 1594 .local v0, "out":Ljava/io/OutputStream; :try_start_0 invoke-static {p0}, Lorg/apache/commons/io/FileUtils;->openOutputStream(Ljava/io/File;)Ljava/io/FileOutputStream; move-result-object v1 move-object v0, v1 .line 1595 invoke-static {p2, p3, v0, p1}, Lorg/apache/commons/io/IOUtils;->writeLines(Ljava/util/Collection;Ljava/lang/String;Ljava/io/OutputStream;Ljava/lang/String;)V :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 .line 1597 invoke-static {v0}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/OutputStream;)V .line 1598 nop .line 1599 return-void .line 1597 :catchall_0 move-exception v1 invoke-static {v0}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/OutputStream;)V throw v1 .end method .method public static writeLines(Ljava/io/File;Ljava/util/Collection;)V .locals 1 .param p0, "file" # Ljava/io/File; .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/io/File;", "Ljava/util/Collection<", "*>;)V" } .end annotation .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1571 .local p1, "lines":Ljava/util/Collection;, "Ljava/util/Collection<*>;" const/4 v0, 0x0 invoke-static {p0, v0, p1, v0}, Lorg/apache/commons/io/FileUtils;->writeLines(Ljava/io/File;Ljava/lang/String;Ljava/util/Collection;Ljava/lang/String;)V .line 1572 return-void .end method .method public static writeLines(Ljava/io/File;Ljava/util/Collection;Ljava/lang/String;)V .locals 1 .param p0, "file" # Ljava/io/File; .param p2, "lineEnding" # Ljava/lang/String; .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/io/File;", "Ljava/util/Collection<", "*>;", "Ljava/lang/String;", ")V" } .end annotation .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1613 .local p1, "lines":Ljava/util/Collection;, "Ljava/util/Collection<*>;" const/4 v0, 0x0 invoke-static {p0, v0, p1, p2}, Lorg/apache/commons/io/FileUtils;->writeLines(Ljava/io/File;Ljava/lang/String;Ljava/util/Collection;Ljava/lang/String;)V .line 1614 return-void .end method .method public static writeStringToFile(Ljava/io/File;Ljava/lang/String;)V .locals 1 .param p0, "file" # Ljava/io/File; .param p1, "data" # Ljava/lang/String; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1489 const/4 v0, 0x0 invoke-static {p0, p1, v0}, Lorg/apache/commons/io/FileUtils;->writeStringToFile(Ljava/io/File;Ljava/lang/String;Ljava/lang/String;)V .line 1490 return-void .end method .method public static writeStringToFile(Ljava/io/File;Ljava/lang/String;Ljava/lang/String;)V .locals 2 .param p0, "file" # Ljava/io/File; .param p1, "data" # Ljava/lang/String; .param p2, "encoding" # Ljava/lang/String; .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 1472 const/4 v0, 0x0 .line 1474 .local v0, "out":Ljava/io/OutputStream; :try_start_0 invoke-static {p0}, Lorg/apache/commons/io/FileUtils;->openOutputStream(Ljava/io/File;)Ljava/io/FileOutputStream; move-result-object v1 move-object v0, v1 .line 1475 invoke-static {p1, v0, p2}, Lorg/apache/commons/io/IOUtils;->write(Ljava/lang/String;Ljava/io/OutputStream;Ljava/lang/String;)V :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 .line 1477 invoke-static {v0}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/OutputStream;)V .line 1478 nop .line 1479 return-void .line 1477 :catchall_0 move-exception v1 invoke-static {v0}, Lorg/apache/commons/io/IOUtils;->closeQuietly(Ljava/io/OutputStream;)V throw v1 .end method