1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-06-07 09:46:02 +02:00

Cosmetics.

This commit is contained in:
Sergey Prigogin 2011-04-10 01:20:27 +00:00
parent cf018dec6c
commit 0a5580f3d3

View file

@ -25,12 +25,13 @@ import org.eclipse.core.resources.IResource;
import org.eclipse.core.runtime.IPath; import org.eclipse.core.runtime.IPath;
/** /**
* AbstarctChecker that has extra methods to simplify adding problem * AbstractChecker that has extra methods to simplify adding problem
* preferences. * preferences.
* Checker can produce several problems, but preferences are per problem. * Checker can produce several problems, but preferences are per problem.
* Sharing preferences between problems is not supported now. * Sharing preferences between problems is not supported now.
*/ */
public abstract class AbstractCheckerWithProblemPreferences extends AbstractChecker implements ICheckerWithPreferences { public abstract class AbstractCheckerWithProblemPreferences extends AbstractChecker
implements ICheckerWithPreferences {
/** /**
* Checker that actually has parameter must override this * Checker that actually has parameter must override this
*/ */
@ -46,8 +47,7 @@ public abstract class AbstractCheckerWithProblemPreferences extends AbstractChec
* @return scope problem preference, null if not defined * @return scope problem preference, null if not defined
*/ */
public FileScopeProblemPreference getScopePreference(IProblem problem) { public FileScopeProblemPreference getScopePreference(IProblem problem) {
FileScopeProblemPreference scope = getTopLevelPreference(problem).getScopePreference(); return getTopLevelPreference(problem).getScopePreference();
return scope;
} }
/** /**
@ -56,8 +56,7 @@ public abstract class AbstractCheckerWithProblemPreferences extends AbstractChec
* @since 2.0 * @since 2.0
*/ */
public LaunchModeProblemPreference getLaunchModePreference(IProblem problem) { public LaunchModeProblemPreference getLaunchModePreference(IProblem problem) {
LaunchModeProblemPreference launchModes = getTopLevelPreference(problem).getLaunchModePreference(); return getTopLevelPreference(problem).getLaunchModePreference();
return launchModes;
} }
/** /**
@ -82,8 +81,8 @@ public abstract class AbstractCheckerWithProblemPreferences extends AbstractChec
/** /**
* User can scope out some resources for this checker. Checker can use this * User can scope out some resources for this checker. Checker can use this
* call to test if it should run on this resource at all or produce a * call to test if it should run on this resource at all or produce
* specific problem on this resource. Test should * a specific problem on this resource. Test should
* be done within processResource method not in enabledInContext, or just * be done within processResource method not in enabledInContext, or just
* before printing of a problem. * before printing of a problem.
* This test uses user "scope" preference for the given problem. If scope is * This test uses user "scope" preference for the given problem. If scope is
@ -104,12 +103,14 @@ public abstract class AbstractCheckerWithProblemPreferences extends AbstractChec
@Override @Override
public void reportProblem(String problemId, IProblemLocation loc, Object... args) { public void reportProblem(String problemId, IProblemLocation loc, Object... args) {
if (shouldProduceProblem(getProblemById(problemId, loc.getFile()), loc.getFile().getLocation())) if (shouldProduceProblem(getProblemById(problemId, loc.getFile()),
loc.getFile().getLocation())) {
super.reportProblem(problemId, loc, args); super.reportProblem(problemId, loc, args);
} }
}
/** /**
* report a problem * Reports a problem
* *
* @param pr - problem (kind) instance * @param pr - problem (kind) instance
* @param loc - problem location * @param loc - problem location
@ -123,7 +124,7 @@ public abstract class AbstractCheckerWithProblemPreferences extends AbstractChec
} }
/** /**
* Add a parameter * Adds a parameter
* *
* @param problem * @param problem
* - problem that has parameter * - problem that has parameter
@ -135,9 +136,11 @@ public abstract class AbstractCheckerWithProblemPreferences extends AbstractChec
* - parameter default value * - parameter default value
* @return - parameter info object * @return - parameter info object
*/ */
public IProblemPreference addPreference(IProblemWorkingCopy problem, String key, String label, Object defaultValue) { public IProblemPreference addPreference(IProblemWorkingCopy problem, String key, String label,
Object defaultValue) {
MapProblemPreference map = getTopLevelPreference(problem); MapProblemPreference map = getTopLevelPreference(problem);
BasicProblemPreference info = new BasicProblemPreference(key, label, PreferenceType.typeOf(defaultValue)); BasicProblemPreference info = new BasicProblemPreference(key, label,
PreferenceType.typeOf(defaultValue));
map.addChildDescriptor(info); map.addChildDescriptor(info);
setDefaultPreferenceValue(problem, key, defaultValue); setDefaultPreferenceValue(problem, key, defaultValue);
return info; return info;
@ -158,23 +161,25 @@ public abstract class AbstractCheckerWithProblemPreferences extends AbstractChec
* values or set different element type * values or set different element type
* *
*/ */
public ListProblemPreference addListPreference(IProblemWorkingCopy problem, String key, String label, String itemLabel) { public ListProblemPreference addListPreference(IProblemWorkingCopy problem, String key,
String label, String itemLabel) {
MapProblemPreference map = getTopLevelPreference(problem); MapProblemPreference map = getTopLevelPreference(problem);
ListProblemPreference list = new ListProblemPreference(key, label); ListProblemPreference list = new ListProblemPreference(key, label);
list.setChildDescriptor(new BasicProblemPreference(ListProblemPreference.COMMON_DESCRIPTOR_KEY, itemLabel, list.setChildDescriptor(new BasicProblemPreference(ListProblemPreference.COMMON_DESCRIPTOR_KEY,
PreferenceType.TYPE_STRING)); itemLabel, PreferenceType.TYPE_STRING));
return (ListProblemPreference) map.addChildDescriptor(list); return (ListProblemPreference) map.addChildDescriptor(list);
} }
/** /**
* Add preference for the given problem with default value * Adds preference for the given problem with default value
* *
* @param problem * @param problem
* @param pref - preference * @param pref - preference
* @param defaultValue - default value of the preference * @param defaultValue - default value of the preference
* @return added preference * @return added preference
*/ */
public IProblemPreference addPreference(IProblemWorkingCopy problem, IProblemPreference pref, Object defaultValue) { public IProblemPreference addPreference(IProblemWorkingCopy problem, IProblemPreference pref,
Object defaultValue) {
MapProblemPreference map = getTopLevelPreference(problem); MapProblemPreference map = getTopLevelPreference(problem);
String key = pref.getKey(); String key = pref.getKey();
pref = map.addChildDescriptor(pref); pref = map.addChildDescriptor(pref);
@ -186,18 +191,19 @@ public abstract class AbstractCheckerWithProblemPreferences extends AbstractChec
* Convenience method for setting default preference value for checker that * Convenience method for setting default preference value for checker that
* uses "map" as top level problem preference. * uses "map" as top level problem preference.
* *
* @param problem - problem for which to set default value for a prefence * @param problem - problem for which to set default value for a preference
* @param key - preference key * @param key - preference key
* @param defaultValue - value of preference to be set * @param defaultValue - value of preference to be set
*/ */
protected void setDefaultPreferenceValue(IProblemWorkingCopy problem, String key, Object defaultValue) { protected void setDefaultPreferenceValue(IProblemWorkingCopy problem, String key,
Object defaultValue) {
MapProblemPreference map = getTopLevelPreference(problem); MapProblemPreference map = getTopLevelPreference(problem);
if (map.getChildValue(key) == null) if (map.getChildValue(key) == null)
map.setChildValue(key, defaultValue); map.setChildValue(key, defaultValue);
} }
/** /**
* Return "map" problem preference for a give problem, if problem * Returns "map" problem preference for a give problem, if problem
* has preference different than a map, it will throw ClassCastException. * has preference different than a map, it will throw ClassCastException.
* If top level preference does not exist create a map preference with name * If top level preference does not exist create a map preference with name
* "params" * "params"