FailureProcessingResult IFailuresPreprocessor.PreprocessFailures(FailuresAccessor failuresAccessor) { if (!failuresAccessor.IsTransactionBeingCommitted()) { return(FailureProcessingResult.Continue); } if (failuresAccessor.GetSeverity() >= FailureSeverity.DocumentCorruption) { return(FailureProcessingResult.ProceedWithRollBack); } if (failuresAccessor.GetSeverity() >= FailureSeverity.Error) { // Handled failures in order { var failureDefinitionIdsToFix = FailureDefinitionIdsToFix; if (failureDefinitionIdsToFix != null) { var result = FixFailures(failuresAccessor, failureDefinitionIdsToFix); if (result != FailureProcessingResult.Continue) { return(result); } } } // Unhandled failures in incomming order { var failureDefinitionIdsToFix = failuresAccessor.GetFailureMessages().GroupBy(x => x.GetFailureDefinitionId()).Select(x => x.Key); var result = FixFailures(failuresAccessor, failureDefinitionIdsToFix); if (result != FailureProcessingResult.Continue) { return(result); } } } if (failuresAccessor.GetSeverity() >= FailureSeverity.Warning) { // Unsolved failures or warnings foreach (var error in failuresAccessor.GetFailureMessages().OrderBy(error => error.GetSeverity())) { AddRuntimeMessage(error, false); } failuresAccessor.DeleteAllWarnings(); } return(FailureProcessingResult.Continue); }
public FailureProcessingResult ProcessFailures(FailuresAccessor data) { switch (data.GetSeverity()) { case FailureSeverity.Warning: data.ResolveFailures(data.GetFailureMessages()); return(FailureProcessingResult.ProceedWithCommit); default: return(FailureProcessingResult.ProceedWithRollBack); } }
public FailureProcessingResult PreprocessFailures( FailuresAccessor a) { IList <FailureMessageAccessor> failures = a.GetFailureMessages(); foreach (FailureMessageAccessor f in failures) { FailureSeverity fseverity = a.GetSeverity(); if (fseverity == FailureSeverity.Warning) { a.DeleteWarning(f); } } return(FailureProcessingResult.Continue); }
public FailureProcessingResult PreprocessFailures(FailuresAccessor failuresAccessor) { var severity = failuresAccessor.GetSeverity(); if (severity == FailureSeverity.Warning) { foreach (var warning in failuresAccessor.GetFailureMessages(FailureSeverity.Warning)) { RhinoApp.WriteLine(warning.GetDescriptionText()); } failuresAccessor.DeleteAllWarnings(); return(FailureProcessingResult.ProceedWithCommit); } return(FailureProcessingResult.Continue); }
FailureProcessingResult PreprocessFailures(FailuresAccessor a) { IList<FailureMessageAccessor> failures = a.GetFailureMessages(); foreach (FailureMessageAccessor f in failures) { FailureSeverity fseverity = a.GetSeverity(); if (fseverity == FailureSeverity.Warning) { a.DeleteWarning(f); } else { a.ResolveFailure(f); return FailureProcessingResult.ProceedWithCommit; } } return FailureProcessingResult.Continue; }
public FailureProcessingResult PreprocessFailures(FailuresAccessor a) { IList <FailureMessageAccessor> failures = a.GetFailureMessages(); foreach (FailureMessageAccessor f in failures) { FailureDefinitionId id = f.GetFailureDefinitionId(); FailureSeverity failureSeverity = a.GetSeverity(); if (failureSeverity == FailureSeverity.Warning) { a.DeleteWarning(f); } else { return(FailureProcessingResult.ProceedWithRollBack); } } return(FailureProcessingResult.Continue); }
private void CheckWarnings(object sender, FailuresProcessingEventArgs e) { FailuresAccessor fa = e.GetFailuresAccessor(); IList <FailureMessageAccessor> failList = fa.GetFailureMessages(); // Inside event handler, get all warnings foreach (FailureMessageAccessor failure in failList) { // check FailureDefinitionIds against ones that you want to dismiss, FailureDefinitionId failID = failure.GetFailureDefinitionId(); var failureSeverity = fa.GetSeverity(); if (failureSeverity == FailureSeverity.Warning) { fa.DeleteWarning(failure); } // // prevent Revit from showing Unenclosed room warnings // if (failID == BuiltInFailures.RoomFailures.RoomNotEnclosed) // { // fa.DeleteWarning(failure); // } } }
FailureProcessingResult PreprocessFailures( FailuresAccessor a) { IList<FailureMessageAccessor> failures = a.GetFailureMessages(); foreach( FailureMessageAccessor f in failures ) { FailureSeverity fseverity = a.GetSeverity(); if( fseverity == FailureSeverity.Warning ) { a.DeleteWarning( f ); } else { a.ResolveFailure( f ); return FailureProcessingResult.ProceedWithCommit; } } return FailureProcessingResult.Continue; }