All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.zkoss.zk.ui.UiException Maven / Gradle / Ivy

There is a newer version: 10.0.0-jakarta
Show newest version
/* UiException.java

	Purpose:
		
	Description:
		
	History:
		Fri Jan 20 15:47:23     2006, Created by tomyeh

Copyright (C) 2006 Potix Corporation. All Rights Reserved.

{{IS_RIGHT
	This program is distributed under LGPL Version 2.1 in the hope that
	it will be useful, but WITHOUT ANY WARRANTY.
}}IS_RIGHT
*/
package org.zkoss.zk.ui;

import org.zkoss.lang.Exceptions;
import org.zkoss.lang.Expectable;
import org.zkoss.lang.SystemException;
import org.zkoss.zel.ELException;

/**
 * Represents a UI-relevant runtime exception.
 * 
 * @author tomyeh
 */
public class UiException extends SystemException {
	/** Utilities to wrap {@link UiException}.
	 *
	 * 

The reason to use a class to hold static utilities is we can * override the method's return type later. */ public static class Aide { /** Converts an exception to UiException or OperationException * depending on whether t implements Expectable. * @see Exceptions#wrap */ public static UiException wrap(Throwable t) { t = Exceptions.unwrap(t); boolean skipWrapping = false; if (t instanceof Expectable) skipWrapping = true; else if (t instanceof ELException && t.getCause() instanceof RuntimeException) { skipWrapping = true; t = t.getCause(); } if (skipWrapping) return (OperationException) Exceptions.wrap(t, OperationException.class); return (UiException) Exceptions.wrap(t, UiException.class); } /** Converts an exception to UiException or OperationException * depending on whether t implements Expectable. * @see Exceptions#wrap */ public static UiException wrap(Throwable t, String msg) { t = Exceptions.unwrap(t); boolean skipWrapping = false; if (t instanceof Expectable) skipWrapping = true; else if (t instanceof ELException && t.getCause() instanceof RuntimeException) { skipWrapping = true; t = t.getCause(); } if (skipWrapping) return (OperationException) Exceptions.wrap(t, OperationException.class, msg); return (UiException) Exceptions.wrap(t, UiException.class, msg); } /** Converts an exception to UiException or OperationException * depending on whether t implements Expectable. * @see Exceptions#wrap */ public static UiException wrap(Throwable t, int code, Object[] fmtArgs) { t = Exceptions.unwrap(t); boolean skipWrapping = false; if (t instanceof Expectable) skipWrapping = true; else if (t instanceof ELException && t.getCause() instanceof RuntimeException) { skipWrapping = true; t = t.getCause(); } if (skipWrapping) return (OperationException) Exceptions.wrap(t, OperationException.class, code, fmtArgs); return (UiException) Exceptions.wrap(t, UiException.class, code, fmtArgs); } /** Converts an exception to UiException or OperationException * depending on whether t implements Expectable. * @see Exceptions#wrap */ public static UiException wrap(Throwable t, int code, Object fmtArg) { t = Exceptions.unwrap(t); boolean skipWrapping = false; if (t instanceof Expectable) skipWrapping = true; else if (t instanceof ELException && t.getCause() instanceof RuntimeException) { skipWrapping = true; t = t.getCause(); } if (skipWrapping) return (OperationException) Exceptions.wrap(t, OperationException.class, code, fmtArg); return (UiException) Exceptions.wrap(t, UiException.class, code, fmtArg); } /** Converts an exception to UiException or OperationException * depending on whether t implements Expectable. * @see Exceptions#wrap */ public static UiException wrap(Throwable t, int code) { t = Exceptions.unwrap(t); boolean skipWrapping = false; if (t instanceof Expectable) skipWrapping = true; else if (t instanceof ELException && t.getCause() instanceof RuntimeException) { skipWrapping = true; t = t.getCause(); } if (skipWrapping) return (OperationException) Exceptions.wrap(t, OperationException.class, code); return (UiException) Exceptions.wrap(t, UiException.class, code); } } public UiException(String msg, Throwable cause) { super(msg, cause); } public UiException(String s) { super(s); } public UiException(Throwable cause) { super(cause); } public UiException() { } public UiException(int code, Object[] fmtArgs, Throwable cause) { super(code, fmtArgs, cause); } public UiException(int code, Object fmtArg, Throwable cause) { super(code, fmtArg, cause); } public UiException(int code, Object[] fmtArgs) { super(code, fmtArgs); } public UiException(int code, Object fmtArg) { super(code, fmtArg); } public UiException(int code, Throwable cause) { super(code, cause); } public UiException(int code) { super(code); } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy