From 6fa138f3c1ad7c4f13bd11771f10da67d56ad76d Mon Sep 17 00:00:00 2001 From: rusefi Date: Thu, 2 Jul 2020 00:12:47 -0400 Subject: [PATCH] one day we will end up with gradle --- .../com/rusefi/shared/ConnectionAndMeta.java | 4 ++ .../main/java/com/rusefi/shared/FileUtil.java | 4 ++ java_console/.idea/modules.xml | 1 + java_console/autoupdate/autoupdate.iml | 1 + .../src/com/rusefi/autoupdate/Autoupdate.java | 47 +---------------- java_console/build.xml | 2 + java_console/shared_io/shared_io.iml | 11 ++++ .../main/java/com/rusefi/shared/FileUtil.java | 52 +++++++++++++++++++ java_tools/ts_plugin/build.xml | 1 + java_tools/ts_plugin_launcher/build.xml | 1 + 10 files changed, 79 insertions(+), 45 deletions(-) create mode 100644 android/app/src/main/java/com/rusefi/shared/ConnectionAndMeta.java create mode 100644 android/app/src/main/java/com/rusefi/shared/FileUtil.java create mode 100644 java_console/shared_io/shared_io.iml create mode 100644 java_console/shared_io/src/main/java/com/rusefi/shared/FileUtil.java diff --git a/android/app/src/main/java/com/rusefi/shared/ConnectionAndMeta.java b/android/app/src/main/java/com/rusefi/shared/ConnectionAndMeta.java new file mode 100644 index 0000000000..82d1cfbf57 --- /dev/null +++ b/android/app/src/main/java/com/rusefi/shared/ConnectionAndMeta.java @@ -0,0 +1,4 @@ +package com.rusefi; + +public class ConnectionAndMeta { +} diff --git a/android/app/src/main/java/com/rusefi/shared/FileUtil.java b/android/app/src/main/java/com/rusefi/shared/FileUtil.java new file mode 100644 index 0000000000..b05b931fec --- /dev/null +++ b/android/app/src/main/java/com/rusefi/shared/FileUtil.java @@ -0,0 +1,4 @@ +package com.rusefi.shared; + +public class FileUtil { +} diff --git a/java_console/.idea/modules.xml b/java_console/.idea/modules.xml index 9a34219c7b..a4410981d5 100644 --- a/java_console/.idea/modules.xml +++ b/java_console/.idea/modules.xml @@ -12,6 +12,7 @@ + diff --git a/java_console/autoupdate/autoupdate.iml b/java_console/autoupdate/autoupdate.iml index 28440cbc44..8f1bc34a6b 100644 --- a/java_console/autoupdate/autoupdate.iml +++ b/java_console/autoupdate/autoupdate.iml @@ -8,5 +8,6 @@ + \ No newline at end of file diff --git a/java_console/autoupdate/src/com/rusefi/autoupdate/Autoupdate.java b/java_console/autoupdate/src/com/rusefi/autoupdate/Autoupdate.java index a74ba262c8..6dde0173cc 100644 --- a/java_console/autoupdate/src/com/rusefi/autoupdate/Autoupdate.java +++ b/java_console/autoupdate/src/com/rusefi/autoupdate/Autoupdate.java @@ -1,6 +1,7 @@ package com.rusefi.autoupdate; import com.rusefi.shared.ConnectionAndMeta; +import com.rusefi.shared.FileUtil; import com.rusefi.ui.util.FrameHelper; import javax.swing.*; @@ -14,8 +15,6 @@ import java.net.URLClassLoader; import java.util.Date; import java.util.concurrent.CountDownLatch; import java.util.concurrent.atomic.AtomicBoolean; -import java.util.zip.ZipEntry; -import java.util.zip.ZipInputStream; import static com.rusefi.ui.storage.PersistentConfiguration.getConfig; @@ -93,7 +92,7 @@ public class Autoupdate { file.setLastModified(lastModified); System.out.println("Downloaded " + file.length() + " bytes"); - unzip(zipFileName, ".."); + FileUtil.unzip(zipFileName, ".."); } catch (Exception e) { System.err.println(e); } @@ -193,48 +192,6 @@ public class Autoupdate { } } - private static void unzip(String zipFileName, String destPath) throws IOException { - File destDir = new File(destPath); - byte[] buffer = new byte[1024]; - ZipInputStream zis = new ZipInputStream(new FileInputStream(zipFileName)); - ZipEntry zipEntry = zis.getNextEntry(); - while (zipEntry != null) { - File newFile = newFile(destDir, zipEntry); - if (newFile.isDirectory()) { - System.out.println("Nothing to do for directory " + newFile); - } else { - unzipFile(buffer, zis, newFile); - } - zipEntry = zis.getNextEntry(); - } - zis.closeEntry(); - zis.close(); - System.out.println("Unzip " + zipFileName + " to " + destPath + " worked!"); - } - - private static void unzipFile(byte[] buffer, ZipInputStream zis, File newFile) throws IOException { - System.out.println("Unzipping " + newFile); - FileOutputStream fos = new FileOutputStream(newFile); - int len; - while ((len = zis.read(buffer)) > 0) { - fos.write(buffer, 0, len); - } - fos.close(); - } - - private static File newFile(File destinationDir, ZipEntry zipEntry) throws IOException { - File destFile = new File(destinationDir, zipEntry.getName()); - - String destDirPath = destinationDir.getCanonicalPath(); - String destFilePath = destFile.getCanonicalPath(); - - if (!destFilePath.startsWith(destDirPath + File.separator)) { - throw new IOException("Entry is outside of the target dir: " + zipEntry.getName()); - } - - return destFile; - } - enum UpdateMode { ALWAYS, NEVER, diff --git a/java_console/build.xml b/java_console/build.xml index f969b9f7ff..7b10a4cfae 100644 --- a/java_console/build.xml +++ b/java_console/build.xml @@ -18,6 +18,7 @@ classpath="lib/annotations.jar" > + @@ -47,6 +48,7 @@ + diff --git a/java_console/shared_io/shared_io.iml b/java_console/shared_io/shared_io.iml new file mode 100644 index 0000000000..f76df2b77e --- /dev/null +++ b/java_console/shared_io/shared_io.iml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/java_console/shared_io/src/main/java/com/rusefi/shared/FileUtil.java b/java_console/shared_io/src/main/java/com/rusefi/shared/FileUtil.java new file mode 100644 index 0000000000..0f0bbc6ff0 --- /dev/null +++ b/java_console/shared_io/src/main/java/com/rusefi/shared/FileUtil.java @@ -0,0 +1,52 @@ +package com.rusefi.shared; + +import java.io.File; +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.IOException; +import java.util.zip.ZipEntry; +import java.util.zip.ZipInputStream; + +public class FileUtil { + public static void unzip(String zipFileName, String destPath) throws IOException { + File destDir = new File(destPath); + byte[] buffer = new byte[1024]; + ZipInputStream zis = new ZipInputStream(new FileInputStream(zipFileName)); + ZipEntry zipEntry = zis.getNextEntry(); + while (zipEntry != null) { + File newFile = newFile(destDir, zipEntry); + if (newFile.isDirectory()) { + System.out.println("Nothing to do for directory " + newFile); + } else { + unzipFile(buffer, zis, newFile); + } + zipEntry = zis.getNextEntry(); + } + zis.closeEntry(); + zis.close(); + System.out.println("Unzip " + zipFileName + " to " + destPath + " worked!"); + } + + private static void unzipFile(byte[] buffer, ZipInputStream zis, File newFile) throws IOException { + System.out.println("Unzipping " + newFile); + FileOutputStream fos = new FileOutputStream(newFile); + int len; + while ((len = zis.read(buffer)) > 0) { + fos.write(buffer, 0, len); + } + fos.close(); + } + + private static File newFile(File destinationDir, ZipEntry zipEntry) throws IOException { + File destFile = new File(destinationDir, zipEntry.getName()); + + String destDirPath = destinationDir.getCanonicalPath(); + String destFilePath = destFile.getCanonicalPath(); + + if (!destFilePath.startsWith(destDirPath + File.separator)) { + throw new IOException("Entry is outside of the target dir: " + zipEntry.getName()); + } + + return destFile; + } +} diff --git a/java_tools/ts_plugin/build.xml b/java_tools/ts_plugin/build.xml index e56ae9ac17..13ed03ad5f 100644 --- a/java_tools/ts_plugin/build.xml +++ b/java_tools/ts_plugin/build.xml @@ -17,6 +17,7 @@ > + diff --git a/java_tools/ts_plugin_launcher/build.xml b/java_tools/ts_plugin_launcher/build.xml index 8a35f07e66..761a930a6b 100644 --- a/java_tools/ts_plugin_launcher/build.xml +++ b/java_tools/ts_plugin_launcher/build.xml @@ -15,6 +15,7 @@ classpath="${console_path}/lib/junit.jar:${console_path}/lib/annotations.jar:lib/TunerStudioPluginAPI.jar:${console_path}/lib/httpclient.jar:${console_path}/lib/httpmime.jar:${console_path}/lib/httpcore.jar" > +