From 4aea586fe574d2317f320f6f1105515ed66739ca Mon Sep 17 00:00:00 2001 From: Jason Height Date: Mon, 24 Jul 2006 12:40:25 +0000 Subject: [PATCH] Exception Chaining: Added support for java 1.4 style exception chaining. Believe that POI is targeted at 1.4 nowdays so this should not cause an issue. git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@425026 13f79535-47bb-0310-9956-ffa450edef68 --- src/java/org/apache/poi/hssf/dev/BiffViewer.java | 2 +- .../apache/poi/hssf/eventmodel/EventRecordFactory.java | 4 +--- src/java/org/apache/poi/hssf/record/FormulaRecord.java | 2 +- src/java/org/apache/poi/hssf/record/RecordFactory.java | 7 ++----- .../org/apache/poi/hssf/record/RecordFormatException.java | 8 ++++++++ .../org/apache/poi/hssf/record/RecordInputStream.java | 2 +- src/java/org/apache/poi/hssf/record/formula/Ptg.java | 2 +- 7 files changed, 15 insertions(+), 12 deletions(-) diff --git a/src/java/org/apache/poi/hssf/dev/BiffViewer.java b/src/java/org/apache/poi/hssf/dev/BiffViewer.java index 29d75fb5f..df62f7c6d 100644 --- a/src/java/org/apache/poi/hssf/dev/BiffViewer.java +++ b/src/java/org/apache/poi/hssf/dev/BiffViewer.java @@ -111,7 +111,7 @@ public class BiffViewer { } activeRecord.dump(); } catch (IOException e) { - throw new RecordFormatException("Error reading bytes"); + throw new RecordFormatException("Error reading bytes", e); } Record[] retval = new Record[records.size()]; diff --git a/src/java/org/apache/poi/hssf/eventmodel/EventRecordFactory.java b/src/java/org/apache/poi/hssf/eventmodel/EventRecordFactory.java index 438107ac4..2532ad72f 100644 --- a/src/java/org/apache/poi/hssf/eventmodel/EventRecordFactory.java +++ b/src/java/org/apache/poi/hssf/eventmodel/EventRecordFactory.java @@ -332,9 +332,7 @@ public class EventRecordFactory } catch (Exception introspectionException) { - introspectionException.printStackTrace(); - throw new RecordFormatException( - "Unable to construct record instance, the following exception occured: " + introspectionException.getMessage()); + throw new RecordFormatException("Unable to construct record instance" , introspectionException); } if (retval instanceof RKRecord) { diff --git a/src/java/org/apache/poi/hssf/record/FormulaRecord.java b/src/java/org/apache/poi/hssf/record/FormulaRecord.java index a3b189d47..64f0525da 100644 --- a/src/java/org/apache/poi/hssf/record/FormulaRecord.java +++ b/src/java/org/apache/poi/hssf/record/FormulaRecord.java @@ -102,7 +102,7 @@ public class FormulaRecord field_7_expression_len = in.readShort(); field_8_parsed_expr = Ptg.createParsedExpressionTokens(field_7_expression_len, in); } catch (java.lang.UnsupportedOperationException uoe) { - throw new RecordFormatException(uoe.toString()); + throw new RecordFormatException(uoe); } } diff --git a/src/java/org/apache/poi/hssf/record/RecordFactory.java b/src/java/org/apache/poi/hssf/record/RecordFactory.java index f9c86a3ce..9f5901c05 100644 --- a/src/java/org/apache/poi/hssf/record/RecordFactory.java +++ b/src/java/org/apache/poi/hssf/record/RecordFactory.java @@ -222,9 +222,7 @@ public class RecordFactory } catch (Exception introspectionException) { - introspectionException.printStackTrace(); - throw new RecordFormatException( - "Unable to construct record instance, the following exception occured: " + introspectionException.getMessage()); + throw new RecordFormatException("Unable to construct record instance",introspectionException); } if (retval instanceof RKRecord) { @@ -316,9 +314,8 @@ public class RecordFactory } catch (Exception illegalArgumentException) { - illegalArgumentException.printStackTrace(); throw new RecordFormatException( - "Unable to determine record types"); + "Unable to determine record types", illegalArgumentException); } result.put(new Short(sid), constructor); } diff --git a/src/java/org/apache/poi/hssf/record/RecordFormatException.java b/src/java/org/apache/poi/hssf/record/RecordFormatException.java index f2050a3f8..d708f5eb0 100644 --- a/src/java/org/apache/poi/hssf/record/RecordFormatException.java +++ b/src/java/org/apache/poi/hssf/record/RecordFormatException.java @@ -30,4 +30,12 @@ public class RecordFormatException { super(exception); } + + public RecordFormatException(String exception, Throwable thr) { + super(exception, thr); + } + + public RecordFormatException(Throwable thr) { + super(thr); + } } diff --git a/src/java/org/apache/poi/hssf/record/RecordInputStream.java b/src/java/org/apache/poi/hssf/record/RecordInputStream.java index 00c9200d5..7bc3671fe 100755 --- a/src/java/org/apache/poi/hssf/record/RecordInputStream.java +++ b/src/java/org/apache/poi/hssf/record/RecordInputStream.java @@ -54,7 +54,7 @@ public class RecordInputStream extends InputStream //Dont increment the pos just yet (technically we are at the start of //the record stream until nextRecord is called). } catch (IOException ex) { - throw new RecordFormatException("Error reading bytes"); + throw new RecordFormatException("Error reading bytes", ex); } } diff --git a/src/java/org/apache/poi/hssf/record/formula/Ptg.java b/src/java/org/apache/poi/hssf/record/formula/Ptg.java index 4e7df5b86..5574076db 100644 --- a/src/java/org/apache/poi/hssf/record/formula/Ptg.java +++ b/src/java/org/apache/poi/hssf/record/formula/Ptg.java @@ -327,7 +327,7 @@ public abstract class Ptg default : //retval = new UnknownPtg(); - throw new java.lang.UnsupportedOperationException( + throw new java.lang.UnsupportedOperationException(" Unknown Ptg in Formula: 0x"+ Integer.toHexString(( int ) id) + " (" + ( int ) id + ")"); }