Example usage for com.vaadin.shared.ui ErrorLevel ERROR

List of usage examples for com.vaadin.shared.ui ErrorLevel ERROR

Introduction

In this page you can find the example usage for com.vaadin.shared.ui ErrorLevel ERROR.

Prototype

ErrorLevel ERROR

To view the source code for com.vaadin.shared.ui ErrorLevel ERROR.

Click Source Link

Document

Error level for regular messages.

Usage

From source file:de.symeda.sormas.ui.SormasErrorHandler.java

License:Open Source License

/**
 * Taken and cleaned from AbstractErrorMessage
 *//* w w  w .java  2s.  c om*/
public static ErrorMessage getErrorMessageForException(Throwable t) {

    //return AbstractErrorMessage.getErrorMessageForException(t)
    if (null == t) {
        return null;
    } else if (t instanceof ErrorMessage) {
        // legacy case for custom error messages
        return (ErrorMessage) t;
    } else if (t instanceof Validator.InvalidValueException) {
        LocalUserError error = new LocalUserError(((Validator.InvalidValueException) t).getHtmlMessage(),
                ContentMode.HTML, ErrorLevel.ERROR);
        for (Validator.InvalidValueException nestedException : ((Validator.InvalidValueException) t)
                .getCauses()) {
            error.addCause(getErrorMessageForException(nestedException));
        }
        return error;
    } else if (t instanceof Buffered.SourceException) {
        // no message, only the causes to be painted
        LocalUserError error = new LocalUserError(null);
        // in practice, this was always ERROR in Vaadin 6 unless tweaked in
        // custom exceptions implementing ErrorMessage
        error.setErrorLevel(ErrorLevel.ERROR);
        // causes
        for (Throwable nestedException : ((Buffered.SourceException) t).getCauses()) {
            error.addCause(getErrorMessageForException(nestedException));
        }
        return error;
    } else {
        Throwable rootCause = ExceptionUtils.getRootCause(t);
        if (rootCause instanceof ValidationRuntimeException) {
            LocalUserError error;
            if (rootCause instanceof OutdatedEntityException) {
                error = new LocalUserError(I18nProperties.getString(Strings.errorEntityOutdated),
                        ContentMode.HTML, ErrorLevel.WARNING);
            } else {
                error = new LocalUserError(rootCause.getMessage(), ContentMode.HTML, ErrorLevel.WARNING);
            }
            return error;
        } else {
            String message = t.getMessage();
            if (message == null) {
                message = I18nProperties.getString(Strings.errorOccurred);
            }
            return new SystemError(message);
        }
    }
}