|
What this is
Other links
The source code/* * Sun Public License Notice * * The contents of this file are subject to the Sun Public License * Version 1.0 (the "License"). You may not use this file except in * compliance with the License. A copy of the License is available at * http://www.sun.com/ * * The Original Code is NetBeans. The Initial Developer of the Original * Code is Sun Microsystems, Inc. Portions Copyright 1997-2001 Sun * Microsystems, Inc. All Rights Reserved. */ /* * Schema2BeansRuntimeException * I'd rather this class didn't exist. I wanted to change the API to throw * proper exceptions, but this is difficult to do with so many users of * this library. This class exists to fill in where I found it * difficult to throw a normal Schema2BeansException, since anything * that inherits from RuntimeException doesn't have to be caught. * * With that being said, there are a few times when a RuntimeException * would be approbate enough, but I used Schema2BeansRuntimeException * as it has more features. */ package org.netbeans.modules.schema2beans; import java.util.*; import java.io.*; public class Schema2BeansRuntimeException extends RuntimeException implements Serializable { protected Throwable childThrowable; protected String message; protected String stackTrace; public Schema2BeansRuntimeException(Throwable e) { super(""); //System.out.println("Created Schema2BeansRuntimeException1: e="+e); //e.printStackTrace(); childThrowable = e; message = childThrowable.getMessage(); genStackTrace(); } public Schema2BeansRuntimeException(String mesg) { super(mesg); //System.out.println("Created Schema2BeansRuntimeException3: mesg="+mesg); childThrowable = null; message = mesg; genStackTrace(); } public Schema2BeansRuntimeException(String mesg, Throwable e) { super(mesg); //System.out.println("Created Schema2BeansRuntimeException2: e="+e+" mesg="+mesg); //e.printStackTrace(); childThrowable = e; message = mesg+"\n"+childThrowable.getMessage(); genStackTrace(); } public Throwable getCause() { return childThrowable; } public String getMessage() { return message; } protected void genStackTrace() { StringWriter strWriter = new StringWriter(); PrintWriter s = new PrintWriter(strWriter); if (childThrowable == null) { super.printStackTrace(s); } else { s.println(super.getMessage()); childThrowable.printStackTrace(s); } stackTrace = strWriter.toString(); } public void printStackTrace(PrintStream s) { s.println(stackTrace); } public void printStackTrace(PrintWriter s) { s.println(stackTrace); } public void printStackTrace() { System.out.println(stackTrace); } } |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.