@@ -0,0 +1,1604 @@
+/*%0A// $Id$%0A// This software is subject to the terms of the Common Public License%0A// Agreement, available at the following URL:%0A// http://www.opensource.org/licenses/cpl.html.%0A// (C) Copyright 2001-2002 Kana Software, Inc. and others.%0A// All Rights Reserved.%0A// You must accept the terms of that agreement to use this software.%0A//%0A// jhyde, 3 December, 2001%0A*/%0A%0Apackage mondrian.resource;%0A%0Aimport java.io.PrintStream;%0Aimport java.io.PrintWriter;%0A%0A/**%0A * An %3Ccode%3EError%3C/code%3E is an an error which can be constructed from a%0A * resource and a set of arguments. It implements %7B@link ChainableThrowable%7D,%0A * so can chain it to a previous error.%0A *%0A * @author jhyde%0A * @since 3 December, 2001%0A * @version $Id$%0A **/%0Apublic class Error extends java.lang.Error implements ChainableThrowable%0A%7B%0A%09private Throwable nextThrowable;%0A%09private int code;%0A%0A%09public Error(Throwable err, Resource res, int code, Object%5B%5D args)%0A%09%7B%0A%09%09super(res.formatError(code, args));%0A%09%09this.nextThrowable = err;%0A%09%09this.code = code;%0A%09%7D%0A%09// implement ChainableThrowable%0A%09public Throwable getNextThrowable()%0A%09%7B%0A%09%09return nextThrowable;%0A%09%7D%0A%09public void setNextThrowable(Throwable err)%0A  %09%7B%0A%09%09nextThrowable = err;%0A%09%7D%0A%09public int getCode()%0A%09%7B%0A%09%09return code;%0A%09%7D%0A//%09public String toString() %7B%0A//%09%09return Util.toString(this);%0A//%09%7D%0A%09public void printStackTrace(PrintWriter s) %7B%0A%09%09super.printStackTrace(s);%0A%09%09if (nextThrowable != null) %7B%0A%09%09%09nextThrowable.printStackTrace(s);%0A%09%09%7D%0A%09%7D%0A%09public void printStackTrace(PrintStream s) %7B%0A%09%09super.printStackTrace(s);%0A%09%09if (nextThrowable != null) %7B%0A%09%09%09nextThrowable.printStackTrace(s);%0A%09%09%7D%0A%09%7D%0A%7D%0A%0A%0A// End Error.java%0A

Rename mondrian.resource.Error to ChainableError.