[jbosstools-commits] JBoss Tools SVN: r42581 - in trunk: jst/tests/org.jboss.tools.jst.web.kb.test/src/org/jboss/tools/jst/web/kb/test/validation and 1 other directory.

jbosstools-commits at lists.jboss.org jbosstools-commits at lists.jboss.org
Fri Jul 13 18:18:32 EDT 2012


Author: akazakov
Date: 2012-07-13 18:18:30 -0400 (Fri, 13 Jul 2012)
New Revision: 42581

Modified:
   trunk/common/plugins/org.jboss.tools.common.validation/src/org/jboss/tools/common/validation/ContextValidationHelper.java
   trunk/common/plugins/org.jboss.tools.common.validation/src/org/jboss/tools/common/validation/IValidationContextManager.java
   trunk/common/plugins/org.jboss.tools.common.validation/src/org/jboss/tools/common/validation/ValidationContext.java
   trunk/common/plugins/org.jboss.tools.common.validation/src/org/jboss/tools/common/validation/ValidationResourceRegister.java
   trunk/jst/tests/org.jboss.tools.jst.web.kb.test/src/org/jboss/tools/jst/web/kb/test/validation/KBValidationTest.java
Log:
https://issues.jboss.org/browse/JBIDE-10611 As-you-type CDI validation

Modified: trunk/common/plugins/org.jboss.tools.common.validation/src/org/jboss/tools/common/validation/ContextValidationHelper.java
===================================================================
--- trunk/common/plugins/org.jboss.tools.common.validation/src/org/jboss/tools/common/validation/ContextValidationHelper.java	2012-07-13 20:45:23 UTC (rev 42580)
+++ trunk/common/plugins/org.jboss.tools.common.validation/src/org/jboss/tools/common/validation/ContextValidationHelper.java	2012-07-13 22:18:30 UTC (rev 42581)
@@ -68,7 +68,7 @@
 
 	public void cleanup() {
 		if(validationContextManager!=null) {
-			validationContextManager.setValidationResourceRegister(null);
+			validationContextManager.setValidationResourceRegisters(null);
 		}
 		validationContextManager = null;
 	}

Modified: trunk/common/plugins/org.jboss.tools.common.validation/src/org/jboss/tools/common/validation/IValidationContextManager.java
===================================================================
--- trunk/common/plugins/org.jboss.tools.common.validation/src/org/jboss/tools/common/validation/IValidationContextManager.java	2012-07-13 20:45:23 UTC (rev 42580)
+++ trunk/common/plugins/org.jboss.tools.common.validation/src/org/jboss/tools/common/validation/IValidationContextManager.java	2012-07-13 22:18:30 UTC (rev 42581)
@@ -59,5 +59,5 @@
 
 	void clearValidatedProjectsList();
 
-	void setValidationResourceRegister(ValidationResourceRegister validationResourceRegister);
+	void setValidationResourceRegisters(Set<ValidationResourceRegister> validationResourceRegisters);
 }
\ No newline at end of file

Modified: trunk/common/plugins/org.jboss.tools.common.validation/src/org/jboss/tools/common/validation/ValidationContext.java
===================================================================
--- trunk/common/plugins/org.jboss.tools.common.validation/src/org/jboss/tools/common/validation/ValidationContext.java	2012-07-13 20:45:23 UTC (rev 42580)
+++ trunk/common/plugins/org.jboss.tools.common.validation/src/org/jboss/tools/common/validation/ValidationContext.java	2012-07-13 22:18:30 UTC (rev 42581)
@@ -33,7 +33,7 @@
  */
 public class ValidationContext implements IValidationContextManager {
 
-	private ValidationResourceRegister validationResourceRegister;
+	private Set<ValidationResourceRegister> validationResourceRegisters;
 	private Map<IValidator, IValidatingProjectTree> projectTree = new HashMap<IValidator, IValidatingProjectTree>();
 	static List<IConfigurationElement> ALL_VALIDATORS;
 	protected List<IValidator> validators = new ArrayList<IValidator>();
@@ -65,7 +65,7 @@
 	protected List<IValidator> getAllValidators(IProject project) {
 		projectTree.clear();
 		validators.clear();
-		validationResourceRegister = null;
+		validationResourceRegisters = null;
 
 		inintConfigurationElements();
 
@@ -112,48 +112,81 @@
 	 * @see org.jboss.tools.jst.web.kb.validation.IValidationContextManager#isObsolete()
 	 */
 	public boolean isObsolete() {
-		return validationResourceRegister!=null && validationResourceRegister.isObsolete();
+		if(validationResourceRegisters!=null) {
+			Set<ValidationResourceRegister> registers = getValidationResourceRegisters();
+			for (ValidationResourceRegister register : registers) {
+				if(register.isObsolete()) {
+					return true;
+				}
+			}
+		}
+		return false;
 	}
 
-	private ValidationResourceRegister getValidationResourceRegister() {
-		if(validationResourceRegister==null && !projectTree.isEmpty()) {
-			// Initialize the register
-			for (IValidatingProjectTree tree : projectTree.values()) {
-				boolean inited = false;
-				if(!tree.getBrunches().isEmpty()) {
-					for (IValidatingProjectSet brunch : tree.getBrunches().values()) {
-						IProjectValidationContext context = brunch.getRootContext();
-						ValidationResourceRegister register = context.getValidationResourceRegister();
-						if(register==null) {
-							if(validationResourceRegister==null) {
-								validationResourceRegister = new ValidationResourceRegister();
+	private Set<ValidationResourceRegister> getValidationResourceRegisters() {
+		if(validationResourceRegisters==null) {
+			validationResourceRegisters = new HashSet<ValidationResourceRegister>();
+			if(!projectTree.isEmpty()) {
+				validationResourceRegisters = new HashSet<ValidationResourceRegister>();
+				// Initialize the register
+				for (IValidatingProjectTree tree : projectTree.values()) {
+					if(!tree.getBrunches().isEmpty()) {
+						for (IValidatingProjectSet brunch : tree.getBrunches().values()) {
+							IProjectValidationContext context = brunch.getRootContext();
+							ValidationResourceRegister register = context.getValidationResourceRegister();
+							if(register==null) {
+								register = new ValidationResourceRegister();
+								context.setValidationResourceRegister(register);
 							}
-							context.setValidationResourceRegister(validationResourceRegister);
-						} else {
-							validationResourceRegister = register;
-							inited = true;
-							break;
+							validationResourceRegisters.add(register);
 						}
 					}
 				}
-				if(inited) {
-					break;
-				}
 			}
 		}
-		if(validationResourceRegister==null) {
-			validationResourceRegister = new ValidationResourceRegister();
-		}
-		return validationResourceRegister;
+		return validationResourceRegisters;
 	}
 
+	//	private ValidationResourceRegister getValidationResourceRegister() {
+//		//FIXME
+//		if(validationResourceRegister==null && !projectTree.isEmpty()) {
+//			// Initialize the register
+//			for (IValidatingProjectTree tree : projectTree.values()) {
+//				boolean inited = false;
+//				if(!tree.getBrunches().isEmpty()) {
+//					for (IValidatingProjectSet brunch : tree.getBrunches().values()) {
+//						IProjectValidationContext context = brunch.getRootContext();
+//						ValidationResourceRegister register = context.getValidationResourceRegister();
+//						if(register==null) {
+//							if(validationResourceRegister==null) {
+//								validationResourceRegister = new ValidationResourceRegister();
+//							}
+//							context.setValidationResourceRegister(validationResourceRegister);
+//						} else {
+//							validationResourceRegister = register;
+//							inited = true;
+//							break;
+//						}
+//					}
+//				}
+//				if(inited) {
+//					break;
+//				}
+//			}
+//		}
+//		if(validationResourceRegister==null) {
+//			validationResourceRegister = new ValidationResourceRegister();
+//		}
+//		return validationResourceRegister;
+//	}
+
 	/*
 	 * (non-Javadoc)
-	 * @see org.jboss.tools.jst.web.kb.validation.IValidationContextManager#setValidationResourceRegister(org.jboss.tools.jst.web.kb.internal.validation.ValidationResourceRegister)
+	 * @see org.jboss.tools.common.validation.IValidationContextManager#setValidationResourceRegisters(java.util.Set)
 	 */
-	public void setValidationResourceRegister(
-			ValidationResourceRegister validationResourceRegister) {
-		this.validationResourceRegister = validationResourceRegister;
+	public void setValidationResourceRegisters(
+			Set<ValidationResourceRegister> validationResourceRegisters) {
+		this.validationResourceRegisters = validationResourceRegisters;
 	}
 
 	/*
@@ -169,7 +202,10 @@
 	 * @see org.jboss.tools.jst.web.kb.validation.IValidationContext#clearRegisteredFiles()
 	 */
 	public void clearRegisteredFiles() {
-		getValidationResourceRegister().clear();
+		Set<ValidationResourceRegister> registers = getValidationResourceRegisters();
+		for (ValidationResourceRegister register : registers) {
+			register.clear();
+		}
 	}
 
 	/*
@@ -177,7 +213,12 @@
 	 * @see org.jboss.tools.jst.web.kb.validation.IValidationContext#getRemovedFiles()
 	 */
 	public Set<IFile> getRemovedFiles() {
-		return getValidationResourceRegister().getRemovedFiles();
+		Set<IFile> removed = new HashSet<IFile>();
+		Set<ValidationResourceRegister> registers = getValidationResourceRegisters();
+		for (ValidationResourceRegister register : registers) {
+			removed.addAll(register.getRemovedFiles());
+		}
+		return removed;
 	}
 
 	/*
@@ -185,10 +226,13 @@
 	 * @see org.jboss.tools.jst.web.kb.validation.IValidationContext#addRemovedFile(org.eclipse.core.resources.IFile)
 	 */
 	public void addRemovedFile(IFile file) {
-		getValidationResourceRegister().addRemovedFile(file);
 		for (IValidatingProjectTree tree : projectTree.values()) {
 			tree.addProject(file.getProject());
 		}
+		Set<ValidationResourceRegister> registers = getValidationResourceRegisters();
+		for (ValidationResourceRegister register : registers) {
+			register.addRemovedFile(file);
+		}
 	}
 
 	/*
@@ -196,7 +240,12 @@
 	 * @see org.jboss.tools.jst.web.kb.validation.IValidationContext#getRegisteredFiles()
 	 */
 	public Set<IFile> getRegisteredFiles() {
-		return getValidationResourceRegister().getRegisteredFiles();
+		Set<IFile> registered = new HashSet<IFile>();
+		Set<ValidationResourceRegister> registers = getValidationResourceRegisters();
+		for (ValidationResourceRegister register : registers) {
+			registered.addAll(register.getRegisteredFiles());
+		}
+		return registered;
 	}
 
 	/*
@@ -204,7 +253,10 @@
 	 * @see org.jboss.tools.jst.web.kb.validation.IValidationContext#registerFile(org.eclipse.core.resources.IFile)
 	 */
 	public void registerFile(IFile file) {
-		getValidationResourceRegister().registerFile(file);
+		Set<ValidationResourceRegister> registers = getValidationResourceRegisters();
+		for (ValidationResourceRegister register : registers) {
+			register.registerFile(file);
+		}
 	}
 
 	/*

Modified: trunk/common/plugins/org.jboss.tools.common.validation/src/org/jboss/tools/common/validation/ValidationResourceRegister.java
===================================================================
--- trunk/common/plugins/org.jboss.tools.common.validation/src/org/jboss/tools/common/validation/ValidationResourceRegister.java	2012-07-13 20:45:23 UTC (rev 42580)
+++ trunk/common/plugins/org.jboss.tools.common.validation/src/org/jboss/tools/common/validation/ValidationResourceRegister.java	2012-07-13 22:18:30 UTC (rev 42581)
@@ -21,7 +21,8 @@
 public class ValidationResourceRegister {
 	private Set<IFile> removedFiles = new HashSet<IFile>();
 	private Set<IFile> registeredResources = new HashSet<IFile>();
-	private boolean obsolete = false;
+	private boolean obsolete;
+	private boolean main;
 
 	public void clear() {
 		synchronized (removedFiles) {
@@ -62,4 +63,12 @@
 	public boolean isObsolete() {
 		return obsolete;
 	}
+
+	public boolean isMain() {
+		return main;
+	}
+
+	public void setMain(boolean main) {
+		this.main = main;
+	}
 }
\ No newline at end of file

Modified: trunk/jst/tests/org.jboss.tools.jst.web.kb.test/src/org/jboss/tools/jst/web/kb/test/validation/KBValidationTest.java
===================================================================
--- trunk/jst/tests/org.jboss.tools.jst.web.kb.test/src/org/jboss/tools/jst/web/kb/test/validation/KBValidationTest.java	2012-07-13 20:45:23 UTC (rev 42580)
+++ trunk/jst/tests/org.jboss.tools.jst.web.kb.test/src/org/jboss/tools/jst/web/kb/test/validation/KBValidationTest.java	2012-07-13 22:18:30 UTC (rev 42581)
@@ -102,14 +102,14 @@
 			}
 			public void clearValidatedProjectsList() {
 			}
-			public void setValidationResourceRegister(
-					ValidationResourceRegister validationResourceRegister) {
-			}
 			public void init(IProject project) {
 			}
 			public boolean isObsolete() {
 				return false;
 			}
+			public void setValidationResourceRegisters(
+					Set<ValidationResourceRegister> validationResourceRegisters) {
+			}
 		});
 		helper.cleanup();
 		assertNull(helper.getValidationContextManager(false));



More information about the jbosstools-commits mailing list