[jbosstools-commits] JBoss Tools SVN: r23889 - in trunk/cdi: plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/validation and 2 other directories.

jbosstools-commits at lists.jboss.org jbosstools-commits at lists.jboss.org
Tue Aug 3 15:56:52 EDT 2010


Author: akazakov
Date: 2010-08-03 15:56:51 -0400 (Tue, 03 Aug 2010)
New Revision: 23889

Modified:
   trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/preferences/CDIPreferenceInitializer.java
   trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/preferences/CDIPreferences.java
   trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/validation/CDICoreValidator.java
   trunk/cdi/tests/org.jboss.tools.cdi.core.test/META-INF/MANIFEST.MF
   trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/ValidationTest.java
Log:
https://jira.jboss.org/browse/JBIDE-6507 Enable/disable checkbox has been added to CDI/EL/Seam validation preference pages.

Modified: trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/preferences/CDIPreferenceInitializer.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/preferences/CDIPreferenceInitializer.java	2010-08-03 19:56:14 UTC (rev 23888)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/preferences/CDIPreferenceInitializer.java	2010-08-03 19:56:51 UTC (rev 23889)
@@ -28,6 +28,7 @@
 	@Override
 	public void initializeDefaultPreferences() {
 		IEclipsePreferences defaultPreferences = ((IScopeContext) new DefaultScope()).getNode(CDICorePlugin.PLUGIN_ID);
+		defaultPreferences.putBoolean(SeverityPreferences.ENABLE_BLOCK_PREFERENCE_NAME, true);
 		for (String name : CDIPreferences.SEVERITY_OPTION_NAMES) {
 			defaultPreferences.put(name, SeverityPreferences.ERROR);
 		}

Modified: trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/preferences/CDIPreferences.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/preferences/CDIPreferences.java	2010-08-03 19:56:14 UTC (rev 23888)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/core/preferences/CDIPreferences.java	2010-08-03 19:56:51 UTC (rev 23889)
@@ -26,10 +26,6 @@
 
 	private static CDIPreferences INSTANCE = new CDIPreferences();
 
-	// Test group
-
-	// Test
-	public static final String TEST = INSTANCE.createSeverityOption("testKey"); //$NON-NLS-1$
 	//Name group
 	
 //	- stereotype declares a non-empty @Named annotation (2.7.1.3)
@@ -277,4 +273,8 @@
 	public static boolean shouldValidateCore(IProject project) {
 		return true;
 	}
+
+	public static boolean isValidationEnabled(IProject project) {
+		return INSTANCE.isEnabled(project);
+	}
 }
\ No newline at end of file

Modified: trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/validation/CDICoreValidator.java
===================================================================
--- trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/validation/CDICoreValidator.java	2010-08-03 19:56:14 UTC (rev 23888)
+++ trunk/cdi/plugins/org.jboss.tools.cdi.core/src/org/jboss/tools/cdi/internal/core/validation/CDICoreValidator.java	2010-08-03 19:56:51 UTC (rev 23889)
@@ -142,6 +142,14 @@
 
 	/*
 	 * (non-Javadoc)
+	 * @see org.jboss.tools.jst.web.kb.validation.IValidator#isEnabled(org.eclipse.core.resources.IProject)
+	 */
+	public boolean isEnabled(IProject project) {
+		return CDIPreferences.isValidationEnabled(project);
+	}
+
+	/*
+	 * (non-Javadoc)
 	 * 
 	 * @see
 	 * org.jboss.tools.jst.web.kb.validation.IValidator#shouldValidate(org.eclipse
@@ -149,8 +157,7 @@
 	 */
 	public boolean shouldValidate(IProject project) {
 		try {
-			// TODO check preferences
-			return project != null && project.isAccessible() && project.hasNature(CDICoreNature.NATURE_ID);
+			return project != null && project.isAccessible() && project.hasNature(CDICoreNature.NATURE_ID) && isEnabled(project);
 		} catch (CoreException e) {
 			CDICorePlugin.getDefault().logError(e);
 		}

Modified: trunk/cdi/tests/org.jboss.tools.cdi.core.test/META-INF/MANIFEST.MF
===================================================================
--- trunk/cdi/tests/org.jboss.tools.cdi.core.test/META-INF/MANIFEST.MF	2010-08-03 19:56:14 UTC (rev 23888)
+++ trunk/cdi/tests/org.jboss.tools.cdi.core.test/META-INF/MANIFEST.MF	2010-08-03 19:56:51 UTC (rev 23889)
@@ -15,6 +15,7 @@
  org.eclipse.jdt.core,
  org.jboss.tools.common.el.core,
  org.jboss.tools.common.model.ui,
- org.eclipse.ltk.core.refactoring;bundle-version="3.5.0"
+ org.eclipse.ltk.core.refactoring,
+ org.jboss.tools.jst.web.kb
 Export-Package: org.jboss.tools.cdi.core.test,
  org.jboss.tools.cdi.core.test.tck

Modified: trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/ValidationTest.java
===================================================================
--- trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/ValidationTest.java	2010-08-03 19:56:14 UTC (rev 23888)
+++ trunk/cdi/tests/org.jboss.tools.cdi.core.test/src/org/jboss/tools/cdi/core/test/tck/ValidationTest.java	2010-08-03 19:56:51 UTC (rev 23889)
@@ -11,11 +11,19 @@
 package org.jboss.tools.cdi.core.test.tck;
 
 import java.text.MessageFormat;
+import java.util.List;
 
 import org.eclipse.core.resources.IFile;
 import org.eclipse.core.resources.IResource;
 import org.eclipse.core.runtime.CoreException;
+import org.eclipse.jface.preference.IPersistentPreferenceStore;
+import org.eclipse.jface.preference.IPreferenceStore;
+import org.jboss.tools.cdi.core.CDICorePlugin;
+import org.jboss.tools.cdi.internal.core.validation.CDICoreValidator;
 import org.jboss.tools.cdi.internal.core.validation.CDIValidationMessages;
+import org.jboss.tools.common.preferences.SeverityPreferences;
+import org.jboss.tools.jst.web.kb.internal.validation.ValidationContext;
+import org.jboss.tools.jst.web.kb.validation.IValidator;
 import org.jboss.tools.tests.AbstractResourceMarkerTest;
 
 /**
@@ -1391,6 +1399,19 @@
 		assertMarkerIsCreated(file, CDIValidationMessages.OBSERVER_IN_DECORATOR, 14);
 	}
 
+	/**
+	 * 10.4.3. Conditional observer methods
+	 *  - bean with scope @Dependent has an observer method declared notifyObserver=IF_EXISTS
+	 *  
+	 * @throws Exception
+	 */
+	public void testDependentBeanWithConditionalObserverMethodIsDefinitionError() throws Exception {
+		IFile file = tckProject.getFile("JavaSource/org/jboss/jsr299/tck/tests/event/broken/observer/dependentIsConditionalObserver/AlarmSystem.java");
+		assertMarkerIsCreated(file, CDIValidationMessages.ILLEGAL_CONDITIONAL_OBSERVER, 24);
+	}
+
+	// Wrong targets in CDI annotation types.
+
 	public void testQualifierWithMissingTarget() throws Exception {
 		IFile file = tckProject.getFile("JavaSource/org/jboss/jsr299/tck/tests/jbt/validation/annotations/qualifier/broken/Hairy_MissingTarget.java");
 		assertMarkerIsCreated(file, CDIValidationMessages.MISSING_TARGET_ANNOTATION_IN_QUALIFIER_TYPE.substring(0, 56) + ".*", 36);
@@ -1422,16 +1443,34 @@
 	}
 
 	/**
-	 * 10.4.3. Conditional observer methods
-	 *  - bean with scope @Dependent has an observer method declared notifyObserver=IF_EXISTS
+	 * https://jira.jboss.org/browse/JBIDE-6507
 	 *  
 	 * @throws Exception
 	 */
-	public void testDependentBeanWithConditionalObserverMethodIsDefinitionError() throws Exception {
-		IFile file = tckProject.getFile("JavaSource/org/jboss/jsr299/tck/tests/event/broken/observer/dependentIsConditionalObserver/AlarmSystem.java");
-		assertMarkerIsCreated(file, CDIValidationMessages.ILLEGAL_CONDITIONAL_OBSERVER, 24);
+	public void testDisabledValidator() throws Exception {
+		IPreferenceStore preferenceStore = CDICorePlugin.getDefault().getPreferenceStore();
+		preferenceStore.setValue(SeverityPreferences.ENABLE_BLOCK_PREFERENCE_NAME, false);
+		((IPersistentPreferenceStore)preferenceStore).save();
+
+		assertNull("CDICoreValidator is not be disabled.", getCDIValidator());
+
+		preferenceStore.setValue(SeverityPreferences.ENABLE_BLOCK_PREFERENCE_NAME, true);
+		((IPersistentPreferenceStore)preferenceStore).save();
+
+		assertNotNull("CDICoreValidator is disabled.", getCDIValidator());
 	}
 
+	private CDICoreValidator getCDIValidator() {
+		ValidationContext context = new ValidationContext(tckProject);
+		List<IValidator> validators = context.getValidators();
+		for (IValidator validator : validators) {
+			if(validator instanceof CDICoreValidator) {
+				return (CDICoreValidator)validator;
+			}
+		}
+		return null;
+	}
+
 	public static int getMarkersNumber(IResource resource) {
 		return AbstractResourceMarkerTest.getMarkersNumberByGroupName(resource, null);
 	}



More information about the jbosstools-commits mailing list