/******************************************************************************* * Copyright (c) 2015 Red Hat, Inc. * Distributed under license by Red Hat, Inc. All rights reserved. * This program is made available under the terms of the * Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Red Hat, Inc. - initial API and implementation ******************************************************************************/ package org.jboss.tools.batch.internal.core.preferences; import java.util.HashSet; import java.util.Set; import org.eclipse.core.resources.IProject; import org.jboss.tools.batch.core.BatchCorePlugin; import org.jboss.tools.common.validation.ValidationSeverityPreferences; /** * @author Viacheslav Kabanovich */ public class BatchSeverityPreferences extends ValidationSeverityPreferences { public static final Set<String> SEVERITY_OPTION_NAMES = new HashSet<String>(); private static BatchSeverityPreferences INSTANCE = new BatchSeverityPreferences(); public static final String WARNING_GROUP_ID = "batch"; public static final String INVALID_JOB_RESTARTABLE = INSTANCE.createSeverityOption("invalidJobRestartable", "invalid-restartable"); //$NON-NLS-1$ public static final String EMPTY_REFERENCE = INSTANCE.createSeverityOption("emptyReference", "empty-reference"); //$NON-NLS-1$ public static final String UNKNOWN_ARTIFACT_NAME = INSTANCE.createSeverityOption("unknownArtifactName", "unknown-artifact"); //$NON-NLS-1$ public static final String WRONG_ARTIFACT_TYPE = INSTANCE.createSeverityOption("wrongArtifactType", "wrong-artifact"); //$NON-NLS-1$ public static final String UNUSED_PROPERTY = INSTANCE.createSeverityOption("unusedProperty", "unused-property"); //$NON-NLS-1$ public static final String UNKNOWN_PROPERTY = INSTANCE.createSeverityOption("unknownProperty", "unknown-property"); //$NON-NLS-1$ public static final String TARGET_NOT_FOUND = INSTANCE.createSeverityOption("targetNotFound", "unfound-target"); //$NON-NLS-1$ public static final String LOOP_IS_DETECTED = INSTANCE.createSeverityOption("loopIsDetected", "loop-detected"); //$NON-NLS-1$ public static final String UNKNOWN_EXCEPTION_CLASS = INSTANCE.createSeverityOption("unknownExceptionClass", "unknown-exception"); //$NON-NLS-1$ public static final String WRONG_EXCEPTION_CLASS = INSTANCE.createSeverityOption("wrongExceptionClass", "not-exception"); //$NON-NLS-1$ /** * @return the only instance of JSFSeverityPreferences */ public static BatchSeverityPreferences getInstance() { return INSTANCE; } private BatchSeverityPreferences() { } @Override protected String createSeverityOption(String shortName) { String name = getPluginId() + ".validator.problem." + shortName; //$NON-NLS-1$ SEVERITY_OPTION_NAMES.add(name); return name; } @Override protected String getPluginId() { return BatchCorePlugin.PLUGIN_ID; } @Override protected Set<String> getSeverityOptionNames() { return SEVERITY_OPTION_NAMES; } @Override public String getWarningGroupID() { return WARNING_GROUP_ID; } public static boolean isValidationEnabled(IProject project) { return INSTANCE.isEnabled(project); } public static int getMaxNumberOfProblemMarkersPerFile(IProject project) { return INSTANCE.getMaxNumberOfProblemMarkersPerResource(project); } // public static boolean shouldValidateTagLibs(IProject project) { // return !(SeverityPreferences.IGNORE.equals(INSTANCE.getProjectPreference(project, UNKNOWN_TAGLIB_COMPONENT)) && // SeverityPreferences.IGNORE.equals(INSTANCE.getProjectPreference(project, UNKNOWN_TAGLIB_ATTRIBUTE))); // } }