[teiid-commits] teiid SVN: r2930 - in trunk: runtime/src/main/java/org/teiid/deployers and 1 other directory.
teiid-commits at lists.jboss.org
teiid-commits at lists.jboss.org
Wed Feb 23 12:57:40 EST 2011
Author: shawkins
Date: 2011-02-23 12:57:40 -0500 (Wed, 23 Feb 2011)
New Revision: 2930
Modified:
trunk/client/src/main/java/org/teiid/adminapi/impl/ModelMetaData.java
trunk/runtime/src/main/java/org/teiid/deployers/VDBDeployer.java
trunk/runtime/src/main/java/org/teiid/deployers/VDBStatusChecker.java
Log:
TEIID-1470 updating dynamic vdb deployment logic
Modified: trunk/client/src/main/java/org/teiid/adminapi/impl/ModelMetaData.java
===================================================================
--- trunk/client/src/main/java/org/teiid/adminapi/impl/ModelMetaData.java 2011-02-23 16:03:16 UTC (rev 2929)
+++ trunk/client/src/main/java/org/teiid/adminapi/impl/ModelMetaData.java 2011-02-23 17:57:40 UTC (rev 2930)
@@ -25,6 +25,7 @@
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Collections;
+import java.util.LinkedList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
@@ -52,6 +53,7 @@
@ManagementObject(properties=ManagementProperties.EXPLICIT)
public class ModelMetaData extends AdminObjectImpl implements Model {
+ private static final int DEFAULT_ERROR_HISTORY = 10;
private static final String SUPPORTS_MULTI_SOURCE_BINDINGS_KEY = "supports-multi-source-bindings"; //$NON-NLS-1$
private static final long serialVersionUID = 3714234763056162230L;
@@ -229,10 +231,13 @@
public synchronized ValidationError addError(String severity, String message) {
if (this.errors == null) {
- this.errors = new ArrayList<ValidationError>();
+ this.errors = new LinkedList<ValidationError>();
}
ValidationError ve = new ValidationError(severity, message);
this.errors.add(ve);
+ if (this.errors.size() > DEFAULT_ERROR_HISTORY) {
+ this.errors.remove(0);
+ }
return ve;
}
Modified: trunk/runtime/src/main/java/org/teiid/deployers/VDBDeployer.java
===================================================================
--- trunk/runtime/src/main/java/org/teiid/deployers/VDBDeployer.java 2011-02-23 16:03:16 UTC (rev 2929)
+++ trunk/runtime/src/main/java/org/teiid/deployers/VDBDeployer.java 2011-02-23 17:57:40 UTC (rev 2930)
@@ -43,7 +43,6 @@
import org.teiid.adminapi.impl.SourceMappingMetadata;
import org.teiid.adminapi.impl.VDBMetaData;
import org.teiid.adminapi.impl.VDBTranslatorMetaData;
-import org.teiid.adminapi.impl.ModelMetaData.ValidationError;
import org.teiid.dqp.internal.datamgr.ConnectorManager;
import org.teiid.dqp.internal.datamgr.ConnectorManagerRepository;
import org.teiid.dqp.internal.datamgr.TranslatorRepository;
@@ -323,7 +322,7 @@
*/
private Boolean loadMetadata(VDBMetaData vdb, ModelMetaData model, boolean cache, File cacheFile, MetadataStoreGroup vdbStore, ConnectorManagerRepository cmr) {
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$
- final ValidationError addedError = model.addError(ModelMetaData.ValidationError.Severity.ERROR.toString(), msg);
+ model.addError(ModelMetaData.ValidationError.Severity.ERROR.toString(), msg);
LogManager.logInfo(LogConstants.CTX_RUNTIME, msg);
String exceptionMessage = null;
@@ -342,7 +341,6 @@
this.serializer.saveAttachment(cacheFile, store);
}
vdbStore.addStore(store);
- model.removeError(addedError);
loaded = true;
break;
} catch (TranslatorException e) {
@@ -366,10 +364,13 @@
model.addError(ModelMetaData.ValidationError.Severity.ERROR.toString(), exceptionMessage);
}
LogManager.logWarning(LogConstants.CTX_RUNTIME, failed_msg);
- } else if (vdb.isValid()) {
- this.vdbRepository.updateVDB(vdb.getName(), vdb.getVersion());
- vdb.setStatus(VDB.Status.ACTIVE);
- LogManager.logInfo(LogConstants.CTX_RUNTIME, RuntimePlugin.Util.getString("vdb_activated",vdb.getName(), vdb.getVersion())); //$NON-NLS-1$
+ } else {
+ model.clearErrors();
+ if (vdb.isValid()) {
+ this.vdbRepository.updateVDB(vdb.getName(), vdb.getVersion());
+ vdb.setStatus(VDB.Status.ACTIVE);
+ LogManager.logInfo(LogConstants.CTX_RUNTIME, RuntimePlugin.Util.getString("vdb_activated",vdb.getName(), vdb.getVersion())); //$NON-NLS-1$
+ }
}
}
Modified: trunk/runtime/src/main/java/org/teiid/deployers/VDBStatusChecker.java
===================================================================
--- trunk/runtime/src/main/java/org/teiid/deployers/VDBStatusChecker.java 2011-02-23 16:03:16 UTC (rev 2929)
+++ trunk/runtime/src/main/java/org/teiid/deployers/VDBStatusChecker.java 2011-02-23 17:57:40 UTC (rev 2930)
@@ -84,7 +84,6 @@
String sourceName = getSourceName(resourceName, model, translator);
if (sourceName != null) {
ConnectorManager cm = cmr.getConnectorManager(sourceName);
- model.clearErrors();
String status = cm.getStausMessage();
if (status != null && status.length() > 0) {
model.addError(ModelMetaData.ValidationError.Severity.ERROR.name(), status);
@@ -94,6 +93,8 @@
Runnable r = model.removeAttachment(Runnable.class);
if (r != null) {
runnables.add(r);
+ } else {
+ model.clearErrors();
}
}
}
More information about the teiid-commits
mailing list