[teiid-commits] teiid SVN: r2687 - in branches/7.1.x: runtime/src/main/java/org/teiid/deployers and 1 other directory.

teiid-commits at lists.jboss.org teiid-commits at lists.jboss.org
Thu Oct 28 14:02:06 EDT 2010


Author: rareddy
Date: 2010-10-28 14:02:05 -0400 (Thu, 28 Oct 2010)
New Revision: 2687

Modified:
   branches/7.1.x/client/src/main/java/org/teiid/adminapi/impl/ModelMetaData.java
   branches/7.1.x/runtime/src/main/java/org/teiid/deployers/VDBDeployer.java
Log:
TEIID-1333: Remove the only error the has been added as result of metadata load from vdb validation errors, removing all the errors will cause to make a VDB active which should not be.

Modified: branches/7.1.x/client/src/main/java/org/teiid/adminapi/impl/ModelMetaData.java
===================================================================
--- branches/7.1.x/client/src/main/java/org/teiid/adminapi/impl/ModelMetaData.java	2010-10-28 14:46:37 UTC (rev 2686)
+++ branches/7.1.x/client/src/main/java/org/teiid/adminapi/impl/ModelMetaData.java	2010-10-28 18:02:05 UTC (rev 2687)
@@ -227,13 +227,22 @@
 		return list;
 	}	
 	
-    public void addError(String severity, String message) {
+    public ValidationError addError(String severity, String message) {
         if (this.errors == null) {
             this.errors = new ArrayList<ValidationError>();
         }
-        this.errors.add(new ValidationError(severity, message));
+        ValidationError ve = new ValidationError(severity, message);
+        this.errors.add(ve);
+        return ve;
     }
     
+    public boolean removeError(ValidationError remove) {
+    	if (this.errors == null) {
+    		return false;
+    	}
+    	return this.errors.remove(remove);
+    }
+    
     public void clearErrors() {
     	this.errors.clear();
     }
@@ -290,5 +299,27 @@
 		public void setPath(String path) {
 			this.path = path;
 		}		
+
+		@Override
+		public boolean equals(Object obj) {
+			if (this == obj)
+				return true;
+			if (obj == null)
+				return false;
+			if (getClass() != obj.getClass())
+				return false;
+			ValidationError other = (ValidationError) obj;
+			if (severity == null) {
+				if (other.severity != null)
+					return false;
+			} else if (!severity.equals(other.severity))
+				return false;
+			if (value == null) {
+				if (other.value != null)
+					return false;
+			} else if (!value.equals(other.value))
+				return false;
+			return true;
+		}		
     }    
 }

Modified: branches/7.1.x/runtime/src/main/java/org/teiid/deployers/VDBDeployer.java
===================================================================
--- branches/7.1.x/runtime/src/main/java/org/teiid/deployers/VDBDeployer.java	2010-10-28 14:46:37 UTC (rev 2686)
+++ branches/7.1.x/runtime/src/main/java/org/teiid/deployers/VDBDeployer.java	2010-10-28 18:02:05 UTC (rev 2687)
@@ -42,7 +42,7 @@
 import org.teiid.adminapi.impl.SourceMappingMetadata;
 import org.teiid.adminapi.impl.VDBMetaData;
 import org.teiid.adminapi.impl.VDBTranslatorMetaData;
-import org.teiid.core.CoreConstants;
+import org.teiid.adminapi.impl.ModelMetaData.ValidationError;
 import org.teiid.core.util.FileUtils;
 import org.teiid.dqp.internal.datamgr.ConnectorManager;
 import org.teiid.dqp.internal.datamgr.ConnectorManagerRepository;
@@ -285,19 +285,19 @@
 	    	
 	    	if (!loaded) {
 	    		String msg = RuntimePlugin.Util.getString("model_metadata_loading", vdb.getName()+"-"+vdb.getVersion(), model.getName(), SimpleDateFormat.getInstance().format(new Date())); //$NON-NLS-1$ //$NON-NLS-2$
-	    		model.addError(ModelMetaData.ValidationError.Severity.ERROR.toString(), msg); 
+	    		final ValidationError addedError = model.addError(ModelMetaData.ValidationError.Severity.ERROR.toString(), msg); 
 	    		LogManager.logInfo(LogConstants.CTX_RUNTIME, msg);
 	    		threadPool.run(new Runnable() {
 					@Override
 					public void run() {
-						loadMetadata(vdb, model, cache, cacheFile, vdbStore, cmr);
+						loadMetadata(vdb, model, cache, cacheFile, vdbStore, cmr, addedError);
 					}
 	    		});
 	    	}
 		}
 	}	
     
-    private void loadMetadata(VDBMetaData vdb, ModelMetaData model, boolean cache, File cacheFile, MetadataStoreGroup vdbStore, ConnectorManagerRepository cmr) {
+    private void loadMetadata(VDBMetaData vdb, ModelMetaData model, boolean cache, File cacheFile, MetadataStoreGroup vdbStore, ConnectorManagerRepository cmr, ValidationError addedError) {
     	Exception exception = null;
     	
     	boolean loaded = false;
@@ -312,7 +312,7 @@
     				this.serializer.saveAttachment(cacheFile, store);
     			}
     			vdbStore.addStore(store);
-    			model.clearErrors();
+    			model.removeError(addedError);
     			loaded = true;
     			break;
 			} catch (TranslatorException e) {



More information about the teiid-commits mailing list