From 2f4d40d523c36729b14a853fe1861ebeda87f03b Mon Sep 17 00:00:00 2001 From: Manindra Moharana Date: Sat, 20 Jul 2013 22:12:29 +0530 Subject: [PATCH] Adding new class.. --- .../experimental/ErrorMessageSimplifier.java | 58 +++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 pdex/src/processing/mode/experimental/ErrorMessageSimplifier.java diff --git a/pdex/src/processing/mode/experimental/ErrorMessageSimplifier.java b/pdex/src/processing/mode/experimental/ErrorMessageSimplifier.java new file mode 100644 index 000000000..7ac5c594f --- /dev/null +++ b/pdex/src/processing/mode/experimental/ErrorMessageSimplifier.java @@ -0,0 +1,58 @@ +package processing.mode.experimental; + +import java.lang.reflect.Field; +import java.lang.reflect.Modifier; +import java.util.TreeMap; + +import org.eclipse.jdt.internal.compiler.problem.DefaultProblem; + +public class ErrorMessageSimplifier { + +// private ErrorCheckerService errorCheckerService; + + /** + * Mapping between ProblemID constant and the constant name. Holds about 650 + * of them. Also, this is just temporary, will be used to find the common + * error types, cos you know, identifying String names is easier than + * identifying 8 digit int constants! + * TODO: this is temporary + */ + private TreeMap constantsMap; + + public ErrorMessageSimplifier() { + + new Thread() { + public void run() { + prepareConstantsList(); + } + }.start(); + } + + private void prepareConstantsList() { + constantsMap = new TreeMap(); + Class probClass = DefaultProblem.class; + Field f[] = probClass.getFields(); + for (Field field : f) { + if (Modifier.isStatic(field.getModifiers())) + try { + //System.out.println(field.getName() + " :" + field.get(null)); + Object val = field.get(null); + if (val instanceof Integer) { + constantsMap.put((Integer) (val), field.getName()); + } + } catch (Exception e) { + System.out.println("Here"); + e.printStackTrace(); + break; + } + } + System.out.println("Total items: " + constantsMap.size()); + } + + public String getIDName(int id) { + if (constantsMap == null) + return null; + return constantsMap.get(id); + } + +}