public static OperationOutcome AddError(this OperationOutcome outcome, Exception exception) { string message; if (exception is SparkException) { message = exception.Message; } else { message = string.Format("{0}: {1}", exception.GetType().Name, exception.Message); } outcome.AddError(message); // Don't add a stacktrace if this is an acceptable logical-level error if (Debugger.IsAttached && !(exception is SparkException)) { var stackTrace = new OperationOutcome.IssueComponent { Severity = OperationOutcome.IssueSeverity.Information, Diagnostics = exception.StackTrace }; outcome.Issue.Add(stackTrace); } return(outcome); }
private static void AddError(this OperationOutcome outcome, Exception exception) { string message; if (exception is SparkException) { message = exception.Message; } else { message = $"{exception.GetType().Name}: {exception.Message}"; } outcome.AddError(message); // Don't add a stacktrace if this is an acceptable logical-level error if (!(exception is SparkException)) { var stackTrace = new OperationOutcome.IssueComponent { Severity = OperationOutcome.IssueSeverity.Information, Diagnostics = exception.StackTrace }; outcome.Issue.Add(stackTrace); } }
public static OperationOutcome Error(this OperationOutcome outcome, Exception exception) { string message; if (exception is SparkException) { message = exception.Message; } else { message = string.Format("{0}: {1}", exception.GetType().Name, exception.Message); } var baseResult = outcome.AddError(message); // Don't add a stacktrace if this is an acceptable logical-level error if (!(exception is SparkException)) { var stackTrace = new OperationOutcome.OperationOutcomeIssueComponent(); stackTrace.Severity = OperationOutcome.IssueSeverity.Information; stackTrace.Details = exception.StackTrace; baseResult.Issue.Add(stackTrace); } return(baseResult); }
public static FhirResponse WithError(HttpStatusCode code, string message, params object[] args) { OperationOutcome outcome = new OperationOutcome(); outcome.AddError(string.Format(message, args)); return(new FhirResponse(code, outcome)); }
public static OperationOutcome AddException(this OperationOutcome operationOutcome, Exception exception) { Exception e = exception; do { operationOutcome.AddError(e.Message); e = e.InnerException; }while (e != null); return(operationOutcome); }