From 78ef309b3ee19cf0decddf2541d80f4dca8eb299 Mon Sep 17 00:00:00 2001 From: Roman Shevchenko Date: Mon, 19 May 2014 15:04:06 +0400 Subject: project cleanup - test classes (src/test/*) moved to separate root - stray .class files dropped - binary files (bin/, dist/full/, dist/obfuscated/) excluded from the repo - .classpath and .gitignore updated accordingly - invalid import statements removed --- .classpath | 1 + .gitignore | 3 + .settings/org.eclipse.core.resources.prefs | 3 +- bin/.gitignore | 6 - dist/full/fernflower.jar | Bin 648087 -> 0 bytes dist/obfuscated/fernflower.jar | Bin 258058 -> 0 bytes .../fernflower/modules/decompiler/DomHelper.java | 1 - .../decompiler/sforms/SSAConstructorSparseEx.java | 1 - src/test/BradTest.java | 57 - src/test/FernflowerTest.java | 417 ------ src/test/JetTest.java | 40 - src/test/JunitTest.java | 95 -- src/test/SumUpClasses.java | 81 -- src/test/TestAnnotationsEclipse$MyAnnotation.class | Bin 402 -> 0 bytes src/test/TestAnnotationsEclipse$TestInner.class | Bin 938 -> 0 bytes src/test/TestAnnotationsEclipse.class | Bin 415 -> 0 bytes src/test/TestAnnotationsEclipse.java | 42 - src/test/TestInput.java | 54 - src/test/TestRapc.java | 38 - src/test/TestRuntime1_4_2_03.java | 38 - src/test/TestSelf.java | 36 - src/test/TestValidateXml.java | 69 - src/test/TestYWorks.java | 38 - src/test/VladDebug.java | 67 - src/test/input/TestEclipse7.java | 59 - src/test/input/TestJavac7.class | Bin 2397 -> 0 bytes src/test/input/TestJavac7.java | 59 - src/test/input/TestJavac8.class | Bin 1330 -> 0 bytes src/test/input/TestJavac8.java | 58 - src/test/input/TestLoop.java | 20 - src/test/misc/ExtTest.java | 81 -- src/test/misc/GenericTest.java | 65 - src/test/misc/ITest.java | 9 - src/test/misc/MainClass.java | 115 -- src/test/misc/MiscTest.java | 83 -- src/test/misc/MultipleClassTest.java | 33 - src/test/misc/ObfuscatedExceptionDetector.java | 55 - src/test/misc/ParentFieldTest.java | 19 - src/test/misc/SuperTest.java | 27 - src/test/misc/ann/RequestForEnhancement.java | 22 - src/test/misc/en/AutocastTest.java | 17 - src/test/misc/en/FastSetTest.java | 60 - src/test/misc/en/FinallyTest.java | 22 - src/test/misc/en/Foo.java | 52 - src/test/misc/en/InnerTest$1.java | 22 - src/test/misc/en/InnerTest.java | 13 - src/test/misc/en/InnerTestOld.java | 20 - src/test/misc/en/IrredTest.java | 1373 -------------------- src/test/misc/en/ListInsertTest.java | 34 - src/test/misc/en/Operation.java | 51 - src/test/misc/en/SwitchInTest.java | 19 - src/test/misc/en/TestOperation.java | 31 - src/test/output/TestEclipse7.java | 15 - src/test/output/TestJavac7.java | 129 -- src/test/output/TestJavac8.java | 104 -- src/test/util/DotExporter.java | 183 --- src/test/util/MemoryMonitor.java | 25 - src/test/util/Timer.java | 31 - src/test/util/ZipStripper.java | 71 - test/test/BradTest.java | 57 + test/test/TestAnnotationsEclipse.java | 42 + test/test/input/TestEclipse7.java | 59 + test/test/input/TestJavac7.java | 59 + test/test/input/TestJavac8.java | 58 + test/test/input/TestLoop.java | 20 + test/test/misc/ExtTest.java | 81 ++ test/test/misc/GenericTest.java | 65 + test/test/misc/ITest.java | 9 + test/test/misc/MainClass.java | 115 ++ test/test/misc/MiscTest.java | 83 ++ test/test/misc/MultipleClassTest.java | 33 + test/test/misc/ParentFieldTest.java | 19 + test/test/misc/SuperTest.java | 27 + test/test/misc/ann/RequestForEnhancement.java | 22 + test/test/misc/en/AutocastTest.java | 17 + test/test/misc/en/FastSetTest.java | 60 + test/test/misc/en/FinallyTest.java | 22 + test/test/misc/en/Foo.java | 52 + test/test/misc/en/InnerTest$1.java | 22 + test/test/misc/en/InnerTest.java | 13 + test/test/misc/en/InnerTestOld.java | 20 + test/test/misc/en/ListInsertTest.java | 34 + test/test/misc/en/Operation.java | 51 + test/test/misc/en/SwitchInTest.java | 19 + test/test/misc/en/TestOperation.java | 31 + test/test/output/TestEclipse7.java | 15 + test/test/output/TestJavac7.java | 129 ++ test/test/output/TestJavac8.java | 104 ++ test/test/util/DotExporter.java | 183 +++ test/test/util/MemoryMonitor.java | 25 + test/test/util/Timer.java | 31 + test/test/util/ZipStripper.java | 71 + 92 files changed, 1653 insertions(+), 4059 deletions(-) create mode 100644 .gitignore delete mode 100644 bin/.gitignore delete mode 100644 dist/full/fernflower.jar delete mode 100644 dist/obfuscated/fernflower.jar delete mode 100644 src/test/BradTest.java delete mode 100644 src/test/FernflowerTest.java delete mode 100644 src/test/JetTest.java delete mode 100644 src/test/JunitTest.java delete mode 100644 src/test/SumUpClasses.java delete mode 100644 src/test/TestAnnotationsEclipse$MyAnnotation.class delete mode 100644 src/test/TestAnnotationsEclipse$TestInner.class delete mode 100644 src/test/TestAnnotationsEclipse.class delete mode 100644 src/test/TestAnnotationsEclipse.java delete mode 100644 src/test/TestInput.java delete mode 100644 src/test/TestRapc.java delete mode 100644 src/test/TestRuntime1_4_2_03.java delete mode 100644 src/test/TestSelf.java delete mode 100644 src/test/TestValidateXml.java delete mode 100644 src/test/TestYWorks.java delete mode 100644 src/test/VladDebug.java delete mode 100644 src/test/input/TestEclipse7.java delete mode 100644 src/test/input/TestJavac7.class delete mode 100644 src/test/input/TestJavac7.java delete mode 100644 src/test/input/TestJavac8.class delete mode 100644 src/test/input/TestJavac8.java delete mode 100644 src/test/input/TestLoop.java delete mode 100644 src/test/misc/ExtTest.java delete mode 100644 src/test/misc/GenericTest.java delete mode 100644 src/test/misc/ITest.java delete mode 100644 src/test/misc/MainClass.java delete mode 100644 src/test/misc/MiscTest.java delete mode 100644 src/test/misc/MultipleClassTest.java delete mode 100644 src/test/misc/ObfuscatedExceptionDetector.java delete mode 100644 src/test/misc/ParentFieldTest.java delete mode 100644 src/test/misc/SuperTest.java delete mode 100644 src/test/misc/ann/RequestForEnhancement.java delete mode 100644 src/test/misc/en/AutocastTest.java delete mode 100644 src/test/misc/en/FastSetTest.java delete mode 100644 src/test/misc/en/FinallyTest.java delete mode 100644 src/test/misc/en/Foo.java delete mode 100644 src/test/misc/en/InnerTest$1.java delete mode 100644 src/test/misc/en/InnerTest.java delete mode 100644 src/test/misc/en/InnerTestOld.java delete mode 100644 src/test/misc/en/IrredTest.java delete mode 100644 src/test/misc/en/ListInsertTest.java delete mode 100644 src/test/misc/en/Operation.java delete mode 100644 src/test/misc/en/SwitchInTest.java delete mode 100644 src/test/misc/en/TestOperation.java delete mode 100644 src/test/output/TestEclipse7.java delete mode 100644 src/test/output/TestJavac7.java delete mode 100644 src/test/output/TestJavac8.java delete mode 100644 src/test/util/DotExporter.java delete mode 100644 src/test/util/MemoryMonitor.java delete mode 100644 src/test/util/Timer.java delete mode 100644 src/test/util/ZipStripper.java create mode 100644 test/test/BradTest.java create mode 100644 test/test/TestAnnotationsEclipse.java create mode 100644 test/test/input/TestEclipse7.java create mode 100644 test/test/input/TestJavac7.java create mode 100644 test/test/input/TestJavac8.java create mode 100644 test/test/input/TestLoop.java create mode 100644 test/test/misc/ExtTest.java create mode 100644 test/test/misc/GenericTest.java create mode 100644 test/test/misc/ITest.java create mode 100644 test/test/misc/MainClass.java create mode 100644 test/test/misc/MiscTest.java create mode 100644 test/test/misc/MultipleClassTest.java create mode 100644 test/test/misc/ParentFieldTest.java create mode 100644 test/test/misc/SuperTest.java create mode 100644 test/test/misc/ann/RequestForEnhancement.java create mode 100644 test/test/misc/en/AutocastTest.java create mode 100644 test/test/misc/en/FastSetTest.java create mode 100644 test/test/misc/en/FinallyTest.java create mode 100644 test/test/misc/en/Foo.java create mode 100644 test/test/misc/en/InnerTest$1.java create mode 100644 test/test/misc/en/InnerTest.java create mode 100644 test/test/misc/en/InnerTestOld.java create mode 100644 test/test/misc/en/ListInsertTest.java create mode 100644 test/test/misc/en/Operation.java create mode 100644 test/test/misc/en/SwitchInTest.java create mode 100644 test/test/misc/en/TestOperation.java create mode 100644 test/test/output/TestEclipse7.java create mode 100644 test/test/output/TestJavac7.java create mode 100644 test/test/output/TestJavac8.java create mode 100644 test/test/util/DotExporter.java create mode 100644 test/test/util/MemoryMonitor.java create mode 100644 test/test/util/Timer.java create mode 100644 test/test/util/ZipStripper.java diff --git a/.classpath b/.classpath index 544e389..dcec888 100644 --- a/.classpath +++ b/.classpath @@ -2,6 +2,7 @@ + diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c48a1b8 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +bin/ +dist/full/ +dist/obfuscated/ diff --git a/.settings/org.eclipse.core.resources.prefs b/.settings/org.eclipse.core.resources.prefs index 3633df4..b1ddd34 100644 --- a/.settings/org.eclipse.core.resources.prefs +++ b/.settings/org.eclipse.core.resources.prefs @@ -1,3 +1,2 @@ -#Mon Oct 11 16:34:37 CEST 2010 eclipse.preferences.version=1 -encoding//src/test/misc/en/InnerTest.java=UTF-8 +encoding//test/test/misc/en/InnerTest.java=UTF-8 diff --git a/bin/.gitignore b/bin/.gitignore deleted file mode 100644 index 8dcfd95..0000000 --- a/bin/.gitignore +++ /dev/null @@ -1,6 +0,0 @@ -/HRTimerResolution.class -/SystemTimerResolution.class -/com -/de -/native -/test diff --git a/dist/full/fernflower.jar b/dist/full/fernflower.jar deleted file mode 100644 index 2e2331c..0000000 Binary files a/dist/full/fernflower.jar and /dev/null differ diff --git a/dist/obfuscated/fernflower.jar b/dist/obfuscated/fernflower.jar deleted file mode 100644 index 028c7a6..0000000 Binary files a/dist/obfuscated/fernflower.jar and /dev/null differ diff --git a/src/de/fernflower/modules/decompiler/DomHelper.java b/src/de/fernflower/modules/decompiler/DomHelper.java index cfc6df2..9377b30 100644 --- a/src/de/fernflower/modules/decompiler/DomHelper.java +++ b/src/de/fernflower/modules/decompiler/DomHelper.java @@ -25,7 +25,6 @@ import java.util.LinkedList; import java.util.List; import java.util.Set; -import test.util.DotExporter; import de.fernflower.code.cfg.BasicBlock; import de.fernflower.code.cfg.ControlFlowGraph; import de.fernflower.code.cfg.ExceptionRangeCFG; diff --git a/src/de/fernflower/modules/decompiler/sforms/SSAConstructorSparseEx.java b/src/de/fernflower/modules/decompiler/sforms/SSAConstructorSparseEx.java index 528129c..150f71f 100644 --- a/src/de/fernflower/modules/decompiler/sforms/SSAConstructorSparseEx.java +++ b/src/de/fernflower/modules/decompiler/sforms/SSAConstructorSparseEx.java @@ -21,7 +21,6 @@ import java.util.HashSet; import java.util.List; import java.util.Map.Entry; -import test.util.DotExporter; import de.fernflower.code.CodeConstants; import de.fernflower.modules.decompiler.exps.AssignmentExprent; import de.fernflower.modules.decompiler.exps.Exprent; diff --git a/src/test/BradTest.java b/src/test/BradTest.java deleted file mode 100644 index ab9ef7c..0000000 --- a/src/test/BradTest.java +++ /dev/null @@ -1,57 +0,0 @@ -package test; - -import java.util.LinkedList; -import java.util.List; - -public class BradTest { - - public void testForLoop() { - - for(int i = 0; i < 5; i++) { - System.out.println(i); - } - - int[] testArray = new int[] {}; - - for(int i : testArray) { - System.out.println(i); - } - - int k = 0; - int j = 0; - - while(j < 5) { - - System.out.println("Test while."); - - j++; - - if(j < 3) { - continue; - } - - k++; - - } - - List keys = new java.util.ArrayList(); - - for(Object test : keys) { - - System.out.println(test); - - System.out.println(test); - - System.out.println(test); - - } - - List objects = new LinkedList(); - - for(BradTest test : objects) { - System.out.println(test); - - } - } - -} diff --git a/src/test/FernflowerTest.java b/src/test/FernflowerTest.java deleted file mode 100644 index 42b3982..0000000 --- a/src/test/FernflowerTest.java +++ /dev/null @@ -1,417 +0,0 @@ -package test; - -import java.io.File; -import java.util.Date; -import java.util.HashMap; - -import de.fernflower.main.decompiler.ConsoleDecompiler; - - -public class FernflowerTest { - - public static void main(String[] args) { - - try { - - //TimerFactory.initialize(new File(".").getCanonicalPath()+"/lib/timer/hrtlib.dll"); - - Date start = new Date(); - - - - ConsoleDecompiler decompiler = new ConsoleDecompiler(new HashMap(){{put("log", "warn");put("ren", "1");}}); - - -// MemoryMonitor.run = true; -// new Thread(new MemoryMonitor()).start(); - - -// context.addSpace(new File("C:\\Temp\\fernflower\\runtime1_4_2_03\\"), true); - - -// context.addSpace(new File("C:\\revjava\\remote\\data\\input\\"), true); - - -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\smith\\EventProcessor.class", true); - - -// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090514224046740_rggbqdfe\\rh.class", true); // irreducible CFG -// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090514180223996_zxwdatbw\\TryCatchFinallyClass.class", true); - - -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\temp\\AndroidFileBrowser.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\temp\\SnakeView.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\ru.zip"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\bt1.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\CityGuideJava.jar"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\toschart.jar"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\dostoevski.181223.jar"), true); - - - -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\au.class"), true); // highly obfuscated exception handlers - sequence! -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\carmobile2.jar"), true); // highly obfuscated exception handlers - sequence! - - -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\tempjars\\Paris_Nights[sp-c.ru]ygtgJ6.jar"), true); // Heap space -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\tempjars\\PlanetN.jar"), true); - -// decompiler.addSpace(new File("C:\\Oleg\\dec\\PasswordDefender1.class"), true); -// decompiler.addSpace(new File("C:\\Oleg\\dec\\PasswordDefender2.class"), true); -// decompiler.addSpace(new File("C:\\Oleg\\dec\\Emyoolay.class"), true); - -// decompiler.addSpace(new File("C:\\Oleg\\dec\\h1.class"), true); -// decompiler.addSpace(new File("C:\\Oleg\\dec\\ba1.class"), true); -// decompiler.addSpace(new File("C:\\Oleg\\dec\\bolt_pg_0.jar"), true); -// decompiler.addSpace(new File("C:\\Oleg\\dec\\masl\\AbstractProgressNotifier.class"), true); -// decompiler.addSpace(new File("C:\\Oleg\\dec\\f.class"), true); -// decompiler.addSpace(new File("C:\\Oleg\\dec\\searchTab1_jsp1.class"), true); -// decompiler.addSpace(new File("C:\\Oleg\\dec\\searchTab1_jsp1_1.class"), true); - - decompiler.addSpace(new File("D:\\temp_c\\workspace\\Fernflower\\bin\\test\\BradTest.class"), true); - -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\cls1209_Object.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\cls540_BaseFunction1.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\SwitchInTest.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\al.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\InnerTest.zip"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\InnerTest$1.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\InnerTest.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\Context.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\Class$1.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\Class.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\SimpleDateFormat1.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\z.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\client.jar"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\Manifest1.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\MemoryMonitor1.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\IrreducibleCFGDeobfuscator$1Node.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\IrreducibleCFGDeobfuscator1.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\PrintStreamLogger1.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\b.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\toonel_uo-5050.jar"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\toonel_jdo.jar"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\i.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\BasicGroupListUI$a_.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\p1.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\v.class"), true); // invalid class structure -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\Game.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\out.zip"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\Logic.class"), true); // long processing time -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\pupkin\\Support2.class"), true); // irreducible CFG -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\CommandExecutor.class"), true); // sophisticated finally - -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\cy1.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\gmail-g.jar"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\LDIFImporter1.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\d1.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\com.sonyericsson.cs_ma3_client_sc_2.9.5.16.jar"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\z1.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\FactoryFinder1.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\e.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\IndexWriter.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\ar1.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\tcf511.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\TryCatchFinallyClass2.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\FileUtils.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\QuicktimeParser$TrakList1.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\DoExternalProcessMinwon.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\Main.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\TryCatchFinallyClassForTest.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\PmrCreatePMR.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\RetainSdi(2).zip"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\tcf26x1.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\GalleryStorageExtras.class"), true); - -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\ExprProcessor.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\Compiler1.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\ServerManagerImpl.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\RepositoryId1.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\ElemApplyTemplates.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\ValueHandlerImpl.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\RequestProcessor.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\PropertyEditorManager.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\JdbcOdbcObject.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\searchTab1_jsp1.class"), true); -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\o_class.class"), true); - -// decompiler.addSpace(new File("C:\\Oleg\\dec\\o1_class.class"), true); -// decompiler.addSpace(new File("C:\\Oleg\\dec\\o_class.class"), true); -// decompiler.addSpace(new File("C:\\Oleg\\dec\\o_class1.class"), true); -// decompiler.addSpace(new File("C:\\Oleg\\dec\\FinallyTest.class"), true); -// decompiler.addSpace(new File("C:\\Oleg\\dec\\J_class.class"), true); -// decompiler.addSpace(new File("C:\\Oleg\\dec\\icc.class"), true); -// decompiler.addSpace(new File("C:\\Oleg\\dec\\ca.class"), true); - -// decompiler.addSpace(new File("C:\\Oleg\\dec\\e.class"), true); -// decompiler.addSpace(new File("C:\\Oleg\\dec\\at.class"), true); -// decompiler.addSpace(new File("C:\\Oleg\\dec\\cab.jar"), true); -// decompiler.addSpace(new File("C:\\Oleg\\dec\\myotr\\"), true); // temp methods of inner classes -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\temp\\google\\"), true); // temp methods of inner classes -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\appengine-api-1.0-sdk-1.2.5-rp.jar"), true); // temp methods of inner classes -// decompiler.addSpace(new File("C:\\Oleg\\appengine-api-1.0-sdk-1.2.5-rp.jar"), true); // temp methods of inner classes -// decompiler.addSpace(new File("C:\\Oleg\\e.class"), true); // irreducible CFG - general case -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\e.class"), true); // irreducible CFG - general case - - -// decompiler.addSpace(new File("C:\\Temp\\fernflower\\dec\\opera\\output\\opera4_2.jar"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\ab.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\searchTab1_jsp.class"), true); // full iteration! -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\b.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\alesa.jar"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\MetaClassRegistryImpl1.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\MetaClassRegistryImpl$1.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\MetaClassRegistryImpl$2.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\CBZip2OutputStream1.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\MicroFMEIBDialog$MicroFMEIBMouse.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\String.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\ArticleBean.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\JdbcOdbcObject1.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\jdbc\\odbc\\JdbcOdbcObject.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\RasterPrinterJob1.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\print\\RasterPrinterJob.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\runtime1_4_2_03\\javax\\print\\MimeType.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\Application.class"), true); // self reference var replacement -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\JmxBuilderTools.class"), true); // merging blocks! - -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\groovy-all-1.6.3.jar"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\ABSInitializeLoginCtx.class"), true); // comparison instructions double, float, long! -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\hm20ipixa.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\jmf.jar"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\Asn1PerEncodeBuffer1.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\asn1rt.jar"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\LLString.class"), true); // wrong array index! -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\lapi.jar"), true); -// context.addSpace(new File("C:\\revjava\\remote\\data\\input\\20090521062758280_kmxhxsgj\\ab.class"), true); -// context.addSpace(new File("C:\\revjava\\remote\\data\\input\\20090521023110030_rlkkkxde\\"), true); -// context.addSpace(new File("C:\\revjava\\remote\\data\\input\\20090515012813271_ktxfuavw\\"), true); - -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\g1.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\structure101-java-b428.jar"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\NinjaVideoApplet0.3.9.jar"), true); - -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\DRMConfigClient.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\DRMConfigClient$1.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\DRMConfigClient$ConfigKeys.class"), true); - -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\ChartQuery.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\ChartQuery$1.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\ChartQuery$ChartQueryListener.class"), true); - - -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\innerprivate\\"), true); - -// context.addSpace(new File("C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\awt\\windows\\WScrollPanePeer$Adjustor.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\awt\\windows\\WScrollPanePeer$ScrollEvent.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\awt\\windows\\WScrollPanePeer.class"), true); - -// context.addSpace(new File("C:\\revjava\\remote\\data\\input\\20090520235744982_egloemdo\\"), true); - -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\conversion.zip"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\toonel.jar"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\msmapi.jar"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\skynin\\"), true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\skynin\\MSMAPI.class", true); - -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments1.class"), true); // invalid bytecode -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments2.class"), true); // invalid bytecode -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments3.class"), true); // invalid bytecode -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments4.class"), true); // protected range extended! -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments5.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments6.class"), true); // protected range extended! -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments7.class"), true); // highly obfuscated!! -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments8.class"), true); // highly obfuscated!! -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments9.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments10.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments11.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments12.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\experiments\\Experiments13.class"), true); // highly obfuscated!! - -// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\com\\sun\\jndi\\ldap\\Connection.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\Connection.class", true); - -// context.addClass("TestByte", "D:\\Nonbku\\workspace_3.4\\Fernflower\\bin\\struct\\attr\\MiscTest.class", true); - -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\pupkin\\Support2.class", true); // irreducible CFG - -// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\security\\jgss\\GSSNameImpl.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\awt\\image\\ImageFetcher.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\HttpURLConnection.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\net\\www\\protocol\\http\\HttpURLConnection.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\SocketChannelImpl.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\nio\\ch\\SocketChannelImpl.class", true); - -// context.addSpace(new File("C:\\Temp\\fernflower\\rapc\\"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\y\\"), true); - -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\layout\\router\\OrthogonalEdgeRouter.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\java\\util\\prefs\\WindowsPreferences.class", true); - - - -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\ag1.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\aa1.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\ar.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\aa.class", true); - -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\opera-mini-latest-advanced-int.jar"), true); -// context.addSpace(new File("C:\\revjava\\remote\\data\\input\\20090522175436366_ewwrrmsm\\"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\f1.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\logunov\\"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\logunov\\Lm.class"), true); -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\logunov\\Lm1.class"), true); - -// context.addSpace(new File("C:\\Temp\\fernflower\\dec\\balmaster\\"), true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\tcf10.class", true); -// context.addClass("TestByte", "D:\\Nonbku\\workspace_3.4\\autspl\\bin\\ThreadMain.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\SysEnv.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\e$1.class", true); - - -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$InfoPosition.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_j.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_d.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_n.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_g.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$5.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$6.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_l.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_c.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$11.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$12.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_k.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$9.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$8.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$10.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$7.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_f.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_h.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_m.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$3.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$2.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$4.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$ItemEditorOwner.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_b.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_b$_b.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$Theme.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_i.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$1.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\TableEditorFactory$_e.class", true); - - -// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090514095232398_nuopioet\\a5.class", true); -// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090514171647485_mjdkkaci\\Main.class", true); - -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\BIDVBankClientAdapter.class", true); -// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090518082259353_fkwzbhxj\\Logic.class", true); -// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090518114646899_mrahkrxa\\N.class", true); -// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090518114718283_pckzzhrp\\M.class", true); - -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\DoExternalProcessMinwon.class", true); -// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090515053147932_unktnred\\DoExternalProcessMinwon.class", true); - -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\TryCatchFinallyClass.class", true); -// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090514180437746_raelweyb\\TryCatchFinallyClass.class", true); -// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090514193807307_xfbwelrk\\AlertDataManager.class", true); -// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090514193807307_xfbwelrk\\AlertDataManager$LensedAlertDataQueryConnector.class", true); -// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090514193807307_xfbwelrk\\AlertDataManager$DomainCallback.class", true); -// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090514193807307_xfbwelrk\\AlertDataManager$AlertDataQueryConnector.class", true); -// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090514193807307_xfbwelrk\\AlertDataManager$AlertDataQueryConnector$1.class", true); -// context.addClass("TestByte", "C:\\revjava\\remote\\data\\input\\20090517092633378_kmnzqbgb\\RobotsApplet.class", true); - - -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\e.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\e$1.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\e$2.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\e$3.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\e$4.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\y\\y\\option\\e$5.class", true); - -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\SunGraphics2D.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\java2d\\SunGraphics2D.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\Channels$ReadableByteChannelImpl.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\java\\nio\\channels\\Channels$ReadableByteChannelImpl.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\jdbc\\odbc\\JdbcOdbcObject.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\PKCS7.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\security\\pkcs\\PKCS7.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\StepPattern.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\org\\apache\\xpath\\patterns\\StepPattern.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\ContextMatchStepPattern.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\org\\apache\\xpath\\patterns\\ContextMatchStepPattern.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\org\\apache\\xalan\\transformer\\TransformerImpl.class", true); - - -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\DatagramChannelImpl.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\nio\\ch\\DatagramChannelImpl.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\rapc\\net\\rim\\tools\\compiler\\d\\a5.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\java\\awt\\font\\TextLayout.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\com\\sun\\corba\\se\\internal\\iiop\\CDRInputStream_1_0.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\com\\sun\\java\\swing\\plaf\\motif\\MotifLookAndFeel.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\com\\sun\\imageio\\plugins\\jpeg\\JPEGMetadata.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\sun\\text\\resources\\DateFormatZoneData_sv.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\java\\nio\\channels\\FileChannel.class", true); -// context.addClass("TestByte", "C:\\Temp\\fernflower\\runtime1_4_2_03\\javax\\swing\\tree\\TreePath.class", true); - -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\ICC_Transform.class", true); - // block inlining! -// context.addClass("TestByte", "C:\\Temp\\fernflower\\dec\\LdapReferralContext.class", true); - -// context.addSpace(new File("C:\\bahn\\fullcode\\lgsrv20batch\\bin\\"), true); - -// context.addSpace(new File("C:\\Temp\\tmp\\enum\\struct\\attr\\dest\\struct\\attr\\en\\"), true); -// context.addSpace(new File("D:\\Nonbku\\workspace\\Fernflower\\bin\\struct\\attr\\en\\"), true); - -// context.addSpace(new File("D:\\Nonbku\\workspace\\InnerTest\\bin\\data\\"), true); -// context.addSpace(new File("D:\\Nonbku\\workspace\\Fernflower\\bin\\struct\\attr\\en\\"), true); - -// context.addSpace(new File("D:\\Nonbku\\workspace\\Fernflower\\bin\\"), true); -// context.addSpace(new File("C:\\bahn\\lfg\\geovis\\GeoVisStandalone\\bin\\"), true); -// context.addSpace(new File("C:\\bahn\\lfg\\geovis\\GeoVisCommon\\bin\\"), true); -// context.addSpace(new File("C:\\bahn\\lfg\\geovis\\GeoVisClient\\gvCl30Api\\build\\"), true); -// context.addSpace(new File("C:\\bahn\\lfg\\geovis\\GeoVisClient\\gvCl40Ext\\build\\"), true); - -// context.addSpace(new File("C:\\bahn\\lfg\\geovis\\GeoVisClient\\gvCl30Api\\build\\de\\dbsystems\\geovis\\gui\\view\\"), true); - -// fl.structcontext = context; - -// fl.decompileContext(context, new File("D:\\Nonbku\\workspace_3.4\\JavaRuntime1_4_2_03\\src\\")); -// fl.decompileContext(context, new File("C:\\bahn\\fullcode\\LfG\\server\\lgsrv20batch\\src\\java\\")); -// fl.decompileContext(context, new File("D:\\Nonbku\\workspace\\InnerTest\\src\\struct\\attr\\en\\")); -// fl.decompileContext(context, new File("D:\\Nonbku\\workspace\\Fernflower_dec\\src\\")); -// fl.decompileContext(context, new File("C:\\Temp\\fernflower\\rapc_ff\\")); -// fl.decompileContext(context, new File("C:\\Temp\\fernflower\\y_ff\\")); -// fl.decompileContext(context, new File("C:\\Temp\\fernflower\\dec\\")); -// fl.decompileContext(context, new File("C:\\Temp\\fernflower\\dec\\output\\")); -// decompiler.decompileContext(new File("C:\\Oleg\\dec\\output\\")); - decompiler.decompileContext(new File("D:\\temp_c\\workspace\\output\\")); -// decompiler.decompileContext(new File("C:\\Temp\\fernflower\\dec\\output\\")); -// decompiler.decompileContext(new File("C:\\Temp\\fernflower\\dec\\opera\\output\\dec\\")); -// fl.decompileContext(context, new File("C:\\bahn\\lfg\\geovis_dec\\GeoVisStandalone\\starter\\src\\java\\")); -// fl.decompileContext(context, new File("C:\\bahn\\lfg\\geovis_dec\\GeoVisCommon\\gvCom30Api\\src\\java\\")); -// fl.decompileContext(context, new File("C:\\bahn\\lfg\\geovis_dec\\GeoVisClient\\gvCl30Api\\src\\java\\")); -// fl.decompileContext(context, new File("C:\\bahn\\lfg\\geovis_dec\\GeoVisClient\\gvCl40Ext\\src\\java\\")); - -// MemoryMonitor.run = false; - - - - System.out.println("\n\nTime elapsed " + (new Date().getTime() - start.getTime())/1000); - -// System.out.println("1:\t"+Timer.getTime("general")); -// System.out.println("2:\t"+Timer.getTime("generalnull")); -// System.out.println("3:\t"+Timer.getTime("general1")); - - -// System.out.println("1:\t"+Timer.getTime(10)); -// System.out.println("> 1:\t"+Timer.getTime(11)); -// System.out.println("=:\t"+Timer.getTime(12)); - - } catch(Exception ex) { - ex.printStackTrace(); - } - - } - -} diff --git a/src/test/JetTest.java b/src/test/JetTest.java deleted file mode 100644 index 2bb1d43..0000000 --- a/src/test/JetTest.java +++ /dev/null @@ -1,40 +0,0 @@ -package test; - -import java.io.File; -import java.util.Date; -import java.util.HashMap; - -import de.fernflower.main.decompiler.ConsoleDecompiler; - -public class JetTest { - - public static void main(String[] args) { - - try { - - String current_path = new File(".").getCanonicalPath(); - - //TimerFactory.initialize(new File(".").getCanonicalPath()+"/lib/timer/hrtlib.dll"); - - Date start = new Date(); - - ConsoleDecompiler decompiler = new ConsoleDecompiler(new HashMap(){{put("log", "warn");put("ren", "1");}}); - - - //decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\BradTest.class"), true); - decompiler.addSpace(new File(current_path + "/bin/test/input/TestEclipse7.class"), true); - //decompiler.addSpace(new File(current_path + "/src/test/input/TestJavac7.class"), true); - //decompiler.addSpace(new File(current_path + "/src/test/input/TestJavac8.class"), true); - - //decompiler.decompileContext(new File("D:\\Oleg\\workspace\\output\\")); - decompiler.decompileContext(new File(current_path + "/src/test/output/")); - - System.out.println("\n\nTime elapsed " + (new Date().getTime() - start.getTime())/1000); - - } catch(Exception ex) { - ex.printStackTrace(); - } - - } - -} diff --git a/src/test/JunitTest.java b/src/test/JunitTest.java deleted file mode 100644 index acfc88f..0000000 --- a/src/test/JunitTest.java +++ /dev/null @@ -1,95 +0,0 @@ -package test; - -import java.io.File; -import java.util.Date; -import java.util.HashMap; - -import de.fernflower.main.decompiler.ConsoleDecompiler; -import de.fernflower.main.extern.IFernflowerPreferences; - -public class JunitTest { - - /** - * @param args - */ - public static void main(String[] args) { - - try { - - String current_path = new File(".").getCanonicalPath(); - - //TimerFactory.initialize(new File(".").getCanonicalPath()+"/lib/timer/hrtlib.dll"); - - Date start = new Date(); - - ConsoleDecompiler decompiler = new ConsoleDecompiler(new HashMap(){{ - put("log", "warn"); - put("ren", "1"); - put(IFernflowerPreferences.HIDE_DEFAULT_CONSTRUCTOR, "0"); - //put(IFernflowerPreferences.DECOMPILE_GENERIC_SIGNATURES, "1"); - put(IFernflowerPreferences.DECOMPILE_GENERIC_SIGNATURES, "0"); - put(IFernflowerPreferences.IDEA_NOT_NULL_ANNOTATION, "1"); - }}); - - - //decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\idea-junit.jar"), true); - //decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\svn4idea.jar"), true); - //decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\github.jar"), true); - //decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\copyright.jar"), true); - //decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\rt_1_4_2.jar"), true); - //decompiler.addSpace(new File("D:\\Oleg\\workspace\\swingset3_acceptance\\swingset3_original\\lib\\TimingFramework.jar"), true); - -// decompiler.decompileContext(new File("D:\\Oleg\\workspace\\output1\\")); - -// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\JUnitStatusLine$1$1.class"), true); -// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\JUnitStatusLine$1.class"), true); -// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\JUnitStatusLine$2.class"), true); -// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\JUnitStatusLine$StateInfo.class"), true); -// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\JUnitStatusLine$TestProgressListener.class"), true); -// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\JUnitStatusLine.class"), true); - -// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\JUnitConfiguration$1.class"), true); -// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\JUnitConfiguration$2.class"), true); -// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\JUnitConfiguration$Data.class"), true); -// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\JUnitConfiguration.class"), true); - - //decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\TestPackage$ResetConfigurationModuleAdapter.class"), true); - //decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\TestPackage$SearchForTestsTask.class"), true); - //decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\TestPackage.class"), true); - - //decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\TestAnnotations$TestInner.class"), true); - //decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\TestAnnotationsEclipse$TestInner.class"), true); - - //decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\LoadRecentBranchRevisions.class"), true); - //decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\LoadRecentBranchRevisions$1.class"), true); - - //decompiler.addSpace(new File("D:\\Oleg\\workspace\\Fernflower\\bin\\test\\input\\TestLoop.class"), true); - - //decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\GithubSelectForkPanel$1.class"), true); - //decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\GithubSelectForkPanel.class"), true); - -// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\ObjectOutputStream$1.class"), true); -// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\ObjectOutputStream$Caches.class"), true); -// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\ObjectOutputStream$DebugTraceInfoStack.class"), true); -// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\ObjectOutputStream$PutField.class"), true); -// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\ObjectOutputStream$PutFieldImpl.class"), true); -// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\ObjectOutputStream$HandleTable.class"), true); -// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\ObjectOutputStream$ReplaceTable.class"), true); -// decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\ObjectOutputStream$BlockDataOutputStream.class"), true); - //decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\ObjectOutputStream.class"), true); // writeArray SSAU endless loop - - //decompiler.addSpace(new File("D:\\Oleg\\workspace\\input\\SvnFormatSelector.class"), true); - - decompiler.addSpace(new File("D:\\Oleg\\workspace\\Fernflower\\src\\test\\input\\TestJavac8.class"), true); - - decompiler.decompileContext(new File("D:\\Oleg\\workspace\\output1\\")); - - System.out.println("\n\nTime elapsed " + (new Date().getTime() - start.getTime())/1000); - - } catch(Exception ex) { - ex.printStackTrace(); - } - - } - -} diff --git a/src/test/SumUpClasses.java b/src/test/SumUpClasses.java deleted file mode 100644 index 6d80385..0000000 --- a/src/test/SumUpClasses.java +++ /dev/null @@ -1,81 +0,0 @@ -package test; - -import java.io.File; -import java.io.IOException; -import java.util.Enumeration; -import java.util.jar.JarFile; -import java.util.zip.ZipEntry; -import java.util.zip.ZipFile; - - -public class SumUpClasses { - - public static void main(String[] args) { - - try { - File dir = new File("C:\\revjava\\remote\\data\\input\\"); - - long[] res = getClasses(dir); - - System.out.println("Count: "+res[0]); - System.out.println("Size: "+res[1]/1024/1024); - - } catch(Exception ex) { - ex.printStackTrace(); - } - } - - private static long[] getClasses(File file) { - - if(file.isDirectory()) { - - long count = 0, size = 0; - - for(File f : file.listFiles()) { - long[] arr = getClasses(f); - count+=arr[0]; - size+=arr[1]; - } - - return new long[] {count, size}; - - } else { - String filename = file.getName(); - if(filename.endsWith(".class")) { - return new long[] {1, file.length()}; - } else if(filename.endsWith(".zip")) { - try { - return getClassesZip(new ZipFile(file)); - } catch(IOException ex) { - System.out.println("Cannot read file: " + file.getAbsolutePath()); - } - } else if(filename.endsWith(".jar")) { - try { - return getClassesZip(new JarFile(file)); - } catch(IOException ex) { - System.out.println("Cannot read file: " + file.getAbsolutePath()); - } - } - } - - return new long[] {0, 0}; - } - - private static long[] getClassesZip(ZipFile archive) { - - long count = 0, size = 0; - - Enumeration en = archive.entries(); - while(en.hasMoreElements()) { - ZipEntry entr = (ZipEntry)en.nextElement(); - - if(!entr.isDirectory() && entr.getName().endsWith(".class")) { - count++; - size+=entr.getSize(); - } - } - - return new long[] {count, size}; - } - -} diff --git a/src/test/TestAnnotationsEclipse$MyAnnotation.class b/src/test/TestAnnotationsEclipse$MyAnnotation.class deleted file mode 100644 index a90e1db..0000000 Binary files a/src/test/TestAnnotationsEclipse$MyAnnotation.class and /dev/null differ diff --git a/src/test/TestAnnotationsEclipse$TestInner.class b/src/test/TestAnnotationsEclipse$TestInner.class deleted file mode 100644 index 7aa6122..0000000 Binary files a/src/test/TestAnnotationsEclipse$TestInner.class and /dev/null differ diff --git a/src/test/TestAnnotationsEclipse.class b/src/test/TestAnnotationsEclipse.class deleted file mode 100644 index 995be45..0000000 Binary files a/src/test/TestAnnotationsEclipse.class and /dev/null differ diff --git a/src/test/TestAnnotationsEclipse.java b/src/test/TestAnnotationsEclipse.java deleted file mode 100644 index 42a06c0..0000000 --- a/src/test/TestAnnotationsEclipse.java +++ /dev/null @@ -1,42 +0,0 @@ -package test; - -import java.lang.annotation.Annotation; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.reflect.Constructor; -import java.lang.reflect.Method; - -public class TestAnnotationsEclipse { - - public String a; - - @Retention(RetentionPolicy.CLASS) - @interface MyAnnotation {} - - public static void main(String[] args) { - - TestInner a = new TestAnnotationsEclipse().new TestInner(); - - for(Constructor mt : a.getClass().getConstructors()) { - - Annotation[][] ann = mt.getParameterAnnotations(); - - System.out.println(ann.length); - } - } - - protected class TestInner { - - public TestInner() {} - - public TestInner(String param1, Object param2, @MyAnnotation boolean param3) { - System.out.println(param1); - System.out.println(param2); - System.out.println(param3); - } - - public void accessField() { - System.out.println(TestAnnotationsEclipse.this.a); - } - } -} diff --git a/src/test/TestInput.java b/src/test/TestInput.java deleted file mode 100644 index 2273555..0000000 --- a/src/test/TestInput.java +++ /dev/null @@ -1,54 +0,0 @@ -package test; - -import java.io.File; -import java.util.Date; - -import com.vladium.utils.timing.TimerFactory; - -import de.fernflower.main.decompiler.ConsoleDecompiler; - - -public class TestInput { - - public static void main(String[] args) { - - try { - TimerFactory.initialize(new File(".").getCanonicalPath()+"/lib/timer/hrtlib.dll"); - } catch(Exception ex) { - ex.printStackTrace(); - } - - File[] dirs = new File("C:\\revjava\\remote\\data\\input\\").listFiles(); - - for(File dir : dirs) { - if(dir.isDirectory()) { - Date start = new Date(); - System.out.println("=========================================================================="); - System.out.println("Processing " + dir.getAbsolutePath()); - decompileDirectory(dir); - System.out.println("Proceeded " + dir.getAbsolutePath()); - System.out.println("Time elapsed " + (new Date().getTime() - start.getTime())/1000); - System.out.println("=========================================================================="); - } - } - - } - - private static void decompileDirectory(File dir) { - - try { - - ConsoleDecompiler decompiler = new ConsoleDecompiler(); - - decompiler.addSpace(dir, true); - - decompiler.decompileContext(new File("C:\\Temp\\fernflower\\dec\\output\\", dir.getName())); - - - } catch(Exception ex) { - ex.printStackTrace(); - } - - } - -} diff --git a/src/test/TestRapc.java b/src/test/TestRapc.java deleted file mode 100644 index 1e5c171..0000000 --- a/src/test/TestRapc.java +++ /dev/null @@ -1,38 +0,0 @@ -package test; - -import java.io.File; -import java.util.Date; -import java.util.HashMap; - -import com.vladium.utils.timing.TimerFactory; - -import de.fernflower.main.decompiler.ConsoleDecompiler; - - -public class TestRapc { - - public static void main(String[] args) { - - try { - - TimerFactory.initialize(new File(".").getCanonicalPath()+"/lib/timer/hrtlib.dll"); - - Date start = new Date(); - - - ConsoleDecompiler decompiler = new ConsoleDecompiler(new HashMap(){{put("log", "warn");put("ren", "1");}}); - - decompiler.addSpace(new File("C:\\Temp\\fernflower\\rapc\\"), true); - - decompiler.decompileContext(new File("C:\\Temp\\fernflower\\rapc_ff\\")); - - - System.out.println("\n\nTime elapsed " + (new Date().getTime() - start.getTime())/1000); - - } catch(Exception ex) { - ex.printStackTrace(); - } - - } - -} diff --git a/src/test/TestRuntime1_4_2_03.java b/src/test/TestRuntime1_4_2_03.java deleted file mode 100644 index 366a06a..0000000 --- a/src/test/TestRuntime1_4_2_03.java +++ /dev/null @@ -1,38 +0,0 @@ -package test; - -import java.io.File; -import java.util.Date; -import java.util.HashMap; - -import com.vladium.utils.timing.TimerFactory; - -import de.fernflower.main.decompiler.ConsoleDecompiler; - - -public class TestRuntime1_4_2_03 { - - public static void main(String[] args) { - - try { - - TimerFactory.initialize(new File(".").getCanonicalPath()+"/lib/timer/hrtlib.dll"); - - Date start = new Date(); - - - ConsoleDecompiler decompiler = new ConsoleDecompiler(new HashMap(){{put("log", "warn");}}); - - decompiler.addSpace(new File("C:\\Temp\\fernflower\\runtime1_4_2_03\\"), true); - - decompiler.decompileContext(new File("D:\\Nonbku\\workspace_3.4\\JavaRuntime1_4_2_03\\src\\")); - - - System.out.println("\n\nTime elapsed " + (new Date().getTime() - start.getTime())/1000); - - } catch(Exception ex) { - ex.printStackTrace(); - } - - } - -} diff --git a/src/test/TestSelf.java b/src/test/TestSelf.java deleted file mode 100644 index 7f1a339..0000000 --- a/src/test/TestSelf.java +++ /dev/null @@ -1,36 +0,0 @@ -package test; - -import java.io.File; -import java.util.Date; - -import com.vladium.utils.timing.TimerFactory; - -import de.fernflower.main.decompiler.ConsoleDecompiler; - - -public class TestSelf { - - public static void main(String[] args) { - - try { - - TimerFactory.initialize(new File(".").getCanonicalPath()+"/lib/timer/hrtlib.dll"); - - Date start = new Date(); - - - ConsoleDecompiler decompiler = new ConsoleDecompiler(); - - decompiler.addSpace(new File("D:\\Nonbku\\workspace_3.4\\Fernflower\\bin\\"), true); - - decompiler.decompileContext(new File("D:\\Nonbku\\workspace_3.4\\Fernflower_dec\\src\\")); - - System.out.println("\n\nTime elapsed " + (new Date().getTime() - start.getTime())/1000); - - } catch(Exception ex) { - ex.printStackTrace(); - } - - } - -} diff --git a/src/test/TestValidateXml.java b/src/test/TestValidateXml.java deleted file mode 100644 index a84e428..0000000 --- a/src/test/TestValidateXml.java +++ /dev/null @@ -1,69 +0,0 @@ -package test; - -import java.io.File; -import java.io.IOException; - -import javax.xml.transform.Source; -import javax.xml.transform.stream.StreamSource; -import javax.xml.validation.Schema; -import javax.xml.validation.SchemaFactory; -import javax.xml.validation.Validator; - -import org.xml.sax.ErrorHandler; -import org.xml.sax.SAXException; -import org.xml.sax.SAXParseException; - -public class TestValidateXml { - - public static void main(String[] args) { - - try { - // 1. Lookup a factory for the W3C XML Schema language - SchemaFactory factory = SchemaFactory.newInstance("http://www.w3.org/2001/XMLSchema"); - - // 2. Compile the schema. - // Here the schema is loaded from a java.io.File, but you could use - // a java.net.URL or a javax.xml.transform.Source instead. - Schema schema = factory.newSchema(new File("/opt/xml/docbook/xsd/docbook.xsd")); - - // 3. Get a validator from the schema. - Validator validator = schema.newValidator(); - validator.setErrorHandler(new ForgivingErrorHandler()); - - // 4. Parse the document you want to check. - Source source = new StreamSource(args[0]); - - // 5. Check the document - try { - validator.validate(source); - System.out.println(args[0] + " is valid."); - } catch (SAXException ex) { - System.out.println(args[0] + " is not valid because "); - System.out.println(ex.getMessage()); - } - } catch(IOException ex) { - System.out.println(args[0] + " is not valid because "); - System.out.println(ex.getMessage()); - } catch(SAXException ex) { - System.out.println(args[0] + " is not valid because "); - System.out.println(ex.getMessage()); - } - } - -} - -class ForgivingErrorHandler implements ErrorHandler { - - public void warning(SAXParseException ex) { - System.err.println(ex.getMessage()); - } - - public void error(SAXParseException ex) { - System.err.println(ex.getMessage()); - } - - public void fatalError(SAXParseException ex) throws SAXException { - throw ex; - } - -} diff --git a/src/test/TestYWorks.java b/src/test/TestYWorks.java deleted file mode 100644 index 4eec73a..0000000 --- a/src/test/TestYWorks.java +++ /dev/null @@ -1,38 +0,0 @@ -package test; - -import java.io.File; -import java.util.Date; -import java.util.HashMap; - -import com.vladium.utils.timing.TimerFactory; - -import de.fernflower.main.decompiler.ConsoleDecompiler; - - -public class TestYWorks { - - public static void main(String[] args) { - - try { - - TimerFactory.initialize(new File(".").getCanonicalPath()+"/lib/timer/hrtlib.dll"); - - Date start = new Date(); - - - ConsoleDecompiler decompiler = new ConsoleDecompiler(new HashMap(){{put("log", "warn");put("ren", "1");}}); - - decompiler.addSpace(new File("C:\\Temp\\fernflower\\y\\"), true); - - decompiler.decompileContext(new File("C:\\Temp\\fernflower\\y_ff\\")); - - - System.out.println("\n\nTime elapsed " + (new Date().getTime() - start.getTime())/1000); - - } catch(Exception ex) { - ex.printStackTrace(); - } - - } - -} diff --git a/src/test/VladDebug.java b/src/test/VladDebug.java deleted file mode 100644 index 707e738..0000000 --- a/src/test/VladDebug.java +++ /dev/null @@ -1,67 +0,0 @@ -package test; - -import java.io.File; - -import de.fernflower.main.decompiler.ConsoleDecompiler; - - -public class VladDebug { - - public static void main(String[] args) { - - try { - - ConsoleDecompiler decompiler = new ConsoleDecompiler(); - - decompiler.addSpace(new File("C:\\Temp\\fernflower\\vladdebug\\"), true); - - decompiler.decompileContext(new File("D:\\Nonbku\\workspace_3.4\\vladdebug\\src\\")); - - -// Fernflower fl = new Fernflower(); -// -// DecompilerContext.getCurrentContext().setLogger(new PrintStreamLogger(IFernflowerLogger.WARNING, System.out)); -// -// GlobalOptions.setProperty(GlobalOptions.DECOMPILE_INNER, "1"); -// GlobalOptions.setProperty(GlobalOptions.DECOMPILE_CLASS_1_4, "1"); -// GlobalOptions.setProperty(GlobalOptions.DECOMPILE_ASSERTIONS, "1"); -// GlobalOptions.setProperty(GlobalOptions.REMOVE_BRIDGE, "1"); -// GlobalOptions.setProperty(GlobalOptions.REMOVE_SYNTHETIC, "0"); -// GlobalOptions.setProperty(GlobalOptions.HIDE_EMPTY_SUPER, "1"); -// GlobalOptions.setProperty(GlobalOptions.HIDE_DEFAULT_CONSTRUCTOR, "1"); -// GlobalOptions.setProperty(GlobalOptions.DECOMPILE_GENERIC_SIGNATURES, "0"); -// GlobalOptions.setProperty(GlobalOptions.OUTPUT_COPYRIGHT_COMMENT, "0"); -// GlobalOptions.setProperty(GlobalOptions.NO_EXCEPTIONS_RETURN, "1"); -// GlobalOptions.setProperty(GlobalOptions.DECOMPILE_ENUM, "1"); -// GlobalOptions.setProperty(GlobalOptions.FINALLY_DEINLINE, "1"); -// GlobalOptions.setProperty(GlobalOptions.REMOVE_GETCLASS_NEW, "1"); -// -// GlobalOptions.setProperty(GlobalOptions.BOOLEAN_TRUE_ONE, "1"); -// GlobalOptions.setProperty(GlobalOptions.SYNTHETIC_NOT_SET, "1"); -// GlobalOptions.setProperty(GlobalOptions.UNDEFINED_PARAM_TYPE_OBJECT, "1"); -// -// -// if(args != null && args.length > 1) { -// -// for(int i=0;i list = Arrays.asList(1, 2, 3, 4, 5, 6, 7); - list.forEach(n -> {int a = 2 * n; System.out.println(a);}); - } - -} diff --git a/src/test/input/TestLoop.java b/src/test/input/TestLoop.java deleted file mode 100644 index 4275153..0000000 --- a/src/test/input/TestLoop.java +++ /dev/null @@ -1,20 +0,0 @@ -package test.input; - -public class TestLoop { - - public static void main(String[] args) { - - boolean a = true; - while(true) { - try { - if(!a) { - return; - } - } finally { - System.out.println("1"); - } - } - - } - -} diff --git a/src/test/misc/ExtTest.java b/src/test/misc/ExtTest.java deleted file mode 100644 index ec3d30c..0000000 --- a/src/test/misc/ExtTest.java +++ /dev/null @@ -1,81 +0,0 @@ -package test.misc; - -import java.io.IOException; -import java.sql.Timestamp; -import java.util.ArrayList; -import java.util.Date; -import java.util.HashMap; -import java.util.Map.Entry; - -public class ExtTest extends ArrayList { - - public static void main(String[] args) { - - Date d = new Date(); Timestamp t = new Timestamp(d.getTime()); - System.out.println(d.after(t)); - - System.out.println((int)-1); - System.out.println((int)1); - System.out.println((Integer)1); - System.out.println((Integer)1); - - Class c = String.class; - - Integer Integer = 0; - Integer = (Integer)-1; - - int z = 0; - z = z+++(++z); - - Entry ent = (Entry)new HashMap().entrySet().iterator().next(); - - label1: { - System.out.println("1"); - if(Math.random() > 4) { - break label1; - } - System.out.println("2"); - } - System.out.println("3"); - } - - public void test(T o) { - - } - - public void testException() throws IOException { -// if(true) { -// throw new RuntimeException(); -// } else { -// throw new IOException(); -// } -// throw true?new IOException():new IOException(); -// throw true?new ClassCastException():new IOException(); - } - - public static int ttt() { - - Object obj = new Integer(5); - synchronized (new Integer(3)) { - System.out.println(obj); - obj = null; - } - - - System.out.println("1"); - if(Math.random() > 1) { - System.out.println("2"); - } else { - System.out.println("3"); - } - System.out.println("4"); - - int a = 0; - try { - a = 2; - return a; - } finally { - a = 4; - } - } -} diff --git a/src/test/misc/GenericTest.java b/src/test/misc/GenericTest.java deleted file mode 100644 index 3ff6753..0000000 --- a/src/test/misc/GenericTest.java +++ /dev/null @@ -1,65 +0,0 @@ -package test.misc; - -import java.io.Serializable; -import java.util.AbstractCollection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Date; -import java.util.List; - -public class GenericTest { - - @test.misc.ann.RequestForEnhancement( - id = 2868724, - synopsis = "Enable time-travel", - engineer = "Mr. Peabody", - date = "4/1/3007", - arr = {"1","2","3"}, - cl = Void.class - ) - @Deprecated - public boolean test(@Deprecated Collection c) { - return true; - } - - public int testparam(boolean t, @Deprecated List lst, double d) { - return 0; - } - -} - -class GenericTestChild extends GenericTest> implements Serializable { - -// public void test(Collection c) { -// T var1 = c.iterator().next(); -// c.add(var1); -// } - - public List[][] field; - - public void test(List list1, List list) { - -// l2: { -// l1: { -// if(Math.random() > 2){ -// break l1; -// } -// -// System.out.println("1"); -// break l2; -// } -// -// System.out.println("2"); -// } - - if(Math.random() > 2){ - System.out.println("2"); - } else { - System.out.println("1"); - } - - - } - -} - diff --git a/src/test/misc/ITest.java b/src/test/misc/ITest.java deleted file mode 100644 index 1924a8d..0000000 --- a/src/test/misc/ITest.java +++ /dev/null @@ -1,9 +0,0 @@ -package test.misc; - -import java.io.Serializable; - -public interface ITest extends Serializable, Comparable { - - public void test(); - -} diff --git a/src/test/misc/MainClass.java b/src/test/misc/MainClass.java deleted file mode 100644 index abb6522..0000000 --- a/src/test/misc/MainClass.java +++ /dev/null @@ -1,115 +0,0 @@ -package test.misc; - -import java.util.ArrayList; -import java.util.List; - -public class MainClass { - - private int intfield; - - private static int stfield; - - private static void statmeth(int t) { - System.out.println(t); - } - - private String maintest(int v) { - System.out.println(v+"test!"); - return ""; - } - - public MainClass() { - super(); - } - - public void mainclosure() { - - final int local1 = (int)Math.random(); - - List l = new ArrayList(new ArrayList()) { - - { - System.out.println(intfield); - } - - public void anontest() { - System.out.println(local1); - } - }; - - class LocalClass { - - public LocalClass(String s) { - System.out.println(s); - statmeth(4); - } - - public void localtest() { - int i = intfield; - intfield = 4; - maintest(i); - - System.out.println(local1); - - System.out.println(stfield); - stfield = 3; - } - - class LocalMemberClass { - - } - - } - - boolean t = false; - if(t) { - LocalClass lc = new LocalClass("1"); - LocalClass.LocalMemberClass rt = lc.new LocalMemberClass();; - } else { - if(Math.random() > 1) { - LocalClass lc1 = new LocalClass("1"); - } - System.out.println(); - } - - } - - - public class MemberClass { - - public MemberClass(String z) { - System.out.println(z); - } - - public void membertest() { - int i = intfield; - maintest(i); - stfield = 5; - - Member2Class.Member3Class t = (new Member2Class()).new Member3Class(); - } - - public class Member2Class1 { - - public class Member3Class1 { - - } - } - - class Member2Class { - - public void member2test() { - int i = intfield; - maintest(i); - Member2Class1.Member3Class1 t; - } - - public class Member3Class { - - } - - } - - } - -} diff --git a/src/test/misc/MiscTest.java b/src/test/misc/MiscTest.java deleted file mode 100644 index c47b3da..0000000 --- a/src/test/misc/MiscTest.java +++ /dev/null @@ -1,83 +0,0 @@ -package test.misc; - -public class MiscTest { - - public static double test = 1 / 0; - - - public static void main(String[] args) { - - System.out.println(test); - - String s = "a b"; - s = s.replaceAll(" ", "  "); - System.out.println(s); - - try { - throw null; - } catch(RuntimeException ex) { - System.out.println(ex); - } - - - int a = 3; - - if(a == 1) { - System.out.println("1"); - } else if(a == 2) { - System.out.println("2"); - } else if(a == 3) { - System.out.println("3"); - } else if(a == 4) { - System.out.println("4"); - } else if(a == 5) { - System.out.println("5"); - } else if(a == 6) { - System.out.println("6"); - } else if(a == 7) { - System.out.println("7"); - } - - if(a == 0) { - return; - } else { - System.out.println("0"); - } - - if(a==4) { - System.out.println("assert"); - assert a==4 && a==5; - } else { - assert false; - } - - assert a==5: Math.random(); - - assert false: Math.random(); - - assert true; - - assert true: Math.random(); - - /* - label: { - if(a == 0) { - System.out.println("0"); - } else if(a == 1) { - System.out.println("01"); - } else { - if(a == -1) { - System.out.println("-1"); - } else { - System.out.println("-2"); - } - break label; - } - - System.out.println("end"); - } - System.out.println("end1"); - */ - } - -} diff --git a/src/test/misc/MultipleClassTest.java b/src/test/misc/MultipleClassTest.java deleted file mode 100644 index ccd9b97..0000000 --- a/src/test/misc/MultipleClassTest.java +++ /dev/null @@ -1,33 +0,0 @@ -package test.misc; - -public class MultipleClassTest { - - public int field = this.hashCode(); - - public void test() { - - class Test1 { - public int t1() { -// System.out.println("1"); - - try { - return 2; - } finally { - System.out.println("1"); - return 3; - } - - } - } - - class Test2 { - public void t2() { - System.out.println("2"); - //new Test1().t1(); - } - } - -// new Test1().t1(); - } - -} diff --git a/src/test/misc/ObfuscatedExceptionDetector.java b/src/test/misc/ObfuscatedExceptionDetector.java deleted file mode 100644 index c4a22ba..0000000 --- a/src/test/misc/ObfuscatedExceptionDetector.java +++ /dev/null @@ -1,55 +0,0 @@ -package test.misc; - -import java.io.File; -import java.util.Date; - -import com.vladium.utils.timing.TimerFactory; - -import de.fernflower.main.decompiler.ConsoleDecompiler; - -public class ObfuscatedExceptionDetector { - - public static void main(String[] args) { - - try { - TimerFactory.initialize(new File(".").getCanonicalPath()+"/lib/timer/hrtlib.dll"); - } catch(Exception ex) { - ex.printStackTrace(); - } - - File[] dirs = new File("C:\\revjava\\remote\\data\\input\\").listFiles(); - - for(File dir : dirs) { - if(dir.isDirectory()) { - Date start = new Date(); - System.out.println("=========================================================================="); - System.out.println("Processing " + dir.getAbsolutePath()); - decompileDirectory(dir); - System.out.println("Proceeded " + dir.getAbsolutePath()); - System.out.println("Time elapsed " + (new Date().getTime() - start.getTime())/1000); - System.out.println("=========================================================================="); - } - } - - } - - private static void decompileDirectory(File dir) { - - try { - - - - ConsoleDecompiler decompiler = new ConsoleDecompiler(); - - decompiler.addSpace(dir, true); - - decompiler.decompileContext(new File("C:\\Temp\\fernflower\\dec\\output\\", dir.getName())); - - - } catch(Exception ex) { - ex.printStackTrace(); - } - - } - -} diff --git a/src/test/misc/ParentFieldTest.java b/src/test/misc/ParentFieldTest.java deleted file mode 100644 index caccc2a..0000000 --- a/src/test/misc/ParentFieldTest.java +++ /dev/null @@ -1,19 +0,0 @@ -package test.misc; - -public class ParentFieldTest { - - public int test = 0; - - private class Parent extends ParentFieldTest { - - private class Child { - - public void test() { - System.out.println(ParentFieldTest.this.test); - } - - } - - } - -} diff --git a/src/test/misc/SuperTest.java b/src/test/misc/SuperTest.java deleted file mode 100644 index 01fc990..0000000 --- a/src/test/misc/SuperTest.java +++ /dev/null @@ -1,27 +0,0 @@ -package test.misc; - -import java.util.ArrayList; - -public class SuperTest extends ArrayList { - - public SuperTest() { - super(3); - super.modCount = 2; - SuperTest.super.size(); - } - - public int size() { - System.out.println("1"); - return 0; - } - - class SuperTest1 { - - public void test() { - SuperTest.super.size(); - SuperTest.super.modCount = 2; - } - - } - -} diff --git a/src/test/misc/ann/RequestForEnhancement.java b/src/test/misc/ann/RequestForEnhancement.java deleted file mode 100644 index 25c612c..0000000 --- a/src/test/misc/ann/RequestForEnhancement.java +++ /dev/null @@ -1,22 +0,0 @@ -package test.misc.ann; - -import java.lang.annotation.ElementType; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -/** - * Describes the Request-For-Enhancement(RFE) that led - * to the presence of the annotated API element. - */ - -@Retention(RetentionPolicy.RUNTIME) -@Target(ElementType.METHOD) -public @interface RequestForEnhancement { - int id(); - String synopsis(); - String engineer() default "[unassigned]"; - String date() default "[unimplemented]"; - String[] arr(); - Class cl(); -} diff --git a/src/test/misc/en/AutocastTest.java b/src/test/misc/en/AutocastTest.java deleted file mode 100644 index ea08948..0000000 --- a/src/test/misc/en/AutocastTest.java +++ /dev/null @@ -1,17 +0,0 @@ -package test.misc.en; - -import java.util.HashMap; - -public class AutocastTest { - - public static void main(String[] args) { - - HashMap map = new HashMap(); - - Integer key = new Integer(1); - Integer value = map.containsKey(key)?0:map.get(key); - - System.out.println(value == null); - } - -} diff --git a/src/test/misc/en/FastSetTest.java b/src/test/misc/en/FastSetTest.java deleted file mode 100644 index ab94814..0000000 --- a/src/test/misc/en/FastSetTest.java +++ /dev/null @@ -1,60 +0,0 @@ -package test.misc.en; - -import java.util.Arrays; -import java.util.HashSet; -import java.util.Set; -import java.util.SortedSet; -import java.util.TreeSet; - -import de.fernflower.util.FastSetFactory; -import de.fernflower.util.FastSetFactory.FastSet; - -public class FastSetTest { - - public static void main(String[] args) { - - SortedSet set = new TreeSet(); - - for(int i=0;i<3;i++) { - set.add(i); - } - -// for(Integer s : set) { -// System.out.println(s); -// } - - FastSetFactory factory = new FastSetFactory(set); - -// factory.print(); - -// int index = 1; -// for(int i=0;i<100;i++) { -// if(i % 32 == 0) { -// index = 1; -// } -// -// System.out.println(index); -// index<<=1; -// -// } - - - - FastSet set1 = factory.spawnEmptySet(); - set1.addAll(new HashSet(Arrays.asList(new Integer[]{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}))); - - FastSet set2 = set1.getCopy(); - set2.remove(4); - set2.remove(5); - set2.add(10); - - set1.symdiff(set2); - Set set3 = new TreeSet(set1.toPlainSet()); - - for(Integer s : set3) { - System.out.println(s); - } - } - - -} diff --git a/src/test/misc/en/FinallyTest.java b/src/test/misc/en/FinallyTest.java deleted file mode 100644 index 2162636..0000000 --- a/src/test/misc/en/FinallyTest.java +++ /dev/null @@ -1,22 +0,0 @@ -package test.misc.en; - -public class FinallyTest { - - public FinallyTest() { - - int i; - try { - try { - i = 0; - } finally { - i = 1; - } - i = 2; - } finally { - i = 3; - } - - System.out.println(i); - } - -} diff --git a/src/test/misc/en/Foo.java b/src/test/misc/en/Foo.java deleted file mode 100644 index 762dcda..0000000 --- a/src/test/misc/en/Foo.java +++ /dev/null @@ -1,52 +0,0 @@ -package test.misc.en; - -class Foo { - - public Foo() {} - - public Foo(String test) {} - - private void foo() { - System.out.println("qwe"); - } - - static class Bar extends Foo { - void bar() { - System.out.println("1"); - //((Foo)this).foo(); - } - } - - static class Bar1 extends Bar { - void bar() { - super.bar(); - //System.out.println("2"); - //((Foo)this).foo(); - } - } - - static class Bar2 extends Bar1 { - void bar1() { - super.bar(); - } - } - - public static void main(String[] args) { - new Bar2().bar(); - } - - public int testfin() { - - int i; - - try { - System.out.println(); - i = 0; - } finally { - System.out.println(); - } - - - return i; - } -} diff --git a/src/test/misc/en/InnerTest$1.java b/src/test/misc/en/InnerTest$1.java deleted file mode 100644 index dd58e8e..0000000 --- a/src/test/misc/en/InnerTest$1.java +++ /dev/null @@ -1,22 +0,0 @@ -package test.misc.en; - - -class InnerTest$1 extends Foo implements Runnable { - - // $FF: synthetic field - final String val$test; - // $FF: synthetic field - final int val$test1; - - - InnerTest$1(String var1, int var2) { - super(); - this.val$test = var1; - this.val$test1 = var2; - } - - public void run() { - System.out.println(this.val$test); - System.out.println(this.val$test1); - } -} diff --git a/src/test/misc/en/InnerTest.java b/src/test/misc/en/InnerTest.java deleted file mode 100644 index 44361ff..0000000 --- a/src/test/misc/en/InnerTest.java +++ /dev/null @@ -1,13 +0,0 @@ -package test.misc.en; - -import test.misc.en.InnerTest$1; - -public class InnerTest { - - public static void main(String[] args) throws Throwable { - String test = args[0]; - int test1 = Integer.parseInt(args[1]); - new InnerTest$1(test, test1); - System.out.println("готово"); - } -} diff --git a/src/test/misc/en/InnerTestOld.java b/src/test/misc/en/InnerTestOld.java deleted file mode 100644 index b3af77c..0000000 --- a/src/test/misc/en/InnerTestOld.java +++ /dev/null @@ -1,20 +0,0 @@ -package test.misc.en; - -public class InnerTestOld { - - public static void main(String[] args) { - - final String test = args[0]; - final int test1 = Integer.parseInt(args[1]); - - Runnable r = new Runnable() { - public void run() { - System.out.println(test); - System.out.println(test1); - } - }; - - System.out.println("done"); - } - -} diff --git a/src/test/misc/en/IrredTest.java b/src/test/misc/en/IrredTest.java deleted file mode 100644 index c1f8de0..0000000 --- a/src/test/misc/en/IrredTest.java +++ /dev/null @@ -1,1373 +0,0 @@ -package test.misc.en; - -public class IrredTest { - - static final boolean a = false; - static final boolean b = false; - private static final long serialVersionUID = -875163484858750714L; - private static final String[] Y; - - -// static { -// String[] var10000 = new String[84]; -// String[] var10001 = var10000; -// byte var10002 = 0; -// String var10003 = "tm9b336"; -// byte var10004 = 83; -// -// labelwhile: -// while(true) { -// char[] var3; -// label125: { -// char[] var8 = var10003.toCharArray(); -// int var10006 = var8.length; -// int var0 = 0; -// var3 = var8; -// int var7 = var10006; -// if(var10006 > 1) { -// var3 = var8; -// var7 = var10006; -// if(var10006 <= var0) { -// break label125; -// } -// } -// -// do { -// char[] var2 = var3; -// int var10007 = var0; -// -// while(true) { -// char var10008 = var2[var10007]; -// byte var10009; -// switch(var0 % 5) { -// case 0: -// var10009 = 28; -// break; -// case 1: -// var10009 = 25; -// break; -// case 2: -// var10009 = 77; -// break; -// case 3: -// var10009 = 18; -// break; -// default: -// var10009 = 9; -// } -// -// var2[var10007] = (char)(var10008 ^ var10009); -// ++var0; -// if(var7 != 0) { -// break; -// } -// -// var10007 = var7; -// var2 = var3; -// } -// } while(var7 > var0); -// } -// -// String var1 = (new String(var3)).intern(); -// switch(var10004) { -// case 0: -// var10001[var10002] = var1; -// var10001 = var10000; -// var10002 = 2; -// var10003 = "_V\u0018\\]43d"; -// var10004 = 1; -// break; -// case 1: -// var10001[var10002] = var1; -// var10001 = var10000; -// var10002 = 3; -// var10003 = " 1) { - var7 = var2; - if(var8 <= var0) { - break label123; - } - } - - do { - char[] var10 = var7; - int var10007 = var0; - - while(true) { - char var10008 = var10[var10007]; - byte var10009; - switch(var0 % 5) { - case 0: - var10009 = 28; - break; - case 1: - var10009 = 25; - break; - case 2: - var10009 = 77; - break; - case 3: - var10009 = 18; - break; - default: - var10009 = 9; - } - - var10[var10007] = (char)(var10008 ^ var10009); - ++var0; - if(var8 != 0) { - break; - } - - var10007 = var8; - var10 = var7; - } - } while(var8 > var0); - } - - String var6 = (new String(var7)).intern(); - switch(var10004) { - case 0: - var10001[var10002] = var6; - var10001 = var10000; - var10002 = 2; - var10003 = "_V\u0018\\]43d"; - var10004 = 1; - break; - case 1: - var10001[var10002] = var6; - var10001 = var10000; - var10002 = 3; - var10003 = " lst1 = new ArrayList(Arrays.asList(new Integer[]{1, 2, 3})); - List lst2 = new LinkedList(Arrays.asList(new Integer[]{1, 2, 3})); - - Date d = new Date(); - - for(int i=0;i<300000;i++) { - lst1.add(1, i); - } - - System.out.println(new Date().getTime() - d.getTime()); - - d = new Date(); - - for(int i=0;i<300000;i++) { - lst2.add(1, i); - } - - System.out.println(new Date().getTime() - d.getTime()); - - } - -} diff --git a/src/test/misc/en/Operation.java b/src/test/misc/en/Operation.java deleted file mode 100644 index 3051fb3..0000000 --- a/src/test/misc/en/Operation.java +++ /dev/null @@ -1,51 +0,0 @@ -package test.misc.en; - -public enum Operation { - - PLUS(2) { - double eval(double x, double y) { return x + y; } - }, - MINUS(7) { - double eval(double x, double y) { return x - y; } - }, - TIMES(8) { - double eval(double x, double y) { return x * y; } - }, - DIVIDED_BY(0) { - double eval(double x, double y) { return x / y; } - }; - - - // Perform the arithmetic operation represented by this constant - - abstract double eval(double x, double y); - - Operation(int t) { - -// class LocalClass { -// -// } -// -// LocalClass e = null; - - System.out.println(); - } - - - public static void main(String args[]) { - double x = Double.parseDouble(args[0]); - double y = Double.parseDouble(args[1]); - - Operation opp = Operation.DIVIDED_BY; - - switch(opp) { - case MINUS: - System.out.println(); - case PLUS: - } - - for (Operation op : Operation.values()) { - System.out.println(x + " " + op + " " + y + " = " + op.eval(x, y)); - } - } -} \ No newline at end of file diff --git a/src/test/misc/en/SwitchInTest.java b/src/test/misc/en/SwitchInTest.java deleted file mode 100644 index 8d04665..0000000 --- a/src/test/misc/en/SwitchInTest.java +++ /dev/null @@ -1,19 +0,0 @@ -package test.misc.en; - -public class SwitchInTest { - - public static void main(String[] args) { - - short t = 2; - switch(t) { - case -56: - case 0: - case 3: - case 129: - System.out.println(); - default: - } - - } - -} diff --git a/src/test/misc/en/TestOperation.java b/src/test/misc/en/TestOperation.java deleted file mode 100644 index c6763b1..0000000 --- a/src/test/misc/en/TestOperation.java +++ /dev/null @@ -1,31 +0,0 @@ -package test.misc.en; - -public class TestOperation { - - public void test() { - - double x = 2; - double y = 3; - - Operation opp = Operation.DIVIDED_BY; - - switch(opp) { - case MINUS: - System.out.println(); - case PLUS: - } - - switch(Operation.MINUS) { - case DIVIDED_BY: - System.out.println(); - case PLUS: - case TIMES: - } - - for (Operation op : Operation.values()) { - System.out.println(x + " " + op + " " + y + " = " + op.eval(x, y)); - } - - } - -} diff --git a/src/test/output/TestEclipse7.java b/src/test/output/TestEclipse7.java deleted file mode 100644 index a37b582..0000000 --- a/src/test/output/TestEclipse7.java +++ /dev/null @@ -1,15 +0,0 @@ -package test.output; - -import java.lang.reflect.Method; - -public class TestEclipse7 { - - public void testMultiCatch() { - try { - Method e = this.getClass().getDeclaredMethod("foo", new Class[0]); - } catch (SecurityException | NoSuchMethodException var2) { - var2.printStackTrace(); - } - - } -} diff --git a/src/test/output/TestJavac7.java b/src/test/output/TestJavac7.java deleted file mode 100644 index 9ddb71e..0000000 --- a/src/test/output/TestJavac7.java +++ /dev/null @@ -1,129 +0,0 @@ -package test.output; - -import java.io.FileReader; -import java.io.IOException; -import java.lang.reflect.Method; - -public class TestJavac7 { - - public void testTryResources() throws IOException { - FileReader var1 = new FileReader("file"); - Throwable var2 = null; - - try { - FileReader var3 = new FileReader("file"); - Throwable var4 = null; - - try { - System.out.println(); - } catch (Throwable var27) { - var4 = var27; - throw var27; - } finally { - if(var3 != null) { - if(var4 != null) { - try { - var3.close(); - } catch (Throwable var26) { - var4.addSuppressed(var26); - } - } else { - var3.close(); - } - } - - } - } catch (Throwable var29) { - var2 = var29; - throw var29; - } finally { - if(var1 != null) { - if(var2 != null) { - try { - var1.close(); - } catch (Throwable var25) { - var2.addSuppressed(var25); - } - } else { - var1.close(); - } - } - - } - - } - - public void testTryResources1() throws IOException { - try { - FileReader var1 = new FileReader("file"); - Throwable var2 = null; - - try { - System.out.println("block"); - } catch (Throwable var20) { - var2 = var20; - throw var20; - } finally { - if(var1 != null) { - if(var2 != null) { - try { - var1.close(); - } catch (Throwable var19) { - var2.addSuppressed(var19); - } - } else { - var1.close(); - } - } - - } - } catch (RuntimeException var22) { - System.out.println(var22.toString()); - } finally { - System.out.println("finally"); - } - - } - - public void testMultiCatch() { - try { - Method var1 = this.getClass().getDeclaredMethod("foo", new Class[0]); - } catch (SecurityException var2) { - var2.printStackTrace(); - } - - } - - public void testSwitchString() { - String var1 = ""; - byte var3 = -1; - switch(var1.hashCode()) { - case 2112: - if(var1.equals("BB")) { - var3 = 1; - } else if(var1.equals("Aa")) { - var3 = 0; - } - break; - case 3040: - if(var1.equals("__")) { - var3 = 2; - } - } - - switch(var3) { - case 0: - System.out.println("!"); - break; - case 1: - System.out.println("?"); - break; - case 2: - System.out.println("_"); - break; - default: - System.out.println("#"); - } - - } -} diff --git a/src/test/output/TestJavac8.java b/src/test/output/TestJavac8.java deleted file mode 100644 index 2b66907..0000000 --- a/src/test/output/TestJavac8.java +++ /dev/null @@ -1,104 +0,0 @@ -package test.output; - -import java.io.FileReader; -import java.io.IOException; -import java.lang.reflect.Method; - -public class TestJavac8 { - - public static void main(String[] var0) { - (new TestJavac8()).testLambda(); - } - - public void testTryResources() throws IOException { - FileReader var1 = new FileReader("file"); - Throwable var2 = null; - - try { - FileReader var3 = new FileReader("file"); - Throwable var4 = null; - - try { - System.out.println(); - } catch (Throwable var27) { - var4 = var27; - throw var27; - } finally { - if(var3 != null) { - if(var4 != null) { - try { - var3.close(); - } catch (Throwable var26) { - var4.addSuppressed(var26); - } - } else { - var3.close(); - } - } - - } - } catch (Throwable var29) { - var2 = var29; - throw var29; - } finally { - if(var1 != null) { - if(var2 != null) { - try { - var1.close(); - } catch (Throwable var25) { - var2.addSuppressed(var25); - } - } else { - var1.close(); - } - } - - } - - } - - public void testMultiCatch() { - try { - Method var1 = this.getClass().getDeclaredMethod("foo", new Class[0]); - } catch (SecurityException var2) { - var2.printStackTrace(); - } - - } - - private void testSwitchString() { - String var1 = ""; - byte var3 = -1; - switch(var1.hashCode()) { - case 2112: - if(var1.equals("BB")) { - var3 = 1; - } else if(var1.equals("Aa")) { - var3 = 0; - } - break; - case 3040: - if(var1.equals("__")) { - var3 = 2; - } - } - - switch(var3) { - case 0: - System.out.println("!"); - break; - case 1: - System.out.println("?"); - break; - case 2: - System.out.println("_"); - break; - default: - System.out.println("#"); - } - - } - - public void testLambda() { - } -} diff --git a/src/test/util/DotExporter.java b/src/test/util/DotExporter.java deleted file mode 100644 index 88b9320..0000000 --- a/src/test/util/DotExporter.java +++ /dev/null @@ -1,183 +0,0 @@ -package test.util; - -import java.io.BufferedOutputStream; -import java.io.File; -import java.io.FileNotFoundException; -import java.io.FileOutputStream; -import java.io.IOException; -import java.util.Collections; -import java.util.HashSet; -import java.util.List; - - -import de.fernflower.code.cfg.BasicBlock; -import de.fernflower.code.cfg.ControlFlowGraph; -import de.fernflower.modules.decompiler.StatEdge; -import de.fernflower.modules.decompiler.sforms.DirectGraph; -import de.fernflower.modules.decompiler.sforms.DirectNode; -import de.fernflower.modules.decompiler.stats.Statement; -import de.fernflower.modules.decompiler.vars.VarVersionEdge; -import de.fernflower.modules.decompiler.vars.VarVersionNode; -import de.fernflower.modules.decompiler.vars.VarVersionsGraph; - -public class DotExporter { - - - public static String toDotFormat(Statement stat) { - - StringBuffer buffer = new StringBuffer(); - - buffer.append("digraph G {\r\n"); - - for(Statement st : stat.getStats()) { - - String sourceid = st.id + (st.getSuccessorEdges(StatEdge.TYPE_EXCEPTION).isEmpty()?"":"000000"); - - buffer.append(sourceid+" [shape=box,label=\""+sourceid+"\"];\r\n"); - - for(StatEdge edge : st.getSuccessorEdges(Statement.STATEDGE_DIRECT_ALL)) { - String destid = edge.getDestination().id + (edge.getDestination().getSuccessorEdges(StatEdge.TYPE_EXCEPTION).isEmpty()?"":"000000"); - - buffer.append(sourceid+"->"+destid+";\r\n"); - - if(!stat.getStats().contains(edge.getDestination())) { - buffer.append(destid+" [label=\""+destid+"\"];\r\n"); - } - } - - for(StatEdge edge : st.getSuccessorEdges(StatEdge.TYPE_EXCEPTION)) { - String destid = edge.getDestination().id + (edge.getDestination().getSuccessorEdges(StatEdge.TYPE_EXCEPTION).isEmpty()?"":"000000"); - - buffer.append(sourceid+" -> "+destid+" [style=dotted];\r\n"); - - if(!stat.getStats().contains(edge.getDestination())) { - buffer.append(destid+" [label=\""+destid+"\"];\r\n"); - } - } - } - - buffer.append("}"); - - return buffer.toString(); - } - - - public static String toDotFormat(ControlFlowGraph graph, boolean showMultipleEdges) { - - StringBuffer buffer = new StringBuffer(); - - buffer.append("digraph G {\r\n"); - - List blocks = graph.getBlocks(); - for(int i=0;i suc = block.getSuccs(); - if(!showMultipleEdges) { - HashSet set = new HashSet(); - set.addAll(suc); - suc = Collections.list(Collections.enumeration(set)); - } - for(int j=0;j"+((BasicBlock)suc.get(j)).id+";\r\n"); - } - - - suc = block.getSuccExceptions(); - if(!showMultipleEdges) { - HashSet set = new HashSet(); - set.addAll(suc); - suc = Collections.list(Collections.enumeration(set)); - } - for(int j=0;j "+((BasicBlock)suc.get(j)).id+" [style=dotted];\r\n"); - } - } - - buffer.append("}"); - - return buffer.toString(); - } - - public static String toDotFormat(VarVersionsGraph graph) { - - StringBuffer buffer = new StringBuffer(); - - buffer.append("digraph G {\r\n"); - - List blocks = graph.nodes; - for(int i=0;i"+(dest.var*1000+dest.version)+(edge.type==VarVersionEdge.EDGE_PHANTOM?" [style=dotted]":"")+";\r\n"); - } - } - - buffer.append("}"); - - return buffer.toString(); - } - - public static String toDotFormat(DirectGraph graph) { - - StringBuffer buffer = new StringBuffer(); - - buffer.append("digraph G {\r\n"); - - List blocks = graph.nodes; - for(int i=0;i"+directBlockIdToDot(dest.id)+";\r\n"); - } - } - - buffer.append("}"); - - return buffer.toString(); - } - - private static String directBlockIdToDot(String id) { - id = id.replaceAll("_try", "999"); - id = id.replaceAll("_tail", "888"); - return id; - } - - public static void toDotFile(ControlFlowGraph graph, File file, boolean showMultipleEdges) throws FileNotFoundException, IOException { - BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(file)); - out.write(toDotFormat(graph, showMultipleEdges).getBytes()); - out.close(); - } - - public static void toDotFile(VarVersionsGraph graph, File file) throws FileNotFoundException, IOException { - - BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(file)); - out.write(toDotFormat(graph).getBytes()); - out.close(); - } - - public static void toDotFile(DirectGraph graph, File file) throws FileNotFoundException, IOException { - - BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(file)); - out.write(toDotFormat(graph).getBytes()); - out.close(); - } - - public static void toDotFile(Statement stat, File file) throws FileNotFoundException, IOException { - - BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(file)); - out.write(toDotFormat(stat).getBytes()); - out.close(); - } - -} diff --git a/src/test/util/MemoryMonitor.java b/src/test/util/MemoryMonitor.java deleted file mode 100644 index 4030383..0000000 --- a/src/test/util/MemoryMonitor.java +++ /dev/null @@ -1,25 +0,0 @@ -package test.util; - -public class MemoryMonitor implements Runnable { - - public static boolean run = false; - - - public void run() { - - while(run) { - try { - Thread.sleep(500); - } catch(InterruptedException ex) { - ex.printStackTrace(); - } - - //Runtime.getRuntime().gc(); - System.err.println((Runtime.getRuntime().totalMemory() - Runtime.getRuntime().freeMemory())/(1024*1024)); - - } - - } - - -} diff --git a/src/test/util/Timer.java b/src/test/util/Timer.java deleted file mode 100644 index 5a45cc0..0000000 --- a/src/test/util/Timer.java +++ /dev/null @@ -1,31 +0,0 @@ -package test.util; - -import java.util.HashMap; - -public class Timer { - - private static HashMap mapValue = new HashMap(); - - public static void addTime(int index, long value) { - addTime(String.valueOf(index), value); - } - - public static double getTime(int index) { - return mapValue.get(String.valueOf(index)); - } - - public static void addTime(String index, double value) { - Double val = mapValue.get(index); - if(val != null) { - value+=val.doubleValue(); - } - mapValue.put(index, value); - } - - public static double getTime(String index) { - Double value = mapValue.get(index); - return value==null?0:value.doubleValue(); - } - -} - diff --git a/src/test/util/ZipStripper.java b/src/test/util/ZipStripper.java deleted file mode 100644 index 2eeb2c0..0000000 --- a/src/test/util/ZipStripper.java +++ /dev/null @@ -1,71 +0,0 @@ -package test.util; - -import java.io.File; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.util.Enumeration; -import java.util.zip.ZipEntry; -import java.util.zip.ZipFile; -import java.util.zip.ZipOutputStream; - -public class ZipStripper { - - public static void main(String[] args) { - - try { - String sourceFileName = args[0]; - File sourceFile = new File(sourceFileName); - - File tempFile = new File(sourceFile.getParentFile(), "tmp31415926535.zip"); - tempFile.createNewFile(); - - ZipOutputStream outTemp = new ZipOutputStream(new FileOutputStream(tempFile)); - - ZipFile archive = new ZipFile(sourceFile); - - Enumeration en = archive.entries(); - while(en.hasMoreElements()) { - ZipEntry entr = en.nextElement(); - - outTemp.putNextEntry(new ZipEntry(entr.getName())); - - if(!entr.isDirectory()) { - InputStream in = archive.getInputStream(entr); - - copyInputStream(in, outTemp); - in.close(); - } - } - - outTemp.flush(); - outTemp.close(); - - archive.close(); - - String destFileName = args[1]; - - if(sourceFileName.equals(destFileName)) { - sourceFile.delete(); - } - - tempFile.renameTo(new File(destFileName)); - - } catch(Exception ex) { - ex.printStackTrace(); - } - - } - - public static void copyInputStream(InputStream in, OutputStream out)throws IOException { - - byte[] buffer = new byte[1024]; - int len; - - while((len = in.read(buffer)) >= 0) { - out.write(buffer, 0, len); - } - } - -} diff --git a/test/test/BradTest.java b/test/test/BradTest.java new file mode 100644 index 0000000..ab9ef7c --- /dev/null +++ b/test/test/BradTest.java @@ -0,0 +1,57 @@ +package test; + +import java.util.LinkedList; +import java.util.List; + +public class BradTest { + + public void testForLoop() { + + for(int i = 0; i < 5; i++) { + System.out.println(i); + } + + int[] testArray = new int[] {}; + + for(int i : testArray) { + System.out.println(i); + } + + int k = 0; + int j = 0; + + while(j < 5) { + + System.out.println("Test while."); + + j++; + + if(j < 3) { + continue; + } + + k++; + + } + + List keys = new java.util.ArrayList(); + + for(Object test : keys) { + + System.out.println(test); + + System.out.println(test); + + System.out.println(test); + + } + + List objects = new LinkedList(); + + for(BradTest test : objects) { + System.out.println(test); + + } + } + +} diff --git a/test/test/TestAnnotationsEclipse.java b/test/test/TestAnnotationsEclipse.java new file mode 100644 index 0000000..42a06c0 --- /dev/null +++ b/test/test/TestAnnotationsEclipse.java @@ -0,0 +1,42 @@ +package test; + +import java.lang.annotation.Annotation; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.reflect.Constructor; +import java.lang.reflect.Method; + +public class TestAnnotationsEclipse { + + public String a; + + @Retention(RetentionPolicy.CLASS) + @interface MyAnnotation {} + + public static void main(String[] args) { + + TestInner a = new TestAnnotationsEclipse().new TestInner(); + + for(Constructor mt : a.getClass().getConstructors()) { + + Annotation[][] ann = mt.getParameterAnnotations(); + + System.out.println(ann.length); + } + } + + protected class TestInner { + + public TestInner() {} + + public TestInner(String param1, Object param2, @MyAnnotation boolean param3) { + System.out.println(param1); + System.out.println(param2); + System.out.println(param3); + } + + public void accessField() { + System.out.println(TestAnnotationsEclipse.this.a); + } + } +} diff --git a/test/test/input/TestEclipse7.java b/test/test/input/TestEclipse7.java new file mode 100644 index 0000000..f8bb127 --- /dev/null +++ b/test/test/input/TestEclipse7.java @@ -0,0 +1,59 @@ +package test.input; + +import java.io.FileReader; +import java.io.IOException; +import java.lang.reflect.Method; + +public class TestEclipse7 { + + +// public void testTryResources() throws IOException { +// +// try (FileReader reader = new FileReader("file"); FileReader reader1 = new FileReader("file")) { +// System.out.println(); +// } +// +// } +// +// public void testTryResources1() throws IOException { +// +// try (FileReader reader = new FileReader("file")) { +// System.out.println("block"); +// } catch(RuntimeException ex) { +// System.out.println(ex.toString()); +// } finally { +// System.out.println("finally"); +// } +// +// } + + public void testMultiCatch() { + + try { + Method method = getClass().getDeclaredMethod("foo"); + } catch (NoSuchMethodException | SecurityException e) { + e.printStackTrace(); + } + } + + +// public void testSwitchString() { +// +// String s = ""; +// switch(s) { +// case "Aa": // "xyz": +// System.out.println("!"); +// break; +// case "BB": // "abc": +// System.out.println("?"); +// break; +// case "__": +// System.out.println("_"); +// break; +// default: +// System.out.println("#"); +// } +// +// } + +} diff --git a/test/test/input/TestJavac7.java b/test/test/input/TestJavac7.java new file mode 100644 index 0000000..fb72d45 --- /dev/null +++ b/test/test/input/TestJavac7.java @@ -0,0 +1,59 @@ +package test.input; + +import java.io.FileReader; +import java.io.IOException; +import java.lang.reflect.Method; + +public class TestJavac7 { + + + public void testTryResources() throws IOException { + + try (FileReader reader = new FileReader("file"); FileReader reader1 = new FileReader("file")) { + System.out.println(); + } + + } + + public void testTryResources1() throws IOException { + + try (FileReader reader = new FileReader("file")) { + System.out.println("block"); + } catch(RuntimeException ex) { + System.out.println(ex.toString()); + } finally { + System.out.println("finally"); + } + + } + + public void testMultiCatch() { + + try { + Method method = getClass().getDeclaredMethod("foo"); + } catch (NoSuchMethodException | SecurityException e) { + e.printStackTrace(); + } + } + + + public void testSwitchString() { + + String s = ""; + switch(s) { + case "Aa": // "xyz": + System.out.println("!"); + break; + case "BB": // "abc": + System.out.println("?"); + break; + case "__": + System.out.println("_"); + break; + default: + System.out.println("#"); + } + + } + +} diff --git a/test/test/input/TestJavac8.java b/test/test/input/TestJavac8.java new file mode 100644 index 0000000..068750c --- /dev/null +++ b/test/test/input/TestJavac8.java @@ -0,0 +1,58 @@ +package test.input; + +import java.io.FileReader; +import java.io.IOException; +import java.lang.reflect.Method; +import java.util.Arrays; +import java.util.List; + +public class TestJavac8 { + +// public static void main(String args[]) { +// new TestJavac8().testLambda(); +// } +// +// public void testTryResources() throws IOException { +// +// try (FileReader reader = new FileReader("file"); FileReader reader1 = new FileReader("file")) { +// System.out.println(); +// } +// +// } +// +// public void testMultiCatch() { +// +// try { +// Method method = getClass().getDeclaredMethod("foo"); +// } catch (NoSuchMethodException | SecurityException e) { +// e.printStackTrace(); +// } +// } +// +// +// private void testSwitchString() { +// +// String s = ""; +// switch(s) { +// case "Aa": // "xyz": +// System.out.println("!"); +// break; +// case "BB": // "abc": +// System.out.println("?"); +// break; +// case "__": +// System.out.println("_"); +// break; +// default: +// System.out.println("#"); +// } +// +// } + + public void testLambda() { + + List list = Arrays.asList(1, 2, 3, 4, 5, 6, 7); + list.forEach(n -> {int a = 2 * n; System.out.println(a);}); + } + +} diff --git a/test/test/input/TestLoop.java b/test/test/input/TestLoop.java new file mode 100644 index 0000000..4275153 --- /dev/null +++ b/test/test/input/TestLoop.java @@ -0,0 +1,20 @@ +package test.input; + +public class TestLoop { + + public static void main(String[] args) { + + boolean a = true; + while(true) { + try { + if(!a) { + return; + } + } finally { + System.out.println("1"); + } + } + + } + +} diff --git a/test/test/misc/ExtTest.java b/test/test/misc/ExtTest.java new file mode 100644 index 0000000..ec3d30c --- /dev/null +++ b/test/test/misc/ExtTest.java @@ -0,0 +1,81 @@ +package test.misc; + +import java.io.IOException; +import java.sql.Timestamp; +import java.util.ArrayList; +import java.util.Date; +import java.util.HashMap; +import java.util.Map.Entry; + +public class ExtTest extends ArrayList { + + public static void main(String[] args) { + + Date d = new Date(); Timestamp t = new Timestamp(d.getTime()); + System.out.println(d.after(t)); + + System.out.println((int)-1); + System.out.println((int)1); + System.out.println((Integer)1); + System.out.println((Integer)1); + + Class c = String.class; + + Integer Integer = 0; + Integer = (Integer)-1; + + int z = 0; + z = z+++(++z); + + Entry ent = (Entry)new HashMap().entrySet().iterator().next(); + + label1: { + System.out.println("1"); + if(Math.random() > 4) { + break label1; + } + System.out.println("2"); + } + System.out.println("3"); + } + + public void test(T o) { + + } + + public void testException() throws IOException { +// if(true) { +// throw new RuntimeException(); +// } else { +// throw new IOException(); +// } +// throw true?new IOException():new IOException(); +// throw true?new ClassCastException():new IOException(); + } + + public static int ttt() { + + Object obj = new Integer(5); + synchronized (new Integer(3)) { + System.out.println(obj); + obj = null; + } + + + System.out.println("1"); + if(Math.random() > 1) { + System.out.println("2"); + } else { + System.out.println("3"); + } + System.out.println("4"); + + int a = 0; + try { + a = 2; + return a; + } finally { + a = 4; + } + } +} diff --git a/test/test/misc/GenericTest.java b/test/test/misc/GenericTest.java new file mode 100644 index 0000000..3ff6753 --- /dev/null +++ b/test/test/misc/GenericTest.java @@ -0,0 +1,65 @@ +package test.misc; + +import java.io.Serializable; +import java.util.AbstractCollection; +import java.util.ArrayList; +import java.util.Collection; +import java.util.Date; +import java.util.List; + +public class GenericTest { + + @test.misc.ann.RequestForEnhancement( + id = 2868724, + synopsis = "Enable time-travel", + engineer = "Mr. Peabody", + date = "4/1/3007", + arr = {"1","2","3"}, + cl = Void.class + ) + @Deprecated + public boolean test(@Deprecated Collection c) { + return true; + } + + public int testparam(boolean t, @Deprecated List lst, double d) { + return 0; + } + +} + +class GenericTestChild extends GenericTest> implements Serializable { + +// public void test(Collection c) { +// T var1 = c.iterator().next(); +// c.add(var1); +// } + + public List[][] field; + + public void test(List list1, List list) { + +// l2: { +// l1: { +// if(Math.random() > 2){ +// break l1; +// } +// +// System.out.println("1"); +// break l2; +// } +// +// System.out.println("2"); +// } + + if(Math.random() > 2){ + System.out.println("2"); + } else { + System.out.println("1"); + } + + + } + +} + diff --git a/test/test/misc/ITest.java b/test/test/misc/ITest.java new file mode 100644 index 0000000..1924a8d --- /dev/null +++ b/test/test/misc/ITest.java @@ -0,0 +1,9 @@ +package test.misc; + +import java.io.Serializable; + +public interface ITest extends Serializable, Comparable { + + public void test(); + +} diff --git a/test/test/misc/MainClass.java b/test/test/misc/MainClass.java new file mode 100644 index 0000000..abb6522 --- /dev/null +++ b/test/test/misc/MainClass.java @@ -0,0 +1,115 @@ +package test.misc; + +import java.util.ArrayList; +import java.util.List; + +public class MainClass { + + private int intfield; + + private static int stfield; + + private static void statmeth(int t) { + System.out.println(t); + } + + private String maintest(int v) { + System.out.println(v+"test!"); + return ""; + } + + public MainClass() { + super(); + } + + public void mainclosure() { + + final int local1 = (int)Math.random(); + + List l = new ArrayList(new ArrayList()) { + + { + System.out.println(intfield); + } + + public void anontest() { + System.out.println(local1); + } + }; + + class LocalClass { + + public LocalClass(String s) { + System.out.println(s); + statmeth(4); + } + + public void localtest() { + int i = intfield; + intfield = 4; + maintest(i); + + System.out.println(local1); + + System.out.println(stfield); + stfield = 3; + } + + class LocalMemberClass { + + } + + } + + boolean t = false; + if(t) { + LocalClass lc = new LocalClass("1"); + LocalClass.LocalMemberClass rt = lc.new LocalMemberClass();; + } else { + if(Math.random() > 1) { + LocalClass lc1 = new LocalClass("1"); + } + System.out.println(); + } + + } + + + public class MemberClass { + + public MemberClass(String z) { + System.out.println(z); + } + + public void membertest() { + int i = intfield; + maintest(i); + stfield = 5; + + Member2Class.Member3Class t = (new Member2Class()).new Member3Class(); + } + + public class Member2Class1 { + + public class Member3Class1 { + + } + } + + class Member2Class { + + public void member2test() { + int i = intfield; + maintest(i); + Member2Class1.Member3Class1 t; + } + + public class Member3Class { + + } + + } + + } + +} diff --git a/test/test/misc/MiscTest.java b/test/test/misc/MiscTest.java new file mode 100644 index 0000000..c47b3da --- /dev/null +++ b/test/test/misc/MiscTest.java @@ -0,0 +1,83 @@ +package test.misc; + +public class MiscTest { + + public static double test = 1 / 0; + + + public static void main(String[] args) { + + System.out.println(test); + + String s = "a b"; + s = s.replaceAll(" ", "  "); + System.out.println(s); + + try { + throw null; + } catch(RuntimeException ex) { + System.out.println(ex); + } + + + int a = 3; + + if(a == 1) { + System.out.println("1"); + } else if(a == 2) { + System.out.println("2"); + } else if(a == 3) { + System.out.println("3"); + } else if(a == 4) { + System.out.println("4"); + } else if(a == 5) { + System.out.println("5"); + } else if(a == 6) { + System.out.println("6"); + } else if(a == 7) { + System.out.println("7"); + } + + if(a == 0) { + return; + } else { + System.out.println("0"); + } + + if(a==4) { + System.out.println("assert"); + assert a==4 && a==5; + } else { + assert false; + } + + assert a==5: Math.random(); + + assert false: Math.random(); + + assert true; + + assert true: Math.random(); + + /* + label: { + if(a == 0) { + System.out.println("0"); + } else if(a == 1) { + System.out.println("01"); + } else { + if(a == -1) { + System.out.println("-1"); + } else { + System.out.println("-2"); + } + break label; + } + + System.out.println("end"); + } + System.out.println("end1"); + */ + } + +} diff --git a/test/test/misc/MultipleClassTest.java b/test/test/misc/MultipleClassTest.java new file mode 100644 index 0000000..ccd9b97 --- /dev/null +++ b/test/test/misc/MultipleClassTest.java @@ -0,0 +1,33 @@ +package test.misc; + +public class MultipleClassTest { + + public int field = this.hashCode(); + + public void test() { + + class Test1 { + public int t1() { +// System.out.println("1"); + + try { + return 2; + } finally { + System.out.println("1"); + return 3; + } + + } + } + + class Test2 { + public void t2() { + System.out.println("2"); + //new Test1().t1(); + } + } + +// new Test1().t1(); + } + +} diff --git a/test/test/misc/ParentFieldTest.java b/test/test/misc/ParentFieldTest.java new file mode 100644 index 0000000..caccc2a --- /dev/null +++ b/test/test/misc/ParentFieldTest.java @@ -0,0 +1,19 @@ +package test.misc; + +public class ParentFieldTest { + + public int test = 0; + + private class Parent extends ParentFieldTest { + + private class Child { + + public void test() { + System.out.println(ParentFieldTest.this.test); + } + + } + + } + +} diff --git a/test/test/misc/SuperTest.java b/test/test/misc/SuperTest.java new file mode 100644 index 0000000..01fc990 --- /dev/null +++ b/test/test/misc/SuperTest.java @@ -0,0 +1,27 @@ +package test.misc; + +import java.util.ArrayList; + +public class SuperTest extends ArrayList { + + public SuperTest() { + super(3); + super.modCount = 2; + SuperTest.super.size(); + } + + public int size() { + System.out.println("1"); + return 0; + } + + class SuperTest1 { + + public void test() { + SuperTest.super.size(); + SuperTest.super.modCount = 2; + } + + } + +} diff --git a/test/test/misc/ann/RequestForEnhancement.java b/test/test/misc/ann/RequestForEnhancement.java new file mode 100644 index 0000000..25c612c --- /dev/null +++ b/test/test/misc/ann/RequestForEnhancement.java @@ -0,0 +1,22 @@ +package test.misc.ann; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * Describes the Request-For-Enhancement(RFE) that led + * to the presence of the annotated API element. + */ + +@Retention(RetentionPolicy.RUNTIME) +@Target(ElementType.METHOD) +public @interface RequestForEnhancement { + int id(); + String synopsis(); + String engineer() default "[unassigned]"; + String date() default "[unimplemented]"; + String[] arr(); + Class cl(); +} diff --git a/test/test/misc/en/AutocastTest.java b/test/test/misc/en/AutocastTest.java new file mode 100644 index 0000000..ea08948 --- /dev/null +++ b/test/test/misc/en/AutocastTest.java @@ -0,0 +1,17 @@ +package test.misc.en; + +import java.util.HashMap; + +public class AutocastTest { + + public static void main(String[] args) { + + HashMap map = new HashMap(); + + Integer key = new Integer(1); + Integer value = map.containsKey(key)?0:map.get(key); + + System.out.println(value == null); + } + +} diff --git a/test/test/misc/en/FastSetTest.java b/test/test/misc/en/FastSetTest.java new file mode 100644 index 0000000..ab94814 --- /dev/null +++ b/test/test/misc/en/FastSetTest.java @@ -0,0 +1,60 @@ +package test.misc.en; + +import java.util.Arrays; +import java.util.HashSet; +import java.util.Set; +import java.util.SortedSet; +import java.util.TreeSet; + +import de.fernflower.util.FastSetFactory; +import de.fernflower.util.FastSetFactory.FastSet; + +public class FastSetTest { + + public static void main(String[] args) { + + SortedSet set = new TreeSet(); + + for(int i=0;i<3;i++) { + set.add(i); + } + +// for(Integer s : set) { +// System.out.println(s); +// } + + FastSetFactory factory = new FastSetFactory(set); + +// factory.print(); + +// int index = 1; +// for(int i=0;i<100;i++) { +// if(i % 32 == 0) { +// index = 1; +// } +// +// System.out.println(index); +// index<<=1; +// +// } + + + + FastSet set1 = factory.spawnEmptySet(); + set1.addAll(new HashSet(Arrays.asList(new Integer[]{0, 1, 2, 3, 4, 5, 6, 7, 8, 9}))); + + FastSet set2 = set1.getCopy(); + set2.remove(4); + set2.remove(5); + set2.add(10); + + set1.symdiff(set2); + Set set3 = new TreeSet(set1.toPlainSet()); + + for(Integer s : set3) { + System.out.println(s); + } + } + + +} diff --git a/test/test/misc/en/FinallyTest.java b/test/test/misc/en/FinallyTest.java new file mode 100644 index 0000000..2162636 --- /dev/null +++ b/test/test/misc/en/FinallyTest.java @@ -0,0 +1,22 @@ +package test.misc.en; + +public class FinallyTest { + + public FinallyTest() { + + int i; + try { + try { + i = 0; + } finally { + i = 1; + } + i = 2; + } finally { + i = 3; + } + + System.out.println(i); + } + +} diff --git a/test/test/misc/en/Foo.java b/test/test/misc/en/Foo.java new file mode 100644 index 0000000..762dcda --- /dev/null +++ b/test/test/misc/en/Foo.java @@ -0,0 +1,52 @@ +package test.misc.en; + +class Foo { + + public Foo() {} + + public Foo(String test) {} + + private void foo() { + System.out.println("qwe"); + } + + static class Bar extends Foo { + void bar() { + System.out.println("1"); + //((Foo)this).foo(); + } + } + + static class Bar1 extends Bar { + void bar() { + super.bar(); + //System.out.println("2"); + //((Foo)this).foo(); + } + } + + static class Bar2 extends Bar1 { + void bar1() { + super.bar(); + } + } + + public static void main(String[] args) { + new Bar2().bar(); + } + + public int testfin() { + + int i; + + try { + System.out.println(); + i = 0; + } finally { + System.out.println(); + } + + + return i; + } +} diff --git a/test/test/misc/en/InnerTest$1.java b/test/test/misc/en/InnerTest$1.java new file mode 100644 index 0000000..dd58e8e --- /dev/null +++ b/test/test/misc/en/InnerTest$1.java @@ -0,0 +1,22 @@ +package test.misc.en; + + +class InnerTest$1 extends Foo implements Runnable { + + // $FF: synthetic field + final String val$test; + // $FF: synthetic field + final int val$test1; + + + InnerTest$1(String var1, int var2) { + super(); + this.val$test = var1; + this.val$test1 = var2; + } + + public void run() { + System.out.println(this.val$test); + System.out.println(this.val$test1); + } +} diff --git a/test/test/misc/en/InnerTest.java b/test/test/misc/en/InnerTest.java new file mode 100644 index 0000000..44361ff --- /dev/null +++ b/test/test/misc/en/InnerTest.java @@ -0,0 +1,13 @@ +package test.misc.en; + +import test.misc.en.InnerTest$1; + +public class InnerTest { + + public static void main(String[] args) throws Throwable { + String test = args[0]; + int test1 = Integer.parseInt(args[1]); + new InnerTest$1(test, test1); + System.out.println("готово"); + } +} diff --git a/test/test/misc/en/InnerTestOld.java b/test/test/misc/en/InnerTestOld.java new file mode 100644 index 0000000..b3af77c --- /dev/null +++ b/test/test/misc/en/InnerTestOld.java @@ -0,0 +1,20 @@ +package test.misc.en; + +public class InnerTestOld { + + public static void main(String[] args) { + + final String test = args[0]; + final int test1 = Integer.parseInt(args[1]); + + Runnable r = new Runnable() { + public void run() { + System.out.println(test); + System.out.println(test1); + } + }; + + System.out.println("done"); + } + +} diff --git a/test/test/misc/en/ListInsertTest.java b/test/test/misc/en/ListInsertTest.java new file mode 100644 index 0000000..ceabe83 --- /dev/null +++ b/test/test/misc/en/ListInsertTest.java @@ -0,0 +1,34 @@ +package test.misc.en; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Date; +import java.util.LinkedList; +import java.util.List; + +public class ListInsertTest { + + public static void main(String[] args) { + + List lst1 = new ArrayList(Arrays.asList(new Integer[]{1, 2, 3})); + List lst2 = new LinkedList(Arrays.asList(new Integer[]{1, 2, 3})); + + Date d = new Date(); + + for(int i=0;i<300000;i++) { + lst1.add(1, i); + } + + System.out.println(new Date().getTime() - d.getTime()); + + d = new Date(); + + for(int i=0;i<300000;i++) { + lst2.add(1, i); + } + + System.out.println(new Date().getTime() - d.getTime()); + + } + +} diff --git a/test/test/misc/en/Operation.java b/test/test/misc/en/Operation.java new file mode 100644 index 0000000..3051fb3 --- /dev/null +++ b/test/test/misc/en/Operation.java @@ -0,0 +1,51 @@ +package test.misc.en; + +public enum Operation { + + PLUS(2) { + double eval(double x, double y) { return x + y; } + }, + MINUS(7) { + double eval(double x, double y) { return x - y; } + }, + TIMES(8) { + double eval(double x, double y) { return x * y; } + }, + DIVIDED_BY(0) { + double eval(double x, double y) { return x / y; } + }; + + + // Perform the arithmetic operation represented by this constant + + abstract double eval(double x, double y); + + Operation(int t) { + +// class LocalClass { +// +// } +// +// LocalClass e = null; + + System.out.println(); + } + + + public static void main(String args[]) { + double x = Double.parseDouble(args[0]); + double y = Double.parseDouble(args[1]); + + Operation opp = Operation.DIVIDED_BY; + + switch(opp) { + case MINUS: + System.out.println(); + case PLUS: + } + + for (Operation op : Operation.values()) { + System.out.println(x + " " + op + " " + y + " = " + op.eval(x, y)); + } + } +} \ No newline at end of file diff --git a/test/test/misc/en/SwitchInTest.java b/test/test/misc/en/SwitchInTest.java new file mode 100644 index 0000000..8d04665 --- /dev/null +++ b/test/test/misc/en/SwitchInTest.java @@ -0,0 +1,19 @@ +package test.misc.en; + +public class SwitchInTest { + + public static void main(String[] args) { + + short t = 2; + switch(t) { + case -56: + case 0: + case 3: + case 129: + System.out.println(); + default: + } + + } + +} diff --git a/test/test/misc/en/TestOperation.java b/test/test/misc/en/TestOperation.java new file mode 100644 index 0000000..c6763b1 --- /dev/null +++ b/test/test/misc/en/TestOperation.java @@ -0,0 +1,31 @@ +package test.misc.en; + +public class TestOperation { + + public void test() { + + double x = 2; + double y = 3; + + Operation opp = Operation.DIVIDED_BY; + + switch(opp) { + case MINUS: + System.out.println(); + case PLUS: + } + + switch(Operation.MINUS) { + case DIVIDED_BY: + System.out.println(); + case PLUS: + case TIMES: + } + + for (Operation op : Operation.values()) { + System.out.println(x + " " + op + " " + y + " = " + op.eval(x, y)); + } + + } + +} diff --git a/test/test/output/TestEclipse7.java b/test/test/output/TestEclipse7.java new file mode 100644 index 0000000..a37b582 --- /dev/null +++ b/test/test/output/TestEclipse7.java @@ -0,0 +1,15 @@ +package test.output; + +import java.lang.reflect.Method; + +public class TestEclipse7 { + + public void testMultiCatch() { + try { + Method e = this.getClass().getDeclaredMethod("foo", new Class[0]); + } catch (SecurityException | NoSuchMethodException var2) { + var2.printStackTrace(); + } + + } +} diff --git a/test/test/output/TestJavac7.java b/test/test/output/TestJavac7.java new file mode 100644 index 0000000..9ddb71e --- /dev/null +++ b/test/test/output/TestJavac7.java @@ -0,0 +1,129 @@ +package test.output; + +import java.io.FileReader; +import java.io.IOException; +import java.lang.reflect.Method; + +public class TestJavac7 { + + public void testTryResources() throws IOException { + FileReader var1 = new FileReader("file"); + Throwable var2 = null; + + try { + FileReader var3 = new FileReader("file"); + Throwable var4 = null; + + try { + System.out.println(); + } catch (Throwable var27) { + var4 = var27; + throw var27; + } finally { + if(var3 != null) { + if(var4 != null) { + try { + var3.close(); + } catch (Throwable var26) { + var4.addSuppressed(var26); + } + } else { + var3.close(); + } + } + + } + } catch (Throwable var29) { + var2 = var29; + throw var29; + } finally { + if(var1 != null) { + if(var2 != null) { + try { + var1.close(); + } catch (Throwable var25) { + var2.addSuppressed(var25); + } + } else { + var1.close(); + } + } + + } + + } + + public void testTryResources1() throws IOException { + try { + FileReader var1 = new FileReader("file"); + Throwable var2 = null; + + try { + System.out.println("block"); + } catch (Throwable var20) { + var2 = var20; + throw var20; + } finally { + if(var1 != null) { + if(var2 != null) { + try { + var1.close(); + } catch (Throwable var19) { + var2.addSuppressed(var19); + } + } else { + var1.close(); + } + } + + } + } catch (RuntimeException var22) { + System.out.println(var22.toString()); + } finally { + System.out.println("finally"); + } + + } + + public void testMultiCatch() { + try { + Method var1 = this.getClass().getDeclaredMethod("foo", new Class[0]); + } catch (SecurityException var2) { + var2.printStackTrace(); + } + + } + + public void testSwitchString() { + String var1 = ""; + byte var3 = -1; + switch(var1.hashCode()) { + case 2112: + if(var1.equals("BB")) { + var3 = 1; + } else if(var1.equals("Aa")) { + var3 = 0; + } + break; + case 3040: + if(var1.equals("__")) { + var3 = 2; + } + } + + switch(var3) { + case 0: + System.out.println("!"); + break; + case 1: + System.out.println("?"); + break; + case 2: + System.out.println("_"); + break; + default: + System.out.println("#"); + } + + } +} diff --git a/test/test/output/TestJavac8.java b/test/test/output/TestJavac8.java new file mode 100644 index 0000000..2b66907 --- /dev/null +++ b/test/test/output/TestJavac8.java @@ -0,0 +1,104 @@ +package test.output; + +import java.io.FileReader; +import java.io.IOException; +import java.lang.reflect.Method; + +public class TestJavac8 { + + public static void main(String[] var0) { + (new TestJavac8()).testLambda(); + } + + public void testTryResources() throws IOException { + FileReader var1 = new FileReader("file"); + Throwable var2 = null; + + try { + FileReader var3 = new FileReader("file"); + Throwable var4 = null; + + try { + System.out.println(); + } catch (Throwable var27) { + var4 = var27; + throw var27; + } finally { + if(var3 != null) { + if(var4 != null) { + try { + var3.close(); + } catch (Throwable var26) { + var4.addSuppressed(var26); + } + } else { + var3.close(); + } + } + + } + } catch (Throwable var29) { + var2 = var29; + throw var29; + } finally { + if(var1 != null) { + if(var2 != null) { + try { + var1.close(); + } catch (Throwable var25) { + var2.addSuppressed(var25); + } + } else { + var1.close(); + } + } + + } + + } + + public void testMultiCatch() { + try { + Method var1 = this.getClass().getDeclaredMethod("foo", new Class[0]); + } catch (SecurityException var2) { + var2.printStackTrace(); + } + + } + + private void testSwitchString() { + String var1 = ""; + byte var3 = -1; + switch(var1.hashCode()) { + case 2112: + if(var1.equals("BB")) { + var3 = 1; + } else if(var1.equals("Aa")) { + var3 = 0; + } + break; + case 3040: + if(var1.equals("__")) { + var3 = 2; + } + } + + switch(var3) { + case 0: + System.out.println("!"); + break; + case 1: + System.out.println("?"); + break; + case 2: + System.out.println("_"); + break; + default: + System.out.println("#"); + } + + } + + public void testLambda() { + } +} diff --git a/test/test/util/DotExporter.java b/test/test/util/DotExporter.java new file mode 100644 index 0000000..88b9320 --- /dev/null +++ b/test/test/util/DotExporter.java @@ -0,0 +1,183 @@ +package test.util; + +import java.io.BufferedOutputStream; +import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileOutputStream; +import java.io.IOException; +import java.util.Collections; +import java.util.HashSet; +import java.util.List; + + +import de.fernflower.code.cfg.BasicBlock; +import de.fernflower.code.cfg.ControlFlowGraph; +import de.fernflower.modules.decompiler.StatEdge; +import de.fernflower.modules.decompiler.sforms.DirectGraph; +import de.fernflower.modules.decompiler.sforms.DirectNode; +import de.fernflower.modules.decompiler.stats.Statement; +import de.fernflower.modules.decompiler.vars.VarVersionEdge; +import de.fernflower.modules.decompiler.vars.VarVersionNode; +import de.fernflower.modules.decompiler.vars.VarVersionsGraph; + +public class DotExporter { + + + public static String toDotFormat(Statement stat) { + + StringBuffer buffer = new StringBuffer(); + + buffer.append("digraph G {\r\n"); + + for(Statement st : stat.getStats()) { + + String sourceid = st.id + (st.getSuccessorEdges(StatEdge.TYPE_EXCEPTION).isEmpty()?"":"000000"); + + buffer.append(sourceid+" [shape=box,label=\""+sourceid+"\"];\r\n"); + + for(StatEdge edge : st.getSuccessorEdges(Statement.STATEDGE_DIRECT_ALL)) { + String destid = edge.getDestination().id + (edge.getDestination().getSuccessorEdges(StatEdge.TYPE_EXCEPTION).isEmpty()?"":"000000"); + + buffer.append(sourceid+"->"+destid+";\r\n"); + + if(!stat.getStats().contains(edge.getDestination())) { + buffer.append(destid+" [label=\""+destid+"\"];\r\n"); + } + } + + for(StatEdge edge : st.getSuccessorEdges(StatEdge.TYPE_EXCEPTION)) { + String destid = edge.getDestination().id + (edge.getDestination().getSuccessorEdges(StatEdge.TYPE_EXCEPTION).isEmpty()?"":"000000"); + + buffer.append(sourceid+" -> "+destid+" [style=dotted];\r\n"); + + if(!stat.getStats().contains(edge.getDestination())) { + buffer.append(destid+" [label=\""+destid+"\"];\r\n"); + } + } + } + + buffer.append("}"); + + return buffer.toString(); + } + + + public static String toDotFormat(ControlFlowGraph graph, boolean showMultipleEdges) { + + StringBuffer buffer = new StringBuffer(); + + buffer.append("digraph G {\r\n"); + + List blocks = graph.getBlocks(); + for(int i=0;i suc = block.getSuccs(); + if(!showMultipleEdges) { + HashSet set = new HashSet(); + set.addAll(suc); + suc = Collections.list(Collections.enumeration(set)); + } + for(int j=0;j"+((BasicBlock)suc.get(j)).id+";\r\n"); + } + + + suc = block.getSuccExceptions(); + if(!showMultipleEdges) { + HashSet set = new HashSet(); + set.addAll(suc); + suc = Collections.list(Collections.enumeration(set)); + } + for(int j=0;j "+((BasicBlock)suc.get(j)).id+" [style=dotted];\r\n"); + } + } + + buffer.append("}"); + + return buffer.toString(); + } + + public static String toDotFormat(VarVersionsGraph graph) { + + StringBuffer buffer = new StringBuffer(); + + buffer.append("digraph G {\r\n"); + + List blocks = graph.nodes; + for(int i=0;i"+(dest.var*1000+dest.version)+(edge.type==VarVersionEdge.EDGE_PHANTOM?" [style=dotted]":"")+";\r\n"); + } + } + + buffer.append("}"); + + return buffer.toString(); + } + + public static String toDotFormat(DirectGraph graph) { + + StringBuffer buffer = new StringBuffer(); + + buffer.append("digraph G {\r\n"); + + List blocks = graph.nodes; + for(int i=0;i"+directBlockIdToDot(dest.id)+";\r\n"); + } + } + + buffer.append("}"); + + return buffer.toString(); + } + + private static String directBlockIdToDot(String id) { + id = id.replaceAll("_try", "999"); + id = id.replaceAll("_tail", "888"); + return id; + } + + public static void toDotFile(ControlFlowGraph graph, File file, boolean showMultipleEdges) throws FileNotFoundException, IOException { + BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(file)); + out.write(toDotFormat(graph, showMultipleEdges).getBytes()); + out.close(); + } + + public static void toDotFile(VarVersionsGraph graph, File file) throws FileNotFoundException, IOException { + + BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(file)); + out.write(toDotFormat(graph).getBytes()); + out.close(); + } + + public static void toDotFile(DirectGraph graph, File file) throws FileNotFoundException, IOException { + + BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(file)); + out.write(toDotFormat(graph).getBytes()); + out.close(); + } + + public static void toDotFile(Statement stat, File file) throws FileNotFoundException, IOException { + + BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(file)); + out.write(toDotFormat(stat).getBytes()); + out.close(); + } + +} diff --git a/test/test/util/MemoryMonitor.java b/test/test/util/MemoryMonitor.java new file mode 100644 index 0000000..4030383 --- /dev/null +++ b/test/test/util/MemoryMonitor.java @@ -0,0 +1,25 @@ +package test.util; + +public class MemoryMonitor implements Runnable { + + public static boolean run = false; + + + public void run() { + + while(run) { + try { + Thread.sleep(500); + } catch(InterruptedException ex) { + ex.printStackTrace(); + } + + //Runtime.getRuntime().gc(); + System.err.println((Runtime.getRuntime().totalMemory() - Runtime.getRuntime().freeMemory())/(1024*1024)); + + } + + } + + +} diff --git a/test/test/util/Timer.java b/test/test/util/Timer.java new file mode 100644 index 0000000..5a45cc0 --- /dev/null +++ b/test/test/util/Timer.java @@ -0,0 +1,31 @@ +package test.util; + +import java.util.HashMap; + +public class Timer { + + private static HashMap mapValue = new HashMap(); + + public static void addTime(int index, long value) { + addTime(String.valueOf(index), value); + } + + public static double getTime(int index) { + return mapValue.get(String.valueOf(index)); + } + + public static void addTime(String index, double value) { + Double val = mapValue.get(index); + if(val != null) { + value+=val.doubleValue(); + } + mapValue.put(index, value); + } + + public static double getTime(String index) { + Double value = mapValue.get(index); + return value==null?0:value.doubleValue(); + } + +} + diff --git a/test/test/util/ZipStripper.java b/test/test/util/ZipStripper.java new file mode 100644 index 0000000..2eeb2c0 --- /dev/null +++ b/test/test/util/ZipStripper.java @@ -0,0 +1,71 @@ +package test.util; + +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.io.OutputStream; +import java.util.Enumeration; +import java.util.zip.ZipEntry; +import java.util.zip.ZipFile; +import java.util.zip.ZipOutputStream; + +public class ZipStripper { + + public static void main(String[] args) { + + try { + String sourceFileName = args[0]; + File sourceFile = new File(sourceFileName); + + File tempFile = new File(sourceFile.getParentFile(), "tmp31415926535.zip"); + tempFile.createNewFile(); + + ZipOutputStream outTemp = new ZipOutputStream(new FileOutputStream(tempFile)); + + ZipFile archive = new ZipFile(sourceFile); + + Enumeration en = archive.entries(); + while(en.hasMoreElements()) { + ZipEntry entr = en.nextElement(); + + outTemp.putNextEntry(new ZipEntry(entr.getName())); + + if(!entr.isDirectory()) { + InputStream in = archive.getInputStream(entr); + + copyInputStream(in, outTemp); + in.close(); + } + } + + outTemp.flush(); + outTemp.close(); + + archive.close(); + + String destFileName = args[1]; + + if(sourceFileName.equals(destFileName)) { + sourceFile.delete(); + } + + tempFile.renameTo(new File(destFileName)); + + } catch(Exception ex) { + ex.printStackTrace(); + } + + } + + public static void copyInputStream(InputStream in, OutputStream out)throws IOException { + + byte[] buffer = new byte[1024]; + int len; + + while((len = in.read(buffer)) >= 0) { + out.write(buffer, 0, len); + } + } + +} -- cgit v1.2.3