summaryrefslogtreecommitdiffstats
path: root/src/org/jetbrains/java/decompiler/main/extern
diff options
context:
space:
mode:
authorRoman Shevchenko <roman.shevchenko@jetbrains.com>2014-08-28 20:52:43 +0400
committerRoman Shevchenko <roman.shevchenko@jetbrains.com>2014-08-28 20:52:43 +0400
commit663631f0456fcc245dd835889f86541d75161c53 (patch)
treee183fa9777242e2900ff3648a726f05b190bc51b /src/org/jetbrains/java/decompiler/main/extern
parentf864084061806fda5510e50bfd2e69bf1dea406b (diff)
downloadfernflower-663631f0456fcc245dd835889f86541d75161c53.tar
fernflower-663631f0456fcc245dd835889f86541d75161c53.tar.gz
fernflower-663631f0456fcc245dd835889f86541d75161c53.tar.lz
fernflower-663631f0456fcc245dd835889f86541d75161c53.tar.xz
fernflower-663631f0456fcc245dd835889f86541d75161c53.zip
java-decompiler: post-import cleanup (classes moved)
Diffstat (limited to 'src/org/jetbrains/java/decompiler/main/extern')
-rw-r--r--src/org/jetbrains/java/decompiler/main/extern/IBytecodeProvider.java23
-rw-r--r--src/org/jetbrains/java/decompiler/main/extern/IDecompilatSaver.java39
-rw-r--r--src/org/jetbrains/java/decompiler/main/extern/IFernflowerLogger.java56
-rw-r--r--src/org/jetbrains/java/decompiler/main/extern/IFernflowerPreferences.java57
-rw-r--r--src/org/jetbrains/java/decompiler/main/extern/IIdentifierRenamer.java20
5 files changed, 195 insertions, 0 deletions
diff --git a/src/org/jetbrains/java/decompiler/main/extern/IBytecodeProvider.java b/src/org/jetbrains/java/decompiler/main/extern/IBytecodeProvider.java
new file mode 100644
index 0000000..6e13e51
--- /dev/null
+++ b/src/org/jetbrains/java/decompiler/main/extern/IBytecodeProvider.java
@@ -0,0 +1,23 @@
+/*
+ * Fernflower - The Analytical Java Decompiler
+ * http://www.reversed-java.com
+ *
+ * (C) 2008 - 2010, Stiver
+ *
+ * This software is NEITHER public domain NOR free software
+ * as per GNU License. See license.txt for more details.
+ *
+ * This software is distributed WITHOUT ANY WARRANTY; without
+ * even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ * A PARTICULAR PURPOSE.
+ */
+
+package org.jetbrains.java.decompiler.main.extern;
+
+import java.io.InputStream;
+
+public interface IBytecodeProvider {
+
+ public InputStream getBytecodeStream(String externPath, String internPath);
+
+}
diff --git a/src/org/jetbrains/java/decompiler/main/extern/IDecompilatSaver.java b/src/org/jetbrains/java/decompiler/main/extern/IDecompilatSaver.java
new file mode 100644
index 0000000..855f95c
--- /dev/null
+++ b/src/org/jetbrains/java/decompiler/main/extern/IDecompilatSaver.java
@@ -0,0 +1,39 @@
+/*
+ * Fernflower - The Analytical Java Decompiler
+ * http://www.reversed-java.com
+ *
+ * (C) 2008 - 2010, Stiver
+ *
+ * This software is NEITHER public domain NOR free software
+ * as per GNU License. See license.txt for more details.
+ *
+ * This software is distributed WITHOUT ANY WARRANTY; without
+ * even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ * A PARTICULAR PURPOSE.
+ */
+
+package org.jetbrains.java.decompiler.main.extern;
+
+import java.util.jar.Manifest;
+
+public interface IDecompilatSaver {
+
+ public void copyFile(String source, String destpath, String destfilename);
+
+ public void saveFolder(String path);
+
+ public void saveClassFile(String path, String qualifiedName, String entryName, String content);
+
+ public void saveFile(String path, String filename, String content);
+
+ public void createArchive(String path, String archivename, Manifest manifest);
+
+ public void saveClassEntry(String path, String archivename, String qualifiedName, String entryName, String content);
+
+ public void saveEntry(String path, String archivename, String entryName, String content);
+
+ public void copyEntry(String source, String destpath, String archivename, String entry);
+
+ public void closeArchive(String path, String archivename);
+
+}
diff --git a/src/org/jetbrains/java/decompiler/main/extern/IFernflowerLogger.java b/src/org/jetbrains/java/decompiler/main/extern/IFernflowerLogger.java
new file mode 100644
index 0000000..eb1427c
--- /dev/null
+++ b/src/org/jetbrains/java/decompiler/main/extern/IFernflowerLogger.java
@@ -0,0 +1,56 @@
+/*
+ * Fernflower - The Analytical Java Decompiler
+ * http://www.reversed-java.com
+ *
+ * (C) 2008 - 2010, Stiver
+ *
+ * This software is NEITHER public domain NOR free software
+ * as per GNU License. See license.txt for more details.
+ *
+ * This software is distributed WITHOUT ANY WARRANTY; without
+ * even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ * A PARTICULAR PURPOSE.
+ */
+
+package org.jetbrains.java.decompiler.main.extern;
+
+import java.util.HashMap;
+
+public interface IFernflowerLogger {
+
+ public static final int TRACE = 1;
+ public static final int INFO = 2;
+ public static final int WARNING = 3;
+ public static final int ERROR = 4;
+ public static final int IMMEDIATE = 5;
+
+ public static final HashMap<String, Integer> mapLogLevel = new HashMap<String, Integer>() {{
+ put("TRACE", 1);
+ put("INFO", 2);
+ put("WARN", 3);
+ put("ERROR", 4);
+ put("IMME", 5);
+ }};
+
+ public static final String[] names = new String[] {""/*DUMMY ENTRY*/, "TRACE", "INFO", "WARNING", "ERROR", ""/*IMMEDIATE*/};
+
+ public void writeMessage(String message, int severity);
+
+ public void writeMessage(String message, Throwable t);
+
+ public void startClass(String classname);
+
+ public void endClass();
+
+ public void startWriteClass(String classname);
+
+ public void endWriteClass();
+
+ public void startMethod(String method);
+
+ public void endMethod();
+
+ public int getSeverity();
+
+ public void setSeverity(int severity);
+}
diff --git a/src/org/jetbrains/java/decompiler/main/extern/IFernflowerPreferences.java b/src/org/jetbrains/java/decompiler/main/extern/IFernflowerPreferences.java
new file mode 100644
index 0000000..9f19127
--- /dev/null
+++ b/src/org/jetbrains/java/decompiler/main/extern/IFernflowerPreferences.java
@@ -0,0 +1,57 @@
+/*
+ * Fernflower - The Analytical Java Decompiler
+ * http://www.reversed-java.com
+ *
+ * (C) 2008 - 2010, Stiver
+ *
+ * This software is NEITHER public domain NOR free software
+ * as per GNU License. See license.txt for more details.
+ *
+ * This software is distributed WITHOUT ANY WARRANTY; without
+ * even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ * A PARTICULAR PURPOSE.
+ */
+
+package org.jetbrains.java.decompiler.main.extern;
+
+public interface IFernflowerPreferences {
+
+ public static final String REMOVE_BRIDGE = "rbr";
+ public static final String REMOVE_SYNTHETIC = "rsy";
+ public static final String DECOMPILE_INNER = "din";
+ public static final String DECOMPILE_CLASS_1_4 = "dc4";
+ public static final String DECOMPILE_ASSERTIONS = "das";
+ public static final String HIDE_EMPTY_SUPER = "hes";
+ public static final String HIDE_DEFAULT_CONSTRUCTOR = "hdc";
+ public static final String DECOMPILE_GENERIC_SIGNATURES = "dgs";
+ public static final String OUTPUT_COPYRIGHT_COMMENT = "occ";
+ public static final String NO_EXCEPTIONS_RETURN = "ner";
+ public static final String DECOMPILE_ENUM = "den";
+ public static final String REMOVE_GETCLASS_NEW = "rgn";
+ public static final String LITERALS_AS_IS = "lit";
+ public static final String BOOLEAN_TRUE_ONE = "bto";
+ public static final String SYNTHETIC_NOT_SET = "nns";
+ public static final String UNDEFINED_PARAM_TYPE_OBJECT = "uto";
+ public static final String USE_DEBUG_VARNAMES = "udv";
+ public static final String MAX_PROCESSING_METHOD = "mpm";
+ public static final String REMOVE_EMPTY_RANGES = "rer";
+ public static final String ASCII_STRING_CHARACTERS = "asc";
+
+ public static final String FINALLY_DEINLINE = "fdi";
+
+ public static final String FINALLY_CATCHALL = "FINALLY_CATCHALL";
+ public static final String FINALLY_SEMAPHOR = "FINALLY_SEMAPHOR";
+
+ public static final String RENAME_ENTITIES = "ren";
+ public static final String USER_RENAMER_CLASS = "urc";
+
+ public static final String LOG_LEVEL = "log";
+
+ public static final String NEW_LINE_SEPARATOR = "nls";
+ public static final String IDEA_NOT_NULL_ANNOTATION = "inn";
+ public static final String LAMBDA_TO_ANONYMOUS_CLASS = "lac";
+ public static final String INDENT_STRING = "ind";
+
+ public static final String LINE_SEPARATOR_WIN = "\r\n";
+ public static final String LINE_SEPARATOR_LIN = "\n";
+}
diff --git a/src/org/jetbrains/java/decompiler/main/extern/IIdentifierRenamer.java b/src/org/jetbrains/java/decompiler/main/extern/IIdentifierRenamer.java
new file mode 100644
index 0000000..f379da6
--- /dev/null
+++ b/src/org/jetbrains/java/decompiler/main/extern/IIdentifierRenamer.java
@@ -0,0 +1,20 @@
+package org.jetbrains.java.decompiler.main.extern;
+
+
+public interface IIdentifierRenamer {
+
+ public static final int ELEMENT_CLASS = 1;
+
+ public static final int ELEMENT_FIELD = 2;
+
+ public static final int ELEMENT_METHOD = 3;
+
+
+ public boolean toBeRenamed(int element_type, String classname, String element, String descriptor);
+
+ public String getNextClassname(String fullname, String shortname);
+
+ public String getNextFieldname(String classname, String field, String descriptor);
+
+ public String getNextMethodname(String classname, String method, String descriptor);
+}