From 5e7388f686684efd6514d770df85ba67feda7944 Mon Sep 17 00:00:00 2001 From: Skylot Date: Wed, 15 Jan 2020 18:26:17 +0300 Subject: [PATCH] refactor: fix several issues reported by sonar --- .../main/java/jadx/core/dex/info/ConstStorage.java | 7 +------ .../main/java/jadx/core/export/TemplateFile.java | 14 +++----------- .../main/java/jadx/core/utils/files/FileUtils.java | 6 +++--- .../main/java/jadx/gui/ui/codearea/SearchBar.java | 3 ++- .../src/main/java/jadx/gui/utils/SystemInfo.java | 3 +++ 5 files changed, 12 insertions(+), 21 deletions(-) diff --git a/jadx-core/src/main/java/jadx/core/dex/info/ConstStorage.java b/jadx-core/src/main/java/jadx/core/dex/info/ConstStorage.java index fbd706150..4ecf70271 100644 --- a/jadx-core/src/main/java/jadx/core/dex/info/ConstStorage.java +++ b/jadx-core/src/main/java/jadx/core/dex/info/ConstStorage.java @@ -91,12 +91,7 @@ public class ConstStorage { } private ValueStorage getClsValues(ClassNode cls) { - ValueStorage classValues = classes.get(cls); - if (classValues == null) { - classValues = new ValueStorage(); - classes.put(cls, classValues); - } - return classValues; + return classes.computeIfAbsent(cls, c -> new ValueStorage()); } @Nullable diff --git a/jadx-core/src/main/java/jadx/core/export/TemplateFile.java b/jadx-core/src/main/java/jadx/core/export/TemplateFile.java index e93a02a6c..79d56cbe4 100644 --- a/jadx-core/src/main/java/jadx/core/export/TemplateFile.java +++ b/jadx-core/src/main/java/jadx/core/export/TemplateFile.java @@ -16,8 +16,6 @@ import org.jetbrains.annotations.Nullable; import jadx.core.utils.exceptions.JadxRuntimeException; -import static jadx.core.utils.files.FileUtils.close; - /** * Simple template engine * Syntax for replace variable with value: '{{variable}}' @@ -56,21 +54,15 @@ public class TemplateFile { } public String build() throws IOException { - ByteArrayOutputStream out = new ByteArrayOutputStream(); - try { + try (ByteArrayOutputStream out = new ByteArrayOutputStream()) { process(out); - } finally { - close(out); + return out.toString(); } - return out.toString(); } public void save(File outFile) throws IOException { - OutputStream out = new FileOutputStream(outFile); - try { + try (OutputStream out = new FileOutputStream(outFile)) { process(out); - } finally { - close(out); } } diff --git a/jadx-core/src/main/java/jadx/core/utils/files/FileUtils.java b/jadx-core/src/main/java/jadx/core/utils/files/FileUtils.java index 6e4045779..ae4c82a57 100644 --- a/jadx-core/src/main/java/jadx/core/utils/files/FileUtils.java +++ b/jadx-core/src/main/java/jadx/core/utils/files/FileUtils.java @@ -18,6 +18,7 @@ import java.util.List; import java.util.Objects; import java.util.jar.JarEntry; import java.util.jar.JarOutputStream; +import java.util.stream.Stream; import java.util.zip.ZipEntry; import java.util.zip.ZipFile; @@ -92,9 +93,8 @@ public class FileUtils { } public static void deleteDir(Path dir) { - try { - Files.walk(dir) - .sorted(Comparator.reverseOrder()) + try (Stream pathStream = Files.walk(dir)) { + pathStream.sorted(Comparator.reverseOrder()) .map(Path::toFile) .forEach(File::delete); } catch (Exception e) { diff --git a/jadx-gui/src/main/java/jadx/gui/ui/codearea/SearchBar.java b/jadx-gui/src/main/java/jadx/gui/ui/codearea/SearchBar.java index 40a69fe9d..7c96b210a 100644 --- a/jadx-gui/src/main/java/jadx/gui/ui/codearea/SearchBar.java +++ b/jadx-gui/src/main/java/jadx/gui/ui/codearea/SearchBar.java @@ -40,7 +40,6 @@ class SearchBar extends JToolBar { private final JCheckBox wholeWordCB; private final JCheckBox matchCaseCB; - private ActionListener forwardListener = e -> search(0); public SearchBar(RSyntaxTextArea textArea) { rTextArea = textArea; @@ -81,6 +80,8 @@ class SearchBar extends JToolBar { nextButton.setBorderPainted(false); add(nextButton); + ActionListener forwardListener = e -> search(0); + markAllCB = new JCheckBox(NLS.str("search.mark_all")); markAllCB.addActionListener(forwardListener); add(markAllCB); diff --git a/jadx-gui/src/main/java/jadx/gui/utils/SystemInfo.java b/jadx-gui/src/main/java/jadx/gui/utils/SystemInfo.java index f2eca96e5..e7c24e43f 100644 --- a/jadx-gui/src/main/java/jadx/gui/utils/SystemInfo.java +++ b/jadx-gui/src/main/java/jadx/gui/utils/SystemInfo.java @@ -17,4 +17,7 @@ public class SystemInfo { public static final boolean IS_WINDOWS = LOWER_OS_NAME.startsWith("windows"); public static final boolean IS_MAC = LOWER_OS_NAME.startsWith("mac"); public static final boolean IS_LINUX = LOWER_OS_NAME.startsWith("linux"); + + private SystemInfo() { + } }