]> source.dussan.org Git - poi.git/commitdiff
try to use IllegalStateException instead of RuntimeException
authorPJ Fanning <fanningpj@apache.org>
Wed, 14 Sep 2022 01:12:38 +0000 (01:12 +0000)
committerPJ Fanning <fanningpj@apache.org>
Wed, 14 Sep 2022 01:12:38 +0000 (01:12 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1904050 13f79535-47bb-0310-9956-ffa450edef68

86 files changed:
poi-scratchpad/src/main/java/org/apache/poi/hemf/record/emfplus/HemfPlusImage.java
poi-scratchpad/src/main/java/org/apache/poi/hemf/record/emfplus/HemfPlusPen.java
poi/src/main/java/org/apache/poi/common/usermodel/fonts/FontHeader.java
poi/src/main/java/org/apache/poi/ddf/EscherChildAnchorRecord.java
poi/src/main/java/org/apache/poi/ddf/EscherMetafileBlip.java
poi/src/main/java/org/apache/poi/hpsf/VariantSupport.java
poi/src/main/java/org/apache/poi/hssf/extractor/EventBasedExcelExtractor.java
poi/src/main/java/org/apache/poi/hssf/extractor/ExcelExtractor.java
poi/src/main/java/org/apache/poi/hssf/model/InternalWorkbook.java
poi/src/main/java/org/apache/poi/hssf/model/LinkTable.java
poi/src/main/java/org/apache/poi/hssf/record/EmbeddedObjectRefSubRecord.java
poi/src/main/java/org/apache/poi/hssf/record/EscherAggregate.java
poi/src/main/java/org/apache/poi/hssf/record/SharedFormulaRecord.java
poi/src/main/java/org/apache/poi/hssf/record/SubRecord.java
poi/src/main/java/org/apache/poi/hssf/record/aggregates/ColumnInfoRecordsAggregate.java
poi/src/main/java/org/apache/poi/hssf/record/aggregates/ValueRecordsAggregate.java
poi/src/main/java/org/apache/poi/hssf/record/crypto/Biff8DecryptingStream.java
poi/src/main/java/org/apache/poi/hssf/usermodel/DVConstraint.java
poi/src/main/java/org/apache/poi/hssf/usermodel/FontDetails.java
poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFCell.java
poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFFormulaEvaluator.java
poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFPalette.java
poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFRow.java
poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFSheet.java
poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java
poi/src/main/java/org/apache/poi/hssf/usermodel/StaticFontMetrics.java
poi/src/main/java/org/apache/poi/poifs/crypt/ChunkedCipherInputStream.java
poi/src/main/java/org/apache/poi/poifs/filesystem/DirectoryNode.java
poi/src/main/java/org/apache/poi/poifs/filesystem/EntryUtils.java
poi/src/main/java/org/apache/poi/poifs/filesystem/POIFSFileSystem.java
poi/src/main/java/org/apache/poi/poifs/filesystem/POIFSStream.java
poi/src/main/java/org/apache/poi/poifs/filesystem/TempFilePOIFSFileSystem.java
poi/src/main/java/org/apache/poi/sl/draw/SLGraphics.java
poi/src/main/java/org/apache/poi/sl/draw/geom/PresetGeometries.java
poi/src/main/java/org/apache/poi/ss/format/SimpleFraction.java
poi/src/main/java/org/apache/poi/ss/formula/CollaboratingWorkbooksEnvironment.java
poi/src/main/java/org/apache/poi/ss/formula/FormulaParser.java
poi/src/main/java/org/apache/poi/ss/formula/FormulaRenderer.java
poi/src/main/java/org/apache/poi/ss/formula/OperandClassTransformer.java
poi/src/main/java/org/apache/poi/ss/formula/OperationEvaluationContext.java
poi/src/main/java/org/apache/poi/ss/formula/OperationEvaluatorFactory.java
poi/src/main/java/org/apache/poi/ss/formula/SheetNameFormatter.java
poi/src/main/java/org/apache/poi/ss/formula/UserDefinedFunction.java
poi/src/main/java/org/apache/poi/ss/formula/WorkbookEvaluator.java
poi/src/main/java/org/apache/poi/ss/formula/atp/YearFracCalculator.java
poi/src/main/java/org/apache/poi/ss/formula/eval/ErrorEval.java
poi/src/main/java/org/apache/poi/ss/formula/eval/OperandResolver.java
poi/src/main/java/org/apache/poi/ss/formula/eval/forked/ForkedEvaluationCell.java
poi/src/main/java/org/apache/poi/ss/formula/eval/forked/ForkedEvaluationWorkbook.java
poi/src/main/java/org/apache/poi/ss/formula/function/FunctionDataBuilder.java
poi/src/main/java/org/apache/poi/ss/formula/function/FunctionMetadataReader.java
poi/src/main/java/org/apache/poi/ss/formula/functions/ArrayFunctionUtils.java
poi/src/main/java/org/apache/poi/ss/formula/functions/Countif.java
poi/src/main/java/org/apache/poi/ss/formula/functions/Index.java
poi/src/main/java/org/apache/poi/ss/formula/functions/Lookup.java
poi/src/main/java/org/apache/poi/ss/formula/functions/LookupUtils.java
poi/src/main/java/org/apache/poi/ss/formula/functions/Match.java
poi/src/main/java/org/apache/poi/ss/formula/functions/Mode.java
poi/src/main/java/org/apache/poi/ss/formula/functions/MultiOperandNumericFunction.java
poi/src/main/java/org/apache/poi/ss/formula/functions/Offset.java
poi/src/main/java/org/apache/poi/ss/formula/functions/Sumproduct.java
poi/src/main/java/org/apache/poi/ss/formula/functions/Trend.java
poi/src/main/java/org/apache/poi/ss/formula/ptg/AbstractFunctionPtg.java
poi/src/main/java/org/apache/poi/ss/formula/ptg/Area3DPtg.java
poi/src/main/java/org/apache/poi/ss/formula/ptg/ArrayPtg.java
poi/src/main/java/org/apache/poi/ss/formula/ptg/DeletedArea3DPtg.java
poi/src/main/java/org/apache/poi/ss/formula/ptg/DeletedRef3DPtg.java
poi/src/main/java/org/apache/poi/ss/formula/ptg/ErrPtg.java
poi/src/main/java/org/apache/poi/ss/formula/ptg/ExpPtg.java
poi/src/main/java/org/apache/poi/ss/formula/ptg/FuncPtg.java
poi/src/main/java/org/apache/poi/ss/formula/ptg/NamePtg.java
poi/src/main/java/org/apache/poi/ss/formula/ptg/NameXPtg.java
poi/src/main/java/org/apache/poi/ss/formula/ptg/Ref3DPtg.java
poi/src/main/java/org/apache/poi/ss/formula/ptg/TblPtg.java
poi/src/main/java/org/apache/poi/ss/formula/ptg/ValueOperatorPtg.java
poi/src/main/java/org/apache/poi/ss/usermodel/DataFormatter.java
poi/src/main/java/org/apache/poi/ss/util/AreaReference.java
poi/src/main/java/org/apache/poi/ss/util/CellRangeAddressList.java
poi/src/main/java/org/apache/poi/ss/util/CellRangeUtil.java
poi/src/main/java/org/apache/poi/ss/util/NumberToTextConverter.java
poi/src/main/java/org/apache/poi/util/HexRead.java
poi/src/main/java/org/apache/poi/util/IOUtils.java
poi/src/main/java/org/apache/poi/util/LittleEndianByteArrayOutputStream.java
poi/src/main/java/org/apache/poi/util/LittleEndianInputStream.java
poi/src/main/java/org/apache/poi/util/LittleEndianOutputStream.java
poi/src/main/java/org/apache/poi/util/XMLHelper.java

index e764e78a1e9f22e3d350cb69f602dbf47198be59..6afb53cdd36a5c0222a701d5d1c9b39dad359b4b 100644 (file)
@@ -447,6 +447,11 @@ public class HemfPlusImage {
             return new Rectangle2D.Double(1,1,1,1);
         }
 
+        /**
+         * @param continuedObjectData list of object data
+         * @return byte array
+         * @throws IllegalStateException if the data cannot be read
+         */
         public byte[] getRawData(List<? extends EmfPlusObjectData> continuedObjectData) {
             try (UnsynchronizedByteArrayOutputStream bos = new UnsynchronizedByteArrayOutputStream()) {
                 bos.write(getImageData());
@@ -457,7 +462,7 @@ public class HemfPlusImage {
                 }
                 return bos.toByteArray();
             } catch (IOException e) {
-                throw new RuntimeException(e);
+                throw new IllegalStateException(e);
             }
         }
 
@@ -491,7 +496,7 @@ public class HemfPlusImage {
 
         private HemfPlusGDIImageRenderer getGDIRenderer() {
             if (getImageDataType() != EmfPlusImageDataType.BITMAP || getBitmapType() != EmfPlusBitmapDataType.PIXEL) {
-                throw new RuntimeException("image data is not a GDI image");
+                throw new IllegalStateException("image data is not a GDI image");
             }
             HemfPlusGDIImageRenderer renderer = new HemfPlusGDIImageRenderer();
             renderer.setWidth(getBitmapWidth());
index 42dd6e44e6fcb2123cc925b71b6e88d09b2637b4..2f6085f3915908c3073bba842425535e418d3d70 100644 (file)
@@ -474,7 +474,7 @@ public class HemfPlusPen {
                 // A 32-bit unsigned integer that specifies the number of elements in the DashedLineData field.
                 int dashesSize = leis.readInt();
                 if (dashesSize < 0 || dashesSize > 1000) {
-                    throw new RuntimeException("Invalid dash data size");
+                    throw new IllegalStateException("Invalid dash data size");
                 }
 
                 // An array of DashedLineDataSize floating-point values that specify the lengths of the dashes and spaces in a dashed line.
@@ -499,7 +499,7 @@ public class HemfPlusPen {
                 // A 32-bit unsigned integer that specifies the number of elements in the CompoundLineData field.
                 int compoundSize = leis.readInt();
                 if (compoundSize < 0 || compoundSize > 1000) {
-                    throw new RuntimeException("Invalid compound line data size");
+                    throw new IllegalStateException("Invalid compound line data size");
                 }
 
                 // An array of CompoundLineDataSize floating-point values that specify the compound line of a pen.
index 2589b16f17d8414128a454ea10f8b74e2a852241..5c85980a962bb36e447a24c76e307a11786b80a7 100644 (file)
@@ -149,7 +149,7 @@ public class FontHeader implements FontInfo, GenericRecord {
         fontDataSize = leis.readInt();
         version = leis.readInt();
         if (version != 0x00010000 && version != 0x00020001 && version != 0x00020002) {
-            throw new RuntimeException("not a EOT font data stream");
+            throw new IllegalStateException("not a EOT font data stream");
         }
         flags = leis.readInt();
         leis.readFully(panose);
@@ -159,7 +159,7 @@ public class FontHeader implements FontInfo, GenericRecord {
         fsType = leis.readUShort();
         magic = leis.readUShort();
         if (magic != 0x504C) {
-            throw new RuntimeException("not a EOT font data stream");
+            throw new IllegalStateException("not a EOT font data stream");
         }
         unicodeRange1 = leis.readInt();
         unicodeRange2 = leis.readInt();
index bf15c83047d199d0cae396874e319a34209cc563..f5df8f2e66417c1d03195d4753a2d6b9948c7d77 100644 (file)
@@ -69,7 +69,7 @@ public class EscherChildAnchorRecord extends EscherRecord {
             field_4_dy2 =  LittleEndian.getShort( data, pos + size );size+=2;
             break;
         default:
-            throw new RuntimeException("Invalid EscherChildAnchorRecord - neither 8 nor 16 bytes.");
+            throw new IllegalStateException("Invalid EscherChildAnchorRecord - neither 8 nor 16 bytes.");
         }
 
         return 8 + size;
index 8feafedcc1fc09d77b5f6528901128ef2966dd87..d5dceb43fc1d33d635ea9c3f59d1e187a7b436ef 100644 (file)
@@ -416,7 +416,7 @@ public final class EscherMetafileBlip extends EscherBlipRecord {
             }
             raw_pictureData = bos.toByteArray();
         } catch (IOException e) {
-            throw new RuntimeException("Can't compress metafile picture data", e);
+            throw new IllegalStateException("Can't compress metafile picture data", e);
         }
 
         setCompressedSize(raw_pictureData.length);
index 71da6ad2daa24a23ae515ef2c39844049509231d..f6da239c8b8a67ba04e0b982f99e74dfa9473415 100644 (file)
@@ -177,7 +177,7 @@ public class VariantSupport extends Variant {
                 final byte[] v = IOUtils.toByteArray(lei, length, CodePageString.getMaxRecordLength());
                 throw new ReadingNotSupportedException( type, v );
             } catch (IOException e) {
-                throw new RuntimeException(e);
+                throw new IllegalStateException(e);
             }
         }
 
index a3239def70cf0ff55e57fb93c97a503d330a3a0e..f9af178a5a7daa9f364a80a6c7867513f78942ca 100644 (file)
@@ -140,7 +140,7 @@ public class EventBasedExcelExtractor implements POIOLE2TextExtractor, org.apach
                text = text + "\n";
            }
        } catch(IOException e) {
-           throw new RuntimeException(e);
+           throw new IllegalStateException(e);
        }
 
        return text;
index 9f8664c503714d0b1243021f9f6c62af18c331d8..8b684f2d32dde7528b77911f587fd3bdbd5c6e6a 100644 (file)
@@ -360,7 +360,7 @@ public class ExcelExtractor implements POIOLE2TextExtractor, org.apache.poi.ss.e
                                 }
                                 break;
                             default:
-                                throw new RuntimeException("Unexpected cell type (" + cell.getCellType() + ")");
+                                throw new IllegalStateException("Unexpected cell type (" + cell.getCellType() + ")");
                         }
 
                         // Output the comment, if requested and exists
index 82a383841431e05e76c6de562d1eeb8780fe9d71..7ca3b143ee1f44ec75a98e6a4b009e2c4d12ec69 100644 (file)
@@ -723,7 +723,7 @@ public final class InternalWorkbook {
     private void checkSheets(int sheetnum) {
         if ((boundsheets.size()) <= sheetnum) {   // if we're short one add another..
             if ((boundsheets.size() + 1) <= sheetnum) {
-                throw new RuntimeException("Sheet number out of bounds!");
+                throw new IllegalStateException("Sheet number out of bounds!");
             }
             BoundSheetRecord bsr = createBoundSheet(sheetnum);
 
@@ -1640,7 +1640,7 @@ public final class InternalWorkbook {
         NameRecord name = new NameRecord(builtInName, sheetNumber);
 
         if(linkTable.nameAlreadyExists(name)) {
-            throw new RuntimeException("Builtin (" + builtInName
+            throw new IllegalStateException("Builtin (" + builtInName
                     + ") already exists for sheet (" + sheetNumber + ")");
         }
         addName(name);
@@ -1813,7 +1813,7 @@ public final class InternalWorkbook {
             if (rec instanceof PaletteRecord) {
                 palette = (PaletteRecord) rec;
             } else {
-                throw new RuntimeException("InternalError: Expected PaletteRecord but got a '"+rec+"'");
+                throw new IllegalStateException("InternalError: Expected PaletteRecord but got a '"+rec+"'");
             }
         } else {
             palette = createPalette();
index 25f4aff843b5a86ed23799ebbddb165e4695d694..e0c5b1ad6e84447d6366a491d43710b7092c4fc3 100644 (file)
@@ -243,7 +243,7 @@ final class LinkTable {
 
         int nItems = temp.size();
         if (nItems < 1) {
-            throw new RuntimeException("Expected an EXTERNSHEET record but got ("
+            throw new IllegalStateException("Expected an EXTERNSHEET record but got ("
                     + rs.peekNextClass().getName() + ")");
         }
         if (nItems == 1) {
@@ -274,7 +274,7 @@ final class LinkTable {
         if (idx < 0) {
             idx = findFirstRecordLocBySid(SSTRecord.sid) - 1;
             if (idx < 0) {
-                throw new RuntimeException("CountryRecord or SSTRecord not found");
+                throw new IllegalStateException("CountryRecord or SSTRecord not found");
             }
         }
         _workbookRecordList.add(idx + 1, _externSheetRecord);
@@ -443,7 +443,7 @@ final class LinkTable {
     public int getExternalSheetIndex(String workbookName, String firstSheetName, String lastSheetName) {
         int externalBookIndex = getExternalWorkbookIndex(workbookName);
         if (externalBookIndex == -1) {
-            throw new RuntimeException("No external workbook with name '" + workbookName + "'");
+            throw new IllegalStateException("No external workbook with name '" + workbookName + "'");
         }
         SupBookRecord ebrTarget = _externalBookBlocks[externalBookIndex].getExternalBookRecord();
 
@@ -465,7 +465,7 @@ final class LinkTable {
             }
 
         }
-        throw new RuntimeException("External workbook does not contain sheet '" + sheetName + "'");
+        throw new IllegalStateException("External workbook does not contain sheet '" + sheetName + "'");
     }
 
     /**
@@ -508,10 +508,10 @@ final class LinkTable {
             }
         }
         if (thisWbIndex < 0) {
-            throw new RuntimeException("Could not find 'internal references' EXTERNALBOOK");
+            throw new IllegalStateException("Could not find 'internal references' EXTERNALBOOK");
         }
         if (_externSheetRecord == null) {
-            throw new RuntimeException("Did not have an external sheet record, having blocks: " +
+            throw new IllegalStateException("Did not have an external sheet record, having blocks: " +
                     _externalBookBlocks.length);
         }
 
@@ -543,7 +543,7 @@ final class LinkTable {
         int firstTabIndex = _externSheetRecord.getFirstSheetIndexFromRefIndex(refIndex);
         if (firstTabIndex == -1) {
             // The referenced sheet could not be found
-            throw new RuntimeException("Referenced sheet could not be found");
+            throw new IllegalStateException("Referenced sheet could not be found");
         }
 
         // Does it exist via the external book block?
index 07e801175b6c302f45e4712ec9b2f9a16d92019e..ec1dce3ffb469055fa29c5a6a9eaa18fbf997610 100644 (file)
@@ -190,7 +190,7 @@ public final class EmbeddedObjectRefSubRecord extends SubRecord {
             }
             return null;
         } catch (IOException e) {
-            throw new RuntimeException("Unexpected exception in readRefPtg", e);
+            throw new IllegalStateException("Unexpected exception in readRefPtg", e);
         }
     }
 
index 53e836dc007087fda56a0467ee612104e1b506cc..717b866c85b8616b48696349d2346f1996257e78 100644 (file)
@@ -1040,7 +1040,7 @@ public final class EscherAggregate extends AbstractEscherHolderRecord {
             try {
                 buffer.write(data);
             } catch (IOException e) {
-                throw new RuntimeException("Couldn't get data from drawing/continue records", e);
+                throw new IllegalStateException("Couldn't get data from drawing/continue records", e);
             }
         }
 
index c6a3b986c5e7d01a4ada2d44b444b9a1dcbce4ea..d901e7d4929dbe00c98dc8a6665b66d8b77de37b 100644 (file)
@@ -95,7 +95,7 @@ public final class SharedFormulaRecord extends SharedValueRecordBase {
         int formulaColumn = formula.getColumn();
         //Sanity checks
         if (!isInRange(formulaRow, formulaColumn)) {
-            throw new RuntimeException("Shared Formula Conversion: Coding Error");
+            throw new IllegalStateException("Shared Formula Conversion: Coding Error");
         }
 
         SharedFormula sf = new SharedFormula(SpreadsheetVersion.EXCEL97);
index 246d6cc62ed78f9370783245c4ef27c58e02eaeb..0c18b2b2ec7d950e6c2ae618c5e10ea325abf710 100644 (file)
@@ -139,7 +139,7 @@ public abstract class SubRecord implements Duplicatable, GenericRecord {
         UnsynchronizedByteArrayOutputStream baos = new UnsynchronizedByteArrayOutputStream(size);
         serialize(new LittleEndianOutputStream(baos));
         if (baos.size() != size) {
-            throw new RuntimeException("write size mismatch");
+            throw new IllegalStateException("write size mismatch");
         }
         return baos.toByteArray();
     }
index b6dd6688cdc1dc804f757812dab2ff523ad9ce93..99a9957574ddeec437b316e4a29266e45689ea46 100644 (file)
@@ -53,7 +53,7 @@ public final class ColumnInfoRecordsAggregate extends RecordAggregate implements
             cirPrev = cir;
         }
         if (records.size() < 1) {
-            throw new RuntimeException("No column info records found");
+            throw new IllegalStateException("No column info records found");
         }
         if (!isInOrder) {
             records.sort(ColumnInfoRecordsAggregate::compareColInfos);
@@ -97,7 +97,7 @@ public final class ColumnInfoRecordsAggregate extends RecordAggregate implements
             if (cirPrev != null && compareColInfos(cirPrev, cir) > 0) {
                 // Excel probably wouldn't mind, but there is much logic in this class
                 // that assumes the column info records are kept in order
-                throw new RuntimeException("Column info records are out of order");
+                throw new IllegalStateException("Column info records are out of order");
             }
             cirPrev = cir;
         }
index 185a484969a762a90655ecdc5e34cc343e9b468a..3407d571c2b80db8fad1ea03e832a8473189f3e3 100644 (file)
@@ -101,15 +101,15 @@ public final class ValueRecordsAggregate implements Iterable<CellValueRecordInte
         }
         int row = cell.getRow();
         if (row >= records.length) {
-            throw new RuntimeException("cell row is out of range");
+            throw new IllegalStateException("cell row is out of range");
         }
         CellValueRecordInterface[] rowCells = records[row];
         if (rowCells == null) {
-            throw new RuntimeException("cell row is already empty");
+            throw new IllegalStateException("cell row is already empty");
         }
         short column = cell.getColumn();
         if (column >= rowCells.length) {
-            throw new RuntimeException("cell column is out of range");
+            throw new IllegalStateException("cell column is out of range");
         }
         rowCells[column] = null;
     }
index 74699d1bb11239cf8daa66009bfd391421d99080..63ed8e1fad23435d343bf947a889c0a5830faf5c 100644 (file)
@@ -99,7 +99,7 @@ public final class Biff8DecryptingStream implements BiffHeaderInput, LittleEndia
         double result = Double.longBitsToDouble(valueLongBits);
         if (Double.isNaN(result)) {
             // (Because Excel typically doesn't write NaN
-            throw new RuntimeException("Did not expect to read NaN");
+            throw new IllegalStateException("Did not expect to read NaN");
         }
         return result;
     }
index 1c53ba204390622cffb7c0ed0979feb199ddede3..475264a559d902b7dc2fcbac8e783715070e6e11 100644 (file)
@@ -231,7 +231,7 @@ public class DVConstraint implements DataValidationConstraint {
         try {
             return Double.valueOf(numberStr);
         } catch (NumberFormatException e) {
-            throw new RuntimeException("The supplied text '" + numberStr
+            throw new IllegalStateException("The supplied text '" + numberStr
                     + "' could not be parsed as a number");
         }
     }
@@ -260,7 +260,7 @@ public class DVConstraint implements DataValidationConstraint {
             try {
                 dateVal = dateFormat.parse(dateStr);
             } catch (ParseException e) {
-                throw new RuntimeException("Failed to parse date '" + dateStr
+                throw new IllegalStateException("Failed to parse date '" + dateStr
                         + "' using specified format '" + dateFormat + "'", e);
             }
         }
@@ -323,7 +323,7 @@ public class DVConstraint implements DataValidationConstraint {
     @Override
     public void setExplicitListValues(String[] explicitListValues) {
         if (_validationType != ValidationType.LIST) {
-            throw new RuntimeException("Cannot setExplicitListValues on non-list constraint");
+            throw new IllegalStateException("Cannot setExplicitListValues on non-list constraint");
         }
         _formula1 = null;
         _explicitListValues = explicitListValues;
index d9fc1d54c23edb5707c38cab4e7bb40b25634b45..f793c49c79e1ee14be6da808209c6c26d36edd8f 100644 (file)
@@ -116,7 +116,7 @@ public class FontDetails
         String[] charactersStrArray = split(charactersStr, ",", -1);
         String[] widthsStrArray = split(widthsStr, ",", -1);
         if (charactersStrArray.length != widthsStrArray.length)
-            throw new RuntimeException("Number of characters does not number of widths for font " + fontName);
+            throw new IllegalStateException("Number of characters does not number of widths for font " + fontName);
         for ( int i = 0; i < widthsStrArray.length; i++ )
         {
             if (charactersStrArray[i].length() != 0)
index 8fec6a00a1bac9f649affb0ce4fea2878769c9c8..d11372079ba941590b3c462e974c9bca04f61157 100644 (file)
@@ -219,7 +219,7 @@ public class HSSFCell extends CellBase {
                          ? CellType.BOOLEAN
                          : CellType.ERROR;
         }
-        throw new RuntimeException("Bad cell value rec (" + cval.getClass().getName() + ")");
+        throw new IllegalStateException("Bad cell value rec (" + cval.getClass().getName() + ")");
     }
 
     /**
index b64a5018668beb752b41f049c831eb97ced004fa..a0aafd7d5c6ec353b58924ccd5c6ca34da134352 100644 (file)
@@ -214,7 +214,7 @@ public class HSSFFormulaEvaluator extends BaseFormulaEvaluator {
         if (eval instanceof ErrorEval) {
             return CellValue.getError(((ErrorEval)eval).getErrorCode());
         }
-        throw new RuntimeException("Unexpected eval class (" + eval.getClass().getName() + ")");
+        throw new IllegalStateException("Unexpected eval class (" + eval.getClass().getName() + ")");
     }
 
     @Override
index 61ca511c2e7ea932b75105865fee26dda9a934e2..d2fa999d4f8cbf7b26921cdc7a9606394a0d1084 100644 (file)
@@ -173,7 +173,7 @@ public final class HSSFPalette {
                 return getColor(i);
             }
         }
-        throw new RuntimeException("Could not find free color index");
+        throw new IllegalStateException("Could not find free color index");
     }
 
     private static final class CustomColor extends HSSFColor {
index 9220c14157f93c8ae0a42b6826a163ce9c0cc0d4..a64840eed2d02efd030df0825b4626961ebefbea 100644 (file)
@@ -171,10 +171,10 @@ public final class HSSFRow implements Row, Comparable<HSSFRow> {
 
         int column=cell.getColumnIndex();
         if(column < 0) {
-            throw new RuntimeException("Negative cell indexes not allowed");
+            throw new IllegalStateException("Negative cell indexes not allowed");
         }
         if(column >= cells.length || cell != cells[column]) {
-            throw new RuntimeException("Specified cell is not from this row");
+            throw new IllegalStateException("Specified cell is not from this row");
         }
         if(cell.isPartOfArrayFormulaGroup()){
             cell.tryToDeleteArrayFormula(null);
index 4a48d6fc215b6b157ecd2a9a0c71d9eef1d7d9a9..c8e3c9bad3de997529a4cdcf6e7a643519298ae1 100644 (file)
@@ -227,7 +227,7 @@ public final class HSSFSheet implements Sheet {
                     // Excel, OpenOffice.org and GoogleDocs are all OK with this, so POI should be too.
                     if (rowRecordsAlreadyPresent) {
                         // if at least one row record is present, all should be present.
-                        throw new RuntimeException("Unexpected missing row when some rows already present");
+                        throw new IllegalStateException("Unexpected missing row when some rows already present");
                     }*/
 
                     // create the row record on the fly now.
index 82877661d7caf29e73b062aba8d1cc3c47ba75d6..cef0edaa3761e480d207d6e5ed5a0d6572016a95 100644 (file)
@@ -1156,7 +1156,7 @@ public final class HSSFWorkbook extends POIDocument implements Workbook {
         for (int defNameIndex = 0; defNameIndex < names.size(); defNameIndex++) {
             NameRecord r = workbook.getNameRecord(defNameIndex);
             if (r == null) {
-                throw new RuntimeException("Unable to find all defined names to iterate over");
+                throw new IllegalStateException("Unable to find all defined names to iterate over");
             }
             if (!r.isBuiltInName() || r.getBuiltInName() != builtinCode) {
                 continue;
index 6bf3b6ca8746c078940c98e71cf41b18415d57c7..2ccb1135ba4861e4fa1bb16cea705aa4b8b14123 100644 (file)
@@ -59,7 +59,7 @@ final class StaticFontMetrics {
             try {
                 fontMetricsProps = loadMetrics();
             } catch (IOException e) {
-                throw new RuntimeException("Could not load font metrics", e);
+                throw new IllegalStateException("Could not load font metrics", e);
             }
         }
 
index ea3159c9113167c384b386f5bad07cd2366654b9..ef1622c40f014febb4dcc8670e3b46cf606631f5 100644 (file)
@@ -236,7 +236,7 @@ public abstract class ChunkedCipherInputStream extends LittleEndianInputStream {
             }
         } catch (IOException e) {
             // need to wrap checked exception, because of LittleEndianInput interface :(
-            throw new RuntimeException(e);
+            throw new IllegalStateException(e);
         }
     }
 
index cd3a1bc134b97462928cb094c40ebd16d5001d1a..54fab5f4987b5b2c56ee70476f67aa4bf06465f4 100644 (file)
@@ -232,7 +232,7 @@ public class DirectoryNode
                 _filesystem.remove(entry);
             } catch (IOException e) {
                 // TODO Work out how to report this, given we can't change the method signature...
-                throw new RuntimeException(e);
+                throw new IllegalStateException(e);
             }
         }
         return rval;
index b6a24873c33afc8b52ca135025cfb5f17298fb07..7c60176fccec94b2862164743bf365e39145080b 100644 (file)
@@ -238,7 +238,7 @@ public final class EntryUtils {
                     return isEqual(inpA, inpB);
                 }
             } catch (NoPropertySetStreamException | IOException ex) {
-                throw new RuntimeException(ex);
+                throw new IllegalStateException(ex);
             }
         }
 
index 8bb572e3122250551f33786d0166271394565403..727030bf15b0f5171419bea51ef3cb73e81ccded 100644 (file)
@@ -370,7 +370,7 @@ public class POIFSFileSystem extends BlockStore
             stream.close();
         } catch (IOException e) {
             if (success) {
-                throw new RuntimeException(e);
+                throw new IllegalStateException(e);
             }
             // else not success? Try block did not complete normally
             // just print stack trace and leave original ex to be thrown
index f34d4da6abf838dd1df1e7c42e479f5cf6b45bd2..43d6b3b32c56623141014c820a1fe7e0c88251cc 100644 (file)
@@ -158,7 +158,7 @@ public class POIFSStream implements Iterable<ByteBuffer>
             try {
                 this.loopDetector = blockStore.getChainLoopDetector();
             } catch (IOException e) {
-                throw new RuntimeException(e);
+                throw new IllegalStateException(e);
             }
         }
 
@@ -194,7 +194,7 @@ public class POIFSStream implements Iterable<ByteBuffer>
             try {
                 this.loopDetector = blockStore.getChainLoopDetector();
             } catch(IOException e) {
-                throw new RuntimeException(e);
+                throw new IllegalStateException(e);
             }
         }
 
@@ -213,7 +213,7 @@ public class POIFSStream implements Iterable<ByteBuffer>
                 nextBlock = blockStore.getNextBlock(nextBlock);
                 return data;
             } catch(IOException e) {
-                throw new RuntimeException(e);
+                throw new IllegalStateException(e);
             }
         }
 
index 51c453faf861e8b30722fb36362dc1cc9b353d65..175884c5f8c7087f7b28b53eff4057833e9407e5 100644 (file)
@@ -41,7 +41,7 @@ public class TempFilePOIFSFileSystem extends POIFSFileSystem {
             tempFile = TempFile.createTempFile("poifs", ".tmp");
             _data = new FileBackedDataSource(tempFile, false);
         } catch (IOException e) {
-            throw new RuntimeException("Failed to create data source", e);
+            throw new IllegalStateException("Failed to create data source", e);
         }
     }
 
index 9d0398e5850ebfcf825ba565cc79945033de0492..fe7afec9eb4941d86ecc2a437f015ab17d2380f7 100644 (file)
@@ -1659,7 +1659,7 @@ public class SLGraphics extends Graphics2D implements Cloneable {
         try {
             return (Graphics)clone();
         } catch (CloneNotSupportedException e){
-            throw new RuntimeException(e);
+            throw new IllegalStateException(e);
         }
     }
 
index 0f5a4902747ea8c21b42286e1cfff79c62e71e59..58ef4ee870f9eff272e2869b3f1884988619f96b 100644 (file)
@@ -59,7 +59,7 @@ public final class PresetGeometries {
                 }
             }
         } catch (IOException | XMLStreamException e){
-            throw new RuntimeException(e);
+            throw new IllegalStateException(e);
         }
     }
 
index f781cd71f7cccd625025637574c50b54ca18d405..41f1d07fea41f756b80c53a2c3800e3194033436 100644 (file)
@@ -110,7 +110,7 @@ public class SimpleFraction {
                 return new SimpleFraction((int)p1, (int)q1);
             }
             if ((p2 > overflow) || (q2 > overflow)) {
-                throw new RuntimeException("Overflow trying to convert "+value+" to fraction ("+p2+"/"+q2+")");
+                throw new IllegalStateException("Overflow trying to convert "+value+" to fraction ("+p2+"/"+q2+")");
             }
 
             double convergent = (double)p2 / (double)q2;
@@ -127,7 +127,7 @@ public class SimpleFraction {
         } while (!stop);
 
         if (n >= maxIterations) {
-            throw new RuntimeException("Unable to convert "+value+" to fraction after "+maxIterations+" iterations");
+            throw new IllegalStateException("Unable to convert "+value+" to fraction after "+maxIterations+" iterations");
         }
 
         if (q2 < maxDenominator) {
index 1e2387b4ce1e3f6196805ce3145941171b441e78..446149b113c96cb173b5917e807a9bd5e6af8459 100644 (file)
@@ -130,7 +130,7 @@ public final class CollaboratingWorkbooksEnvironment {
         for (WorkbookEvaluator evaluator : evaluators) {
             if (evalListener != evaluator.getEvaluationListener()) {
                 // This would be very complex to support
-                throw new RuntimeException("Workbook evaluators must all have the same evaluation listener");
+                throw new IllegalStateException("Workbook evaluators must all have the same evaluation listener");
             }
         }
         EvaluationCache cache = new EvaluationCache(evalListener);
index 61993d676b1453465f2df573f0e24c37572dcc46..f824ca49dac9c34f7210361195a4173c2c798f29 100644 (file)
@@ -214,10 +214,10 @@ public final class FormulaParser {
     }
 
     /** Read New Character From Input Stream */
-    private void GetChar() {
+    private void nextChar() {
         // The intersection operator is a space.  We track whether the run of
         // whitespace preceding "look" counts as an intersection operator.
-        if (IsWhite(look)) {
+        if (isWhite(look)) {
             if (look == ' ') {
                 _inIntersection = true;
             }
@@ -228,7 +228,7 @@ public final class FormulaParser {
 
         // Check to see if we've walked off the end of the string.
         if (_pointer > _formulaLength) {
-            throw new RuntimeException("Parsed past the end of the formula, pos: " + _pointer +
+            throw new IllegalStateException("Parsed past the end of the formula, pos: " + _pointer +
                     ", length: " + _formulaLength + ", formula: " + _formulaString);
         }
         if (_pointer < _formulaLength) {
@@ -275,24 +275,24 @@ public final class FormulaParser {
     }
 
     /** Recognize an Alpha Character */
-    private static boolean IsAlpha(int c) {
+    private static boolean isAlpha(int c) {
         return Character.isLetter(c) || c == '$' || c=='_';
     }
 
     /** Recognize a Decimal Digit */
-    private static boolean IsDigit(int c) {
+    private static boolean isDigit(int c) {
         return Character.isDigit(c);
     }
 
     /** Recognize White Space */
-    private static boolean IsWhite(int c) {
+    private static boolean isWhite(int c) {
         return  c ==' ' || c== TAB || c == CR || c == LF;
     }
 
     /** Skip Over Leading White Space */
-    private void SkipWhite() {
-        while (IsWhite(look)) {
-            GetChar();
+    private void skipWhite() {
+        while (isWhite(look)) {
+            nextChar();
         }
     }
 
@@ -301,7 +301,7 @@ public final class FormulaParser {
      *  unchecked exception. This method does <b>not</b> consume whitespace (before or after the
      *  matched character).
      */
-    private void Match(int x) {
+    private void match(int x) {
         if (look != x) {
             throw expected(new StringBuilder()
                     .append("'")
@@ -309,16 +309,16 @@ public final class FormulaParser {
                     .append("'")
                     .toString());
         }
-        GetChar();
+        nextChar();
     }
 
     /** Get a Number */
-    private String GetNum() {
+    private String nextNum() {
         StringBuilder value = new StringBuilder();
 
-        while (IsDigit(this.look)){
+        while (isDigit(this.look)){
             value.appendCodePoint(this.look);
-            GetChar();
+            nextChar();
         }
         return value.length() == 0 ? null : value.toString();
     }
@@ -328,7 +328,7 @@ public final class FormulaParser {
         boolean hasRange = false;
         while (look == ':') {
             int pos = _pointer;
-            GetChar();
+            nextChar();
             ParseNode nextPart = parseRangeable();
             // Note - no range simplification here. An expr like "A1:B2:C3:D4:E5" should be
             // grouped into area ref pairs like: "(A1:B2):(C3:D4):E5"
@@ -464,14 +464,14 @@ public final class FormulaParser {
      *
      */
     private ParseNode parseRangeable() {
-        SkipWhite();
+        skipWhite();
         int savePointer = _pointer;
         SheetIdentifier sheetIden = parseSheetName(false);
 
         if (sheetIden == null) {
             resetPointer(savePointer);
         } else {
-            SkipWhite();
+            skipWhite();
             savePointer = _pointer;
         }
 
@@ -497,15 +497,15 @@ public final class FormulaParser {
             }
             return parseNonRange(savePointer);
         }
-        boolean whiteAfterPart1 = IsWhite(look);
+        boolean whiteAfterPart1 = isWhite(look);
         if (whiteAfterPart1) {
-            SkipWhite();
+            skipWhite();
         }
 
         if (look == ':') {
             int colonPos = _pointer;
-            GetChar();
-            SkipWhite();
+            nextChar();
+            skipWhite();
             SimpleRangePart part2 = parseSimpleRangePart();
             if (part2 != null && !part1.isCompatibleForArea(part2)) {
                 // second part is not compatible with an area ref e.g. S!A1:S!B2
@@ -529,15 +529,15 @@ public final class FormulaParser {
         }
 
         if (look == '.') {
-            GetChar();
+            nextChar();
             int dotCount = 1;
             while (look =='.') {
                 dotCount ++;
-                GetChar();
+                nextChar();
             }
-            boolean whiteBeforePart2 = IsWhite(look);
+            boolean whiteBeforePart2 = isWhite(look);
 
-            SkipWhite();
+            skipWhite();
             SimpleRangePart part2 = parseSimpleRangePart();
             String part1And2 = _formulaString.substring(savePointer-1, _pointer-1);
             if (part2 == null) {
@@ -635,7 +635,7 @@ public final class FormulaParser {
         // Do NOT return before done reading all the structured reference tokens from the input stream.
         // Throwing exceptions is okay.
         int savePtr0 = _pointer;
-        GetChar();
+        nextChar();
 
         boolean isTotalsSpec = false;
         boolean isThisRowSpec = false;
@@ -671,16 +671,16 @@ public final class FormulaParser {
             }
             nSpecQuantifiers++;
             if (look == ','){
-                GetChar();
+                nextChar();
             } else {
                 break;
             }
         }
         boolean isThisRow = false;
-        SkipWhite();
+        skipWhite();
         if (look == '@') {
             isThisRow = true;
-            GetChar();
+            nextChar();
         }
         // parse column quantifier
         String endColumnName = null;
@@ -694,7 +694,7 @@ public final class FormulaParser {
             if (look == ','){
                 throw new FormulaParseException("The formula "+ _formulaString + " is illegal: you should not use ',' with column quantifiers");
             } else if (look == ':') {
-                GetChar();
+                nextChar();
                 endColumnName = parseAsColumnQuantifier();
                 nColQuantifiers++;
                 if (endColumnName == null) {
@@ -738,7 +738,7 @@ public final class FormulaParser {
                 }
             }
         } else {
-            Match(']');
+            match(']');
         }
         // Done reading from input stream
         // Ok to return now
@@ -836,19 +836,19 @@ public final class FormulaParser {
         if ( look != '[') {
             return null;
         }
-        GetChar();
+        nextChar();
         if (look == '#') {
             return null;
         }
         if (look == '@') {
-            GetChar();
+            nextChar();
         }
         StringBuilder name = new StringBuilder();
         while (look!=']') {
            name.appendCodePoint(look);
-           GetChar();
+           nextChar();
         }
-        Match(']');
+        match(']');
         return name.toString();
     }
     /**
@@ -859,16 +859,16 @@ public final class FormulaParser {
         if ( look != '[') {
             return null;
         }
-        GetChar();
+        nextChar();
         if( look != '#') {
             return null;
         }
-        GetChar();
+        nextChar();
         String name = parseAsName();
         if ( name.equals("This")) {
             name = name + ' ' + parseAsName();
         }
-        Match(']');
+        match(']');
         return name;
     }
 
@@ -934,9 +934,9 @@ public final class FormulaParser {
         }
         while (isValidDefinedNameChar(look)) {
             sb.appendCodePoint(look);
-            GetChar();
+            nextChar();
         }
-        SkipWhite();
+        skipWhite();
 
         return sb.toString();
     }
@@ -1142,12 +1142,12 @@ public final class FormulaParser {
 
     private String getBookName() {
         StringBuilder sb = new StringBuilder();
-        GetChar();
+        nextChar();
         while (look != ']') {
             sb.appendCodePoint(look);
-            GetChar();
+            nextChar();
         }
-        GetChar();
+        nextChar();
         return sb.toString();
     }
 
@@ -1165,7 +1165,7 @@ public final class FormulaParser {
 
         if (look == '\'' || isSndPartOfQuotedRange) {
             if (!isSndPartOfQuotedRange) {
-                Match('\'');
+                match('\'');
             }
 
             if (look == '[')
@@ -1175,14 +1175,14 @@ public final class FormulaParser {
             boolean done = look == '\'';
             while(!done) {
                 sb.appendCodePoint(look);
-                GetChar();
+                nextChar();
                 switch (look){
                     case '\'' : {
-                        GetChar();
+                        nextChar();
                         if (look == '\''){
                             // Any single quotes which were already present in the sheet name will be converted to double single quotes ('')
                             // so switch back to single quote
-                            GetChar();
+                            nextChar();
                             break;
                         }
                     }
@@ -1193,9 +1193,9 @@ public final class FormulaParser {
 
             NameIdentifier iden = new NameIdentifier(sb.toString(), true);
             // quoted identifier - can't concatenate anything more
-            SkipWhite();
+            skipWhite();
             if (look == '!') {
-                GetChar();
+                nextChar();
                 return new SheetIdentifier(bookName, iden);
             }
             // See if it's a multi-sheet range, eg Sheet1:Sheet3!A1
@@ -1211,15 +1211,15 @@ public final class FormulaParser {
             // can concatenate idens with dots
             while (isUnquotedSheetNameChar(look)) {
                 sb.appendCodePoint(look);
-                GetChar();
+                nextChar();
             }
             if (look == '\'') {
-                GetChar();
+                nextChar();
             }
             NameIdentifier iden = new NameIdentifier(sb.toString(), false);
-            SkipWhite();
+            skipWhite();
             if (look == '!') {
-                GetChar();
+                nextChar();
                 return new SheetIdentifier(bookName, iden);
             }
             // See if it's a multi-sheet range, eg Sheet1:Sheet3!A1
@@ -1230,7 +1230,7 @@ public final class FormulaParser {
         }
         if (look == '!' && bookName != null) {
             // Raw book reference, without a sheet
-            GetChar();
+            nextChar();
             return new SheetIdentifier(bookName, null);
         }
         return null;
@@ -1241,7 +1241,7 @@ public final class FormulaParser {
      *  Sheet1, see if it's actually a range eg Sheet1:Sheet2!
      */
     private SheetIdentifier parseSheetRange(String bookname, NameIdentifier sheet1Name, boolean isSndPartOfQuotedRange) {
-        GetChar();
+        nextChar();
         SheetIdentifier sheet2 = parseSheetName(isSndPartOfQuotedRange);
         if (sheet2 != null) {
            return new SheetRangeIdentifier(bookname, sheet1Name, sheet2.getSheetIdentifier());
@@ -1290,7 +1290,7 @@ public final class FormulaParser {
             if(isFunc){
                 int savePointer = _pointer;
                 resetPointer(_pointer + str.length());
-                SkipWhite();
+                skipWhite();
                 // open bracket indicates that the argument is a function,
                 // the returning value should be false, i.e. "not a valid cell reference"
                 result = look != '(';
@@ -1356,9 +1356,9 @@ public final class FormulaParser {
             }
         }
 
-        Match('(');
+        match('(');
         ParseNode[] args = Arguments();
-        Match(')');
+        match(')');
 
         return getFunction(name, nameToken, args);
     }
@@ -1465,14 +1465,14 @@ public final class FormulaParser {
     private ParseNode[] Arguments() {
         //average 2 args per function
         List<ParseNode> temp = new ArrayList<>(2);
-        SkipWhite();
+        skipWhite();
         if(look == ')') {
             return ParseNode.EMPTY_ARRAY;
         }
 
         boolean missedPrevArg = true;
         while (true) {
-            SkipWhite();
+            skipWhite();
             if (isArgumentDelimiter(look)) {
                 if (missedPrevArg) {
                     temp.add(new ParseNode(MissingArgPtg.instance));
@@ -1480,13 +1480,13 @@ public final class FormulaParser {
                 if (look == ')') {
                     break;
                 }
-                Match(',');
+                match(',');
                 missedPrevArg = true;
                 continue;
             }
             temp.add(intersectionExpression());
             missedPrevArg = false;
-            SkipWhite();
+            skipWhite();
             if (!isArgumentDelimiter(look)) {
                 throw expected("',' or ')'");
             }
@@ -1500,11 +1500,11 @@ public final class FormulaParser {
     private ParseNode powerFactor() {
         ParseNode result = percentFactor();
         while(true) {
-            SkipWhite();
+            skipWhite();
             if(look != '^') {
                 return result;
             }
-            Match('^');
+            match('^');
             ParseNode other = percentFactor();
             result = new ParseNode(PowerPtg.instance, result, other);
         }
@@ -1513,11 +1513,11 @@ public final class FormulaParser {
     private ParseNode percentFactor() {
         ParseNode result = parseSimpleFactor();
         while(true) {
-            SkipWhite();
+            skipWhite();
             if(look != '%') {
                 return result;
             }
-            Match('%');
+            match('%');
             result = new ParseNode(PercentPtg.instance, result);
         }
     }
@@ -1527,32 +1527,32 @@ public final class FormulaParser {
      * factors (without ^ or % )
      */
     private ParseNode parseSimpleFactor() {
-        SkipWhite();
+        skipWhite();
         switch(look) {
             case '#':
                 return new ParseNode(ErrPtg.valueOf(parseErrorLiteral()));
             case '-':
-                Match('-');
+                match('-');
                 return parseUnary(false);
             case '+':
-                Match('+');
+                match('+');
                 return parseUnary(true);
             case '(':
-                Match('(');
+                match('(');
                 ParseNode inside = unionExpression();
-                Match(')');
+                match(')');
                 return new ParseNode(ParenthesisPtg.instance, inside);
             case '"':
                 return new ParseNode(new StringPtg(parseStringLiteral()));
             case '{':
-                Match('{');
+                match('{');
                 ParseNode arrayNode = parseArray();
-                Match('}');
+                match('}');
                 return arrayNode;
         }
         // named ranges and tables can start with underscore or backslash
         // see https://support.office.com/en-us/article/Define-and-use-names-in-formulas-4d0f13ac-53b7-422e-afd2-abd7ff379c64?ui=en-US&rs=en-US&ad=US#bmsyntax_rules_for_names
-        if (IsAlpha(look) || Character.isDigit(look) || look == '\'' || look == '[' || look == '_' || look == '\\' ) {
+        if (isAlpha(look) || Character.isDigit(look) || look == '\'' || look == '[' || look == '_' || look == '\\' ) {
             return parseRangeExpression();
         }
         if (look == '.') {
@@ -1564,7 +1564,7 @@ public final class FormulaParser {
 
     private ParseNode parseUnary(boolean isPlus) {
 
-        boolean numberFollows = IsDigit(look) || look=='.';
+        boolean numberFollows = isDigit(look) || look=='.';
         ParseNode factor = powerFactor();
 
         if (numberFollows) {
@@ -1602,7 +1602,7 @@ public final class FormulaParser {
             if (look != ';') {
                 throw expected("'}' or ';'");
             }
-            Match(';');
+            match(';');
         }
         int nRows = rowsData.size();
         Object[][] values2d = new Object[nRows][];
@@ -1626,13 +1626,13 @@ public final class FormulaParser {
         List<Object> temp = new ArrayList<>();
         while (true) {
             temp.add(parseArrayItem());
-            SkipWhite();
+            skipWhite();
             switch(look) {
                 case '}':
                 case ';':
                     break;
                 case ',':
-                    Match(',');
+                    match(',');
                     continue;
                 default:
                     throw expected("'}' or ','");
@@ -1647,7 +1647,7 @@ public final class FormulaParser {
     }
 
     private Object parseArrayItem() {
-        SkipWhite();
+        skipWhite();
         switch(look) {
             case '"': return parseStringLiteral();
             case '#': return ErrorConstant.valueOf(parseErrorLiteral());
@@ -1655,8 +1655,8 @@ public final class FormulaParser {
             case 'T': case 't':
                 return parseBooleanLiteral();
             case '-':
-                Match('-');
-                SkipWhite();
+                match('-');
+                skipWhite();
                 return convertArrayNumber(parseNumber(), false);
         }
         // else assume number
@@ -1681,7 +1681,7 @@ public final class FormulaParser {
         } else  if (ptg instanceof NumberPtg) {
             value = ((NumberPtg)ptg).getValue();
         } else {
-            throw new RuntimeException("Unexpected ptg (" + ptg.getClass().getName() + ")");
+            throw new IllegalStateException("Unexpected ptg (" + ptg.getClass().getName() + ")");
         }
         if (!isPositive) {
             value = -value;
@@ -1692,25 +1692,25 @@ public final class FormulaParser {
     private Ptg parseNumber() {
         String number2 = null;
         String exponent = null;
-        String number1 = GetNum();
+        String number1 = nextNum();
 
         if (look == '.') {
-            GetChar();
-            number2 = GetNum();
+            nextChar();
+            number2 = nextNum();
         }
 
         if (look == 'E') {
-            GetChar();
+            nextChar();
 
             String sign = "";
             if (look == '+') {
-                GetChar();
+                nextChar();
             } else if (look == '-') {
-                GetChar();
+                nextChar();
                 sign = "-";
             }
 
-            String number = GetNum();
+            String number = nextNum();
             if (number == null) {
                 throw expected("Integer");
             }
@@ -1726,7 +1726,7 @@ public final class FormulaParser {
 
 
     private int parseErrorLiteral() {
-        Match('#');
+        match('#');
         String part1 = parseUnquotedIdentifier();
         if (part1 == null) {
             throw expected("remainder of error constant literal");
@@ -1737,7 +1737,7 @@ public final class FormulaParser {
             case 'V': {
                 FormulaError fe = FormulaError.VALUE;
                 if(part1.equals(fe.name())) {
-                    Match('!');
+                    match('!');
                     return fe.getCode();
                 }
                 throw expected(fe.getString());
@@ -1745,7 +1745,7 @@ public final class FormulaParser {
             case 'R': {
                 FormulaError fe = FormulaError.REF;
                 if(part1.equals(fe.name())) {
-                    Match('!');
+                    match('!');
                     return fe.getCode();
                 }
                 throw expected(fe.getString());
@@ -1753,9 +1753,9 @@ public final class FormulaParser {
             case 'D': {
                 FormulaError fe = FormulaError.DIV0;
                 if(part1.equals("DIV")) {
-                    Match('/');
-                    Match('0');
-                    Match('!');
+                    match('/');
+                    match('0');
+                    match('!');
                     return fe.getCode();
                 }
                 throw expected(fe.getString());
@@ -1764,26 +1764,26 @@ public final class FormulaParser {
                 FormulaError fe = FormulaError.NAME;
                 if(part1.equals(fe.name())) {
                     // only one that ends in '?'
-                    Match('?');
+                    match('?');
                     return fe.getCode();
                 }
                 fe = FormulaError.NUM;
                 if(part1.equals(fe.name())) {
-                    Match('!');
+                    match('!');
                     return fe.getCode();
                 }
                 fe = FormulaError.NULL;
                 if(part1.equals(fe.name())) {
-                    Match('!');
+                    match('!');
                     return fe.getCode();
                 }
                 fe = FormulaError.NA;
                 if(part1.equals("N")) {
-                    Match('/');
+                    match('/');
                     if(look != 'A' && look != 'a') {
                         throw expected(fe.getString());
                     }
-                    Match(look);
+                    match(look);
                     // Note - no '!' or '?' suffix
                     return fe.getCode();
                 }
@@ -1800,7 +1800,7 @@ public final class FormulaParser {
         StringBuilder sb = new StringBuilder();
         while (Character.isLetterOrDigit(look) || look == '.') {
             sb.appendCodePoint(look);
-            GetChar();
+            nextChar();
         }
         if (sb.length() < 1) {
             return null;
@@ -1854,18 +1854,18 @@ public final class FormulaParser {
 
 
     private String parseStringLiteral() {
-        Match('"');
+        match('"');
 
         StringBuilder token = new StringBuilder();
         while (true) {
             if (look == '"') {
-                GetChar();
+                nextChar();
                 if (look != '"') {
                     break;
                 }
              }
             token.appendCodePoint(look);
-            GetChar();
+            nextChar();
         }
         return token.toString();
     }
@@ -1874,15 +1874,15 @@ public final class FormulaParser {
     private ParseNode  Term() {
         ParseNode result = powerFactor();
         while(true) {
-            SkipWhite();
+            skipWhite();
             Ptg operator;
             switch(look) {
                 case '*':
-                    Match('*');
+                    match('*');
                     operator = MultiplyPtg.instance;
                     break;
                 case '/':
-                    Match('/');
+                    match('/');
                     operator = DividePtg.instance;
                     break;
                 default:
@@ -1897,9 +1897,9 @@ public final class FormulaParser {
         ParseNode result = intersectionExpression();
         boolean hasUnions = false;
         while (true) {
-            SkipWhite();
+            skipWhite();
             if (look == ',') {
-                GetChar();
+                nextChar();
                 hasUnions = true;
                 ParseNode other = intersectionExpression();
                 result = new ParseNode(UnionPtg.instance, result, other);
@@ -1916,7 +1916,7 @@ public final class FormulaParser {
         ParseNode result = comparisonExpression();
         boolean hasIntersections = false;
         while (true) {
-            SkipWhite();
+            skipWhite();
             if (_inIntersection) {
                 int savePointer = _pointer;
 
@@ -1942,7 +1942,7 @@ public final class FormulaParser {
     private ParseNode comparisonExpression() {
         ParseNode result = concatExpression();
         while (true) {
-            SkipWhite();
+            skipWhite();
             switch(look) {
                 case '=':
                 case '>':
@@ -1958,24 +1958,24 @@ public final class FormulaParser {
 
     private Ptg getComparisonToken() {
         if(look == '=') {
-            Match(look);
+            match(look);
             return EqualPtg.instance;
         }
         boolean isGreater = look == '>';
-        Match(look);
+        match(look);
         if(isGreater) {
             if(look == '=') {
-                Match('=');
+                match('=');
                 return GreaterEqualPtg.instance;
             }
             return GreaterThanPtg.instance;
         }
         switch(look) {
             case '=':
-                Match('=');
+                match('=');
                 return LessEqualPtg.instance;
             case '>':
-                Match('>');
+                match('>');
                 return NotEqualPtg.instance;
         }
         return LessThanPtg.instance;
@@ -1985,11 +1985,11 @@ public final class FormulaParser {
     private ParseNode concatExpression() {
         ParseNode result = additiveExpression();
         while (true) {
-            SkipWhite();
+            skipWhite();
             if(look != '&') {
                 break; // finished with concat expression
             }
-            Match('&');
+            match('&');
             ParseNode other = additiveExpression();
             result = new ParseNode(ConcatPtg.instance, result, other);
         }
@@ -2001,15 +2001,15 @@ public final class FormulaParser {
     private ParseNode additiveExpression() {
         ParseNode result = Term();
         while (true) {
-            SkipWhite();
+            skipWhite();
             Ptg operator;
             switch(look) {
                 case '+':
-                    Match('+');
+                    match('+');
                     operator = AddPtg.instance;
                     break;
                 case '-':
-                    Match('-');
+                    match('-');
                     operator = SubtractPtg.instance;
                     break;
                 default:
@@ -2040,7 +2040,7 @@ end;
      */
     private void parse() {
         _pointer=0;
-        GetChar();
+        nextChar();
         _rootNode = unionExpression();
 
         if(_pointer <= _formulaLength) {
index 599d8fb6f5fdc4f91dcadbab811c2876ad218f91..01d46df86614e373424fef1d97588148bdb2393e 100644 (file)
@@ -81,7 +81,7 @@ public class FormulaRenderer {
                     stack.push(attrPtg.toFormulaString(operands));
                     continue;
                 }
-                throw new RuntimeException("Unexpected tAttr: " + attrPtg);
+                throw new IllegalStateException("Unexpected tAttr: " + attrPtg);
             }
 
             if (ptg instanceof WorkbookDependentFormula) {
index 732ee145be02b4073aef43b968db6de073deb157..786181c6cd81eaf4e5d65308a1e030960a977439 100644 (file)
@@ -79,7 +79,7 @@ final class OperandClassTransformer {
                 rootNodeOperandClass = Ptg.CLASS_REF;
                 break;
             default:
-                throw new RuntimeException("Incomplete code - formula type ("
+                throw new IllegalStateException("Incomplete code - formula type ("
                         + _formulaType + ") not supported yet");
 
         }
index 618200ec659e4053e4b33e10e094c1a9d34414dd..b22e18e55fabc7c899b0209818a4facc3ba0d273 100644 (file)
@@ -134,7 +134,7 @@ public final class OperationEvaluationContext {
             try {
                 targetEvaluator = _bookEvaluator.getOtherWorkbookEvaluator(workbookName);
             } catch (WorkbookNotFoundException e) {
-                throw new RuntimeException(e.getMessage(), e);
+                throw new IllegalStateException(e.getMessage(), e);
             }
 
             otherFirstSheetIndex = targetEvaluator.getSheetIndex(externalSheet.getSheetName());
@@ -144,7 +144,7 @@ public final class OperationEvaluationContext {
             }
 
             if (otherFirstSheetIndex < 0) {
-                throw new RuntimeException("Invalid sheet name '" + externalSheet.getSheetName()
+                throw new IllegalStateException("Invalid sheet name '" + externalSheet.getSheetName()
                         + "' in bool '" + workbookName + "'.");
             }
         }
@@ -227,11 +227,11 @@ public final class OperationEvaluationContext {
             case NAMED_RANGE:
                 EvaluationName nm = _workbook.getName(refStrPart1, _sheetIndex);
                 if (nm == null) {
-                    throw new RuntimeException("Specified name '" + refStrPart1 +
+                    throw new IllegalStateException("Specified name '" + refStrPart1 +
                             "' is not found in the workbook (sheetIndex=" + _sheetIndex + ").");
                 }
                 if (!nm.isRange()) {
-                    throw new RuntimeException("Specified name '" + refStrPart1 + "' is not a range as expected.");
+                    throw new IllegalStateException("Specified name '" + refStrPart1 + "' is not a range as expected.");
                 }
                 return _bookEvaluator.evaluateNameFormula(nm.getNameDefinition(), this);
         }
@@ -298,7 +298,7 @@ public final class OperationEvaluationContext {
             case BAD_CELL_OR_NAMED_RANGE:
                 return ErrorEval.REF_INVALID;
             case NAMED_RANGE:
-                throw new RuntimeException("Cannot evaluate '" + refStrPart1
+                throw new IllegalStateException("Cannot evaluate '" + refStrPart1
                         + "'. Indirect evaluation of defined names not supported yet");
         }
 
@@ -417,7 +417,7 @@ public final class OperationEvaluationContext {
 
     private ValueEval convertObjectEval(Object token) {
         if (token == null) {
-            throw new RuntimeException("Array item cannot be null");
+            throw new IllegalStateException("Array item cannot be null");
         }
         if (token instanceof String) {
             return new StringEval((String) token);
@@ -533,7 +533,7 @@ public final class OperationEvaluationContext {
             EvaluationName evaluationName = refWorkbookEvaluator.getName(externName.getName(), externName.getIx() - 1);
             if (evaluationName != null && evaluationName.hasFormula()) {
                 if (evaluationName.getNameDefinition().length > 1) {
-                    throw new RuntimeException("Complex name formulas not supported yet");
+                    throw new IllegalStateException("Complex name formulas not supported yet");
                 }
 
                 // Need to evaluate the reference in the context of the other book
index 0ee0b23e502d0ff237e6395b6be40558df06a53f..cf12bbc66b1fa1b652187b296ea5fd1b5d9dcdbb 100644 (file)
@@ -135,7 +135,7 @@ final class OperationEvaluatorFactory {
             return udfFunc.evaluate(args, ec);
         }
 
-        throw new RuntimeException("Unexpected operation ptg class (" + ptg.getClass().getName() + ")");
+        throw new IllegalStateException("Unexpected operation ptg class (" + ptg.getClass().getName() + ")");
     }
 
     static ValueEval evaluateArrayFunction(ArrayFunction func, ValueEval[] args,
index 11f3e0802b1a6a3830830f4ed3b49ccb20bf1a62..26eca119c149bff6431f7746f4dc3bfe56309a48 100644 (file)
@@ -68,7 +68,7 @@ public final class SheetNameFormatter {
                 appendAndEscape(out, rawSheetName);
             }
         } catch (Exception e) {
-            throw new RuntimeException(e);
+            throw new IllegalStateException(e);
         }
     }
 
@@ -96,7 +96,7 @@ public final class SheetNameFormatter {
                 appendOrREF(out, rawSheetName);
             }
         } catch (Exception e) {
-            throw new RuntimeException(e);
+            throw new IllegalStateException(e);
         }
     }
 
@@ -125,7 +125,7 @@ public final class SheetNameFormatter {
                 sb.append(ch);
             }
         } catch (Exception e) {
-            throw new RuntimeException(e);
+            throw new IllegalStateException(e);
         }
     }
 
@@ -196,7 +196,7 @@ public final class SheetNameFormatter {
             case '\n':
             case '\r':
             case '\t':
-                throw new RuntimeException("Illegal character (0x"
+                throw new IllegalStateException("Illegal character (0x"
                         + Integer.toHexString(ch) + ") found in sheet name");
         }
         return true;
index 10a2a1c8bfd2be3bfa99b5e81e2009701d39e35f..c0c0cc56fb68b0c27379a40e9df4c5471cc256a9 100644 (file)
@@ -36,11 +36,20 @@ final class UserDefinedFunction implements FreeRefFunction {
         // enforce singleton
     }
 
+    /**
+     * @param args the pre-evaluated arguments for this function. args is never {@code null},
+     *             nor are any of its elements.
+     * @param ec primarily used to identify the source cell containing the formula being evaluated.
+     *             may also be used to dynamically create reference evals.
+     * @return value
+     * @throws IllegalStateException if first arg is not a {@link FunctionNameEval}
+     * @throws NotImplementedFunctionException if function is not implemented
+     */
     @Override
     public ValueEval evaluate(ValueEval[] args, OperationEvaluationContext ec) {
         int nIncomingArgs = args.length;
-        if(nIncomingArgs < 1) {
-            throw new RuntimeException("function name argument missing");
+        if (nIncomingArgs < 1) {
+            throw new IllegalStateException("function name argument missing");
         }
 
         ValueEval nameArg = args[0];
@@ -48,7 +57,7 @@ final class UserDefinedFunction implements FreeRefFunction {
         if (nameArg instanceof FunctionNameEval) {
             functionName = ((FunctionNameEval) nameArg).getFunctionName();
         } else {
-            throw new RuntimeException("First argument should be a NameEval, but got ("
+            throw new IllegalStateException("First argument should be a NameEval, but got ("
                     + nameArg.getClass().getName() + ")");
         }
         FreeRefFunction targetFunc = ec.findUserDefinedFunction(functionName);
index 8a8d391662b5a2802fd5553f1fa691690c599b07..2d2202342674f1b0d6ac9c1620ac368fc7c7be3a 100644 (file)
@@ -192,7 +192,7 @@ public final class WorkbookEvaluator {
         if (result == null) {
             int sheetIndex = _workbook.getSheetIndex(sheet);
             if (sheetIndex < 0) {
-                throw new RuntimeException("Specified sheet from a different book");
+                throw new IllegalStateException("Specified sheet from a different book");
             }
             result = sheetIndex;
             _sheetIndexesBySheet.put(sheet, result);
@@ -292,7 +292,7 @@ public final class WorkbookEvaluator {
                             break;
                         case FORMULA:
                         default:
-                            throw new RuntimeException("Unexpected cell type '" + srcCell.getCellType() + "' found!");
+                            throw new IllegalStateException("Unexpected cell type '" + srcCell.getCellType() + "' found!");
                     }
                 } else {
                     throw re;
@@ -362,7 +362,7 @@ public final class WorkbookEvaluator {
             case ERROR:
                 return ErrorEval.valueOf(cell.getErrorCellValue());
             default:
-                throw new RuntimeException("Unexpected cell type (" + cellType + ")");
+                throw new IllegalStateException("Unexpected cell type (" + cellType + ")");
         }
 
     }
@@ -542,7 +542,7 @@ public final class WorkbookEvaluator {
                 opResult = getEvalForPtg(ptg, ec);
             }
             if (opResult == null) {
-                throw new RuntimeException("Evaluation result must not be null");
+                throw new IllegalStateException("Evaluation result must not be null");
             }
 //            logDebug("push " + opResult);
             stack.push(opResult);
@@ -588,11 +588,11 @@ public final class WorkbookEvaluator {
         while (remBytes != 0) {
             index++;
             if (index >= ptgs.length) {
-                throw new RuntimeException("Skip distance too far (ran out of formula tokens).");
+                throw new IllegalStateException("Skip distance too far (ran out of formula tokens).");
             }
             remBytes -= ptgs[index].getSize();
             if (remBytes < 0) {
-                throw new RuntimeException("Bad skip distance (wrong token size calculation).");
+                throw new IllegalStateException("Bad skip distance (wrong token size calculation).");
             }
         }
         return index - startIndex;
@@ -738,15 +738,15 @@ public final class WorkbookEvaluator {
             // POI uses UnknownPtg when the encoded Ptg array seems to be corrupted.
             // This seems to occur in very rare cases (e.g. unused name formulas in bug 44774, attachment 21790)
             // In any case, formulas are re-parsed before execution, so UnknownPtg should not get here
-            throw new RuntimeException("UnknownPtg not allowed");
+            throw new IllegalStateException("UnknownPtg not allowed");
         }
         if (ptg instanceof ExpPtg) {
             // ExpPtg is used for array formulas and shared formulas.
             // it is currently unsupported, and may not even get implemented here
-            throw new RuntimeException("ExpPtg currently not supported");
+            throw new IllegalStateException("ExpPtg currently not supported");
         }
 
-        throw new RuntimeException("Unexpected ptg class (" + ptg.getClass().getName() + ")");
+        throw new IllegalStateException("Unexpected ptg class (" + ptg.getClass().getName() + ")");
     }
 
     private ValueEval processNameEval(ValueEval eval, OperationEvaluationContext ec) {
@@ -765,7 +765,7 @@ public final class WorkbookEvaluator {
             return evaluateNameFormula(nameRecord.getNameDefinition(), ec);
         }
 
-        throw new RuntimeException("Don't know how to evaluate name '" + nameRecord.getNameText() + "'");
+        throw new IllegalStateException("Don't know how to evaluate name '" + nameRecord.getNameText() + "'");
     }
 
     /**
index 60546cf05157ae21645140baf2d10033d66c1bdc..ea477bd01f8f5bdfa317f889894a1f1e924c9583 100644 (file)
@@ -258,7 +258,7 @@ final class YearFracCalculator {
             case 23: // transition from daylight savings adjusted to normal time
                 // Unexpected since we are using UTC_TIME_ZONE
             default:
-                throw new RuntimeException("Unexpected date diff between " + startDateMS + " and " + endDateMS);
+                throw new IllegalStateException("Unexpected date diff between " + startDateMS + " and " + endDateMS);
 
         }
         return (int) (0.5 + ((double)msDiff / MS_PER_DAY));
index 31d08d05e5dd289f2e003db68d55579f3dcabd5a..c4dd9eed84eef71a843758404fd49a5d8df74e75 100644 (file)
@@ -60,7 +60,7 @@ public final class ErrorEval implements ValueEval {
         if (eval != null) {
             return eval;
         } else {
-            throw new RuntimeException("Unhandled error type for code " + errorCode);
+            throw new IllegalStateException("Unhandled error type for code " + errorCode);
         }
     }
 
index 38f43137cc3c5d07ed9c29418eeca72d473f5f9e..5619b70fbedf4ac983ea9e76c78e960a7ca575e6 100644 (file)
@@ -267,7 +267,7 @@ public final class OperandResolver {
             }
             return dd;
         }
-        throw new RuntimeException("Unexpected arg eval type (" + ev.getClass().getName() + ")");
+        throw new IllegalStateException("Unexpected arg eval type (" + ev.getClass().getName() + ")");
     }
 
     /**
@@ -368,6 +368,6 @@ public final class OperandResolver {
         if (ve instanceof ErrorEval) {
             throw new EvaluationException((ErrorEval) ve);
         }
-        throw new RuntimeException("Unexpected eval (" + ve.getClass().getName() + ")");
+        throw new IllegalStateException("Unexpected eval (" + ve.getClass().getName() + ")");
     }
 }
index e864294ab815038e2e2b1eb8e535284e000b7ecb..cd3294f5508957d2fc5942af886cdadd83ba06d4 100644 (file)
@@ -98,7 +98,7 @@ final class ForkedEvaluationCell implements EvaluationCell {
 
     private void checkCellType(CellType expectedCellType) {
         if (_cellType != expectedCellType) {
-            throw new RuntimeException("Wrong data type (" + _cellType + ")");
+            throw new IllegalStateException("Wrong data type (" + _cellType + ")");
         }
     }
 
index 564b5da4036268f8ade2aa59f68db14821138cd6..1789381d6e6aa746c2652ef61ed8ec597925d424 100644 (file)
@@ -98,7 +98,7 @@ final class ForkedEvaluationWorkbook implements EvaluationWorkbook {
     public Ptg[] getFormulaTokens(EvaluationCell cell) {
         if (cell instanceof ForkedEvaluationCell) {
             // doesn't happen yet because formulas cannot be modified from the master workbook
-            throw new RuntimeException("Updated formulas not supported yet");
+            throw new IllegalStateException("Updated formulas not supported yet");
         }
         return _masterBook.getFormulaTokens(cell);
     }
index 6baef59ef9de978c8bb949db883d2355ef417ec5..108f91c0f1ad4eaf8ed702ca9fc36204561c7fac 100644 (file)
@@ -56,14 +56,14 @@ final class FunctionDataBuilder {
         prevFM = _functionDataByName.get(functionName);
         if(prevFM != null) {
             if(!hasFootnote || !_mutatingFunctionIndexes.contains(indexKey)) {
-                throw new RuntimeException("Multiple entries for function name '" + functionName + "'");
+                throw new IllegalStateException("Multiple entries for function name '" + functionName + "'");
             }
             _functionDataByIndex.remove(prevFM.getIndex());
         }
         prevFM = _functionDataByIndex.get(indexKey);
         if(prevFM != null) {
             if(!hasFootnote || !_mutatingFunctionIndexes.contains(indexKey)) {
-                throw new RuntimeException("Multiple entries for function index (" + functionIndex + ")");
+                throw new IllegalStateException("Multiple entries for function index (" + functionIndex + ")");
             }
             _functionDataByName.remove(prevFM.getName());
         }
index e7949ecc921a31162b954313517f22233643e778..b03c732e89a4ea0260871fef010598208665afff 100644 (file)
@@ -85,7 +85,7 @@ final class FunctionMetadataReader {
     private static void readResourceFile(FunctionDataBuilder fdb, String resourceFile) {
         try (InputStream is = FunctionMetadataReader.class.getResourceAsStream(resourceFile)) {
             if (is == null) {
-                throw new RuntimeException("resource '" + resourceFile + "' not found");
+                throw new IllegalStateException("resource '" + resourceFile + "' not found");
             }
 
             try(BufferedReader br = new BufferedReader(new InputStreamReader(is, StandardCharsets.UTF_8))) {
@@ -106,7 +106,7 @@ final class FunctionMetadataReader {
                 }
             }
         } catch (IOException e) {
-            throw new RuntimeException(e);
+            throw new IllegalStateException(e);
         }
     }
 
@@ -114,7 +114,7 @@ final class FunctionMetadataReader {
 
         String[] parts = TAB_DELIM_PATTERN.split(line, -2);
         if(parts.length != 8) {
-            throw new RuntimeException("Bad line format '" + line + "' - expected 8 data fields delimited by tab, " +
+            throw new IllegalStateException("Bad line format '" + line + "' - expected 8 data fields delimited by tab, " +
                     "but had " + parts.length + ": " + Arrays.toString(parts));
         }
         int functionIndex = parseInt(parts[0]);
@@ -168,7 +168,7 @@ final class FunctionMetadataReader {
 
     private static byte parseOperandTypeCode(String code) {
         if(code.length() != 1) {
-            throw new RuntimeException("Bad operand type code format '" + code  + "' expected single char");
+            throw new IllegalStateException("Bad operand type code format '" + code  + "' expected single char");
         }
         switch(code.charAt(0)) {
             case 'V': return Ptg.CLASS_VALUE;
@@ -197,7 +197,7 @@ final class FunctionMetadataReader {
         if(DIGIT_ENDING_FUNCTION_NAMES_SET.contains(functionName)) {
             return;
         }
-        throw new RuntimeException("Invalid function name '" + functionName
+        throw new IllegalStateException("Invalid function name '" + functionName
                 + "' (is footnote number incorrectly appended)");
     }
 
@@ -205,7 +205,7 @@ final class FunctionMetadataReader {
         try {
             return Integer.parseInt(valStr);
         } catch (NumberFormatException e) {
-            throw new RuntimeException("Value '" + valStr + "' could not be parsed as an integer");
+            throw new IllegalStateException("Value '" + valStr + "' could not be parsed as an integer");
         }
     }
 }
index 3dbedd2ae66e7bfb9e6e1d2e8e81354eb75a71a9..37891fe7fd74faad09f9040979c586bb75d61ff7 100644 (file)
@@ -129,7 +129,7 @@ final class ArrayFunctionUtils {
         if (ve == BlankEval.instance) {
             return null;
         }
-        throw new RuntimeException("Invalid ValueEval type passed for conversion: ("
+        throw new IllegalStateException("Invalid ValueEval type passed for conversion: ("
                 + ve.getClass() + ")");
     }
 
index 85444596d5976e0885fa6a39f7ff5a585040f6bd..93fdf033a42244925b31783b33c7877522b59721 100644 (file)
@@ -119,7 +119,7 @@ public final class Countif extends Fixed2ArgFunction {
                 case NE:
                     return !cmpResult;
             }
-            throw new RuntimeException("Cannot call boolean evaluate on non-equality operator '"
+            throw new IllegalStateException("Cannot call boolean evaluate on non-equality operator '"
                     + _representation + "'");
         }
         public boolean evaluate(int cmpResult) {
@@ -133,7 +133,7 @@ public final class Countif extends Fixed2ArgFunction {
                 case GT: return cmpResult >  0;
                 case GE: return cmpResult >= 0;
             }
-            throw new RuntimeException("Cannot call boolean evaluate on non-equality operator '"
+            throw new IllegalStateException("Cannot call boolean evaluate on non-equality operator '"
                     + _representation + "'");
         }
         @Override
@@ -477,7 +477,7 @@ public final class Countif extends Fixed2ArgFunction {
         if(evaluatedCriteriaArg == BlankEval.instance) {
             return null;
         }
-        throw new RuntimeException("Unexpected type for criteria ("
+        throw new IllegalStateException("Unexpected type for criteria ("
                 + evaluatedCriteriaArg.getClass().getName() + ")");
     }
 
index 12a87f82b03941441e2a95b092de4ba2d193b154..d8c484b593fe2e50569536548795c70c833fbd19 100644 (file)
@@ -85,7 +85,7 @@ public final class Index implements Function2Arg, Function3Arg, Function4Arg, Ar
     @Override
     public ValueEval evaluate(int srcRowIndex, int srcColumnIndex, ValueEval arg0, ValueEval arg1,
             ValueEval arg2, ValueEval arg3) {
-        throw new RuntimeException("Incomplete code"
+        throw new IllegalStateException("Incomplete code"
                 + " - don't know how to support the 'area_num' parameter yet)");
         // Excel expression might look like this "INDEX( (A1:B4, C3:D6, D2:E5 ), 1, 2, 3)
         // In this example, the 3rd area would be used i.e. D2:E5, and the overall result would be E2
@@ -103,7 +103,7 @@ public final class Index implements Function2Arg, Function3Arg, Function4Arg, Ar
         }
         // else the other variation of this function takes an array as the first argument
         // it seems like interface 'ArrayEval' does not even exist yet
-        throw new RuntimeException("Incomplete code - cannot handle first arg of type ("
+        throw new IllegalStateException("Incomplete code - cannot handle first arg of type ("
                 + arg0.getClass().getName() + ")");
 
     }
index 8c2ff6f1af8f641732feecebf8209cfc2ba652ed..8981676b68a475d0c09ad930c6b8c6a596adf91c 100644 (file)
@@ -84,7 +84,7 @@ public final class Lookup extends Var2or3ArgFunction {
             ValueVector resultVector = createVector(aeResultVector);
             if(lookupVector.getSize() > resultVector.getSize()) {
                 // Excel seems to handle this by accessing past the end of the result vector.
-                throw new RuntimeException("Lookup vector and result vector of differing sizes not supported yet");
+                throw new IllegalStateException("Lookup vector and result vector of differing sizes not supported yet");
             }
             int index = LookupUtils.lookupFirstIndexOfValue(lookupValue, lookupVector, true);
 
@@ -100,6 +100,6 @@ public final class Lookup extends Var2or3ArgFunction {
             return result;
         }
         // extra complexity required to emulate the way LOOKUP can handles these abnormal cases.
-        throw new RuntimeException("non-vector lookup or result areas not supported yet");
+        throw new IllegalStateException("non-vector lookup or result areas not supported yet");
     }
 }
index c76bfc0f4e5acba582446483d9a2dfb135d0d8c1..d36ae34b7a8a42a96fb1f7c91233ae5aec7e2d0b 100644 (file)
@@ -358,14 +358,14 @@ public final class LookupUtils {
         private final Class<? extends ValueEval> _targetClass;
         protected LookupValueComparerBase(ValueEval targetValue) {
             if(targetValue == null) {
-                throw new RuntimeException("targetValue cannot be null");
+                throw new IllegalStateException("targetValue cannot be null");
             }
             _targetClass = targetValue.getClass();
         }
         @Override
         public final CompareResult compareTo(ValueEval other) {
             if (other == null) {
-                throw new RuntimeException("compare to value cannot be null");
+                throw new IllegalStateException("compare to value cannot be null");
             }
             if (_targetClass != other.getClass()) {
                 return CompareResult.TYPE_MISMATCH;
@@ -611,7 +611,7 @@ public final class LookupUtils {
             // zero is FALSE, everything else is TRUE
             return 0.0 != nve.getNumberValue();
         }
-        throw new RuntimeException("Unexpected eval type (" + valEval + ")");
+        throw new IllegalStateException("Unexpected eval type (" + valEval + ")");
     }
 
     public static int lookupFirstIndexOfValue(ValueEval lookupValue, ValueVector vector, boolean isRangeLookup) throws EvaluationException {
index 6ba4a782358e1a394fd6c073de2f2c75c3f7f424..b6bb093a22efdc047cc0d3101336ce5895f00b6c 100644 (file)
@@ -117,7 +117,7 @@ public final class Match extends Var2or3ArgFunction {
         @Override
         public ValueEval getItem(int index) {
             if (index != 0) {
-                throw new RuntimeException("Invalid index ("
+                throw new IllegalStateException("Invalid index ("
                         + index + ") only zero is allowed");
             }
             return _value;
@@ -160,7 +160,7 @@ public final class Match extends Var2or3ArgFunction {
             // else looks like a number
             throw new EvaluationException(ErrorEval.NA);
         }
-        throw new RuntimeException("Unexpected eval type (" + eval + ")");
+        throw new IllegalStateException("Unexpected eval type (" + eval + ")");
     }
 
 
@@ -191,7 +191,7 @@ public final class Match extends Var2or3ArgFunction {
             // uses the default-value instead
             return 1;
         }
-        throw new RuntimeException("Unexpected match_type type (" + match_type.getClass().getName() + ")");
+        throw new IllegalStateException("Unexpected match_type type (" + match_type.getClass().getName() + ")");
     }
 
     /**
index a8fcdd79835d07c8a802d51a7944f016a681eda1..0c125311766c43efc57fd307fd51a4d9f54f0e7e 100644 (file)
@@ -128,6 +128,6 @@ public final class Mode implements Function {
             temp.add(Double.valueOf(((NumberEval) arg).getNumberValue()));
             return;
         }
-        throw new RuntimeException("Unexpected value type (" + arg.getClass().getName() + ")");
+        throw new IllegalStateException("Unexpected value type (" + arg.getClass().getName() + ")");
     }
 }
index 2723c7dc0c1ac4b4454261c7e6c67ebc4a5bff8a..8f8f6b8175859c0d814bbfc592f91af7d822bc4d 100644 (file)
@@ -225,7 +225,7 @@ public abstract class MultiOperandNumericFunction implements Function {
             missingArgConsumer.accept((MissingArgEval) ve, temp);
             return;
         }
-        throw new RuntimeException("Invalid ValueEval type passed for conversion: ("
+        throw new IllegalStateException("Invalid ValueEval type passed for conversion: ("
                 + ve.getClass() + ")");
     }
 
index 25567a108b6dc2b93a701cf111bb23f4853c2e54..cd77d72c9b8101a9bfaeacfaefb7be2d9fb958cd 100644 (file)
@@ -56,7 +56,7 @@ public final class Offset implements Function {
         public LinearOffsetRange(int offset, int length) {
             if(length == 0) {
                 // handled that condition much earlier
-                throw new RuntimeException("length may not be zero");
+                throw new IllegalStateException("length may not be zero");
             }
             _offset = offset;
             _length = length;
index 9345517d7625e4bac59433d7a4f8af985b792855..9aafaf0e41fe0d6ece0c357e3dec3a58016bd2ac 100644 (file)
@@ -87,7 +87,7 @@ public final class Sumproduct implements Function {
         } catch (EvaluationException e) {
             return e.getErrorEval();
         }
-        throw new RuntimeException("Invalid arg type for SUMPRODUCT: ("
+        throw new IllegalStateException("Invalid arg type for SUMPRODUCT: ("
                 + firstArg.getClass().getName() + ")");
     }
 
@@ -116,7 +116,7 @@ public final class Sumproduct implements Function {
         }
 
         if (eval == null) {
-            throw new RuntimeException("parameter may not be null");
+            throw new IllegalStateException("parameter may not be null");
         }
         if (eval instanceof AreaEval) {
             AreaEval ae = (AreaEval) eval;
@@ -235,7 +235,7 @@ public final class Sumproduct implements Function {
             NumericValueEval nve = (NumericValueEval) ve;
             return nve.getNumberValue();
         }
-        throw new RuntimeException("Unexpected value eval class ("
+        throw new IllegalStateException("Unexpected value eval class ("
                 + ve.getClass().getName() + ")");
     }
 }
index 157663d0a1f5aad3e71a03c772b70dc968c884dc..a06e681701ce82c132e9964c36bc63ccb8ca2d13 100644 (file)
@@ -108,7 +108,7 @@ public final class Trend implements Function {
             eval = arg;
         }
         if (eval == null) {
-            throw new RuntimeException("Parameter may not be null.");
+            throw new IllegalStateException("Parameter may not be null.");
         }
 
         if (eval instanceof AreaEval) {
index 5003f20be198eec1c234bea142f32c83dcbface7..014c95ceb3963fdaed7bc78f682271104a2529f6 100644 (file)
@@ -48,10 +48,10 @@ public abstract class AbstractFunctionPtg extends OperationPtg {
     protected AbstractFunctionPtg(int functionIndex, int pReturnClass, byte[] paramTypes, int nParams) {
         _numberOfArgs = nParams;
         if (functionIndex < Short.MIN_VALUE || functionIndex > Short.MAX_VALUE)
-            throw new RuntimeException("functionIndex " + functionIndex + " cannot be cast to short");
+            throw new IllegalStateException("functionIndex " + functionIndex + " cannot be cast to short");
         _functionIndex = (short) functionIndex;
         if (pReturnClass < Byte.MIN_VALUE || pReturnClass > Byte.MAX_VALUE)
-            throw new RuntimeException("pReturnClass " + pReturnClass + " cannot be cast to byte");
+            throw new IllegalStateException("pReturnClass " + pReturnClass + " cannot be cast to byte");
         returnClass = (byte) pReturnClass;
         paramClass = paramTypes;
     }
@@ -140,7 +140,7 @@ public abstract class AbstractFunctionPtg extends OperationPtg {
             fm = FunctionMetadataRegistry.getFunctionByIndex(index);
         }
         if(fm == null) {
-            throw new RuntimeException("bad function index (" + index + ", " + isCetab + ")");
+            throw new IllegalStateException("bad function index (" + index + ", " + isCetab + ")");
         }
         return fm.getName();
     }
index 1f92d64108aee9018719d193caf590b66619df56..c1b46286adf6a238d2a25a1557a39f9e2ef6e29d 100644 (file)
@@ -107,7 +107,7 @@ public final class Area3DPtg extends AreaPtgBase implements WorkbookDependentFor
 
     @Override
     public String toFormulaString() {
-        throw new RuntimeException("3D references need a workbook to determine formula text");
+        throw new IllegalStateException("3D references need a workbook to determine formula text");
     }
 
     @Override
index 6014c54373d921ee4b04a7cdd9336aef49084bd8..5d1e247e5ae39633af6fd8164fab46f55d64f17e 100644 (file)
@@ -192,7 +192,7 @@ public final class ArrayPtg extends Ptg {
     private static String getConstantText(Object o) {
 
         if (o == null) {
-            throw new RuntimeException("Array item cannot be null");
+            throw new IllegalStateException("Array item cannot be null");
         }
         if (o instanceof String) {
             return "\"" + o + "\"";
index 5eeb7bbaaa2daeeb8dd4b6434ddaa9898cb1f879..fb3aed7c919187da49049ba87a3460a448705f09 100644 (file)
@@ -54,7 +54,7 @@ public final class DeletedArea3DPtg extends OperandPtg implements WorkbookDepend
         return ExternSheetNameResolver.prependSheetName(book, field_1_index_extern_sheet, FormulaError.REF.getString());
     }
     public String toFormulaString() {
-        throw new RuntimeException("3D references need a workbook to determine formula text");
+        throw new IllegalStateException("3D references need a workbook to determine formula text");
     }
     @Override
     public byte getDefaultOperandClass() {
index eab861b34f67cd29ab0b74696d3f96ecede5e441..ed1d7b3f74823475dbef1f17f0f9d9150c5c770c 100644 (file)
@@ -54,7 +54,7 @@ public final class DeletedRef3DPtg extends OperandPtg implements WorkbookDepende
         return ExternSheetNameResolver.prependSheetName(book, field_1_index_extern_sheet, FormulaError.REF.getString());
     }
     public String toFormulaString() {
-        throw new RuntimeException("3D references need a workbook to determine formula text");
+        throw new IllegalStateException("3D references need a workbook to determine formula text");
     }
     @Override
     public byte getDefaultOperandClass() {
index 6cb5d41803511f78a64e1918379070e75f238b33..43e0857a3b3826619c6737f1059629256a9d18ab 100644 (file)
@@ -92,7 +92,7 @@ public final class ErrPtg extends ScalarConstantPtg {
             case REF: return REF_INVALID;
             case VALUE: return VALUE_INVALID;
             default:
-                throw new RuntimeException("Unexpected error code (" + code + ")");
+                throw new IllegalStateException("Unexpected error code (" + code + ")");
         }
     }
 
index 6c125e652ca61509f529cb03bc7c4bec819ebdb8..af6b2ed38976932d9cf0cf5908716af9853b064b 100644 (file)
@@ -68,7 +68,7 @@ public final class ExpPtg extends ControlPtg {
 
     @Override
     public String toFormulaString() {
-        throw new RuntimeException("Coding Error: Expected ExpPtg to be converted from Shared to Non-Shared Formula by ValueRecordsAggregate, but it wasn't");
+        throw new IllegalStateException("Coding Error: Expected ExpPtg to be converted from Shared to Non-Shared Formula by ValueRecordsAggregate, but it wasn't");
     }
 
     @Override
index 9fbcc89690ec0d9ae6123e815c85adfd3ef29de9..a7492eb17a088364a133cfd5184c2cff2f66f7c2 100644 (file)
@@ -38,7 +38,7 @@ public final class FuncPtg extends AbstractFunctionPtg {
     public static FuncPtg create(int functionIndex) {
         FunctionMetadata fm = FunctionMetadataRegistry.getFunctionByIndex(functionIndex);
         if(fm == null) {
-            throw new RuntimeException("Invalid built-in function index (" + functionIndex + ")");
+            throw new IllegalStateException("Invalid built-in function index (" + functionIndex + ")");
         }
         return new FuncPtg(functionIndex, fm);
     }
index af569e51f2e50e2064eee05424495d4c8140dad2..be047d8b05c8db01bf79a4e5a1d8ea741df7a714 100644 (file)
@@ -87,7 +87,7 @@ public final class NamePtg extends OperandPtg implements WorkbookDependentFormul
 
     @Override
     public String toFormulaString() {
-        throw new RuntimeException("3D references need a workbook to determine formula text");
+        throw new IllegalStateException("3D references need a workbook to determine formula text");
     }
 
     @Override
index 4429c2ee104fb6d81d120682e37b4baa4aeaf0fb..31d006bf2fc853c4b8c8a0c70431a66ddf73edf5 100644 (file)
@@ -84,7 +84,7 @@ public final class NameXPtg extends OperandPtg implements WorkbookDependentFormu
         return book.resolveNameXText(this);
     }
     public String toFormulaString() {
-        throw new RuntimeException("3D references need a workbook to determine formula text");
+        throw new IllegalStateException("3D references need a workbook to determine formula text");
     }
 
     @Override
index 7096921c4327a6524873038309bcec487ef77f4f..5362fcc2b6a5dabea74b336e3af669a1555d39a6 100644 (file)
@@ -94,7 +94,7 @@ public final class Ref3DPtg extends RefPtgBase implements WorkbookDependentFormu
         return ExternSheetNameResolver.prependSheetName(book, field_1_index_extern_sheet, formatReferenceAsString());
     }
     public String toFormulaString() {
-        throw new RuntimeException("3D references need a workbook to determine formula text");
+        throw new IllegalStateException("3D references need a workbook to determine formula text");
     }
 
     @Override
index 63a2aa759eec4cd464f2dc9c6d47689978bb46f9..63552513683601e8f193614994aca387e3f87b4b 100644 (file)
@@ -78,7 +78,7 @@ public final class TblPtg extends ControlPtg {
     public String toFormulaString()
     {
         // table(....)[][]
-        throw new RuntimeException("Table and Arrays are not yet supported");
+        throw new IllegalStateException("Table and Arrays are not yet supported");
     }
 
     @Override
index 52fc6445256c7f82b7d59355015d60fe2f5c4750..e26dd43ace39d2d6d53469a9cf687e5abeda5351 100644 (file)
@@ -54,6 +54,6 @@ public abstract class ValueOperatorPtg extends OperationPtg {
     @Override
     public final String toFormulaString() {
         // TODO - prune this method out of the hierarchy
-        throw new RuntimeException("toFormulaString(String[] operands) should be used for subclasses of OperationPtgs");
+        throw new IllegalStateException("toFormulaString(String[] operands) should be used for subclasses of OperationPtgs");
     }
 }
index 6b16d7e79b0afbb9eaacc9fa1ff2a7db1c0ba00e..e68e223b0cdadf76e1579d6bbccc4da0a38b6d9d 100644 (file)
@@ -1138,7 +1138,7 @@ public class DataFormatter {
             case ERROR:
                 return FormulaError.forInt(cell.getErrorCellValue()).getString();
             default:
-                throw new RuntimeException("Unexpected celltype (" + cellType + ")");
+                throw new IllegalStateException("Unexpected celltype (" + cellType + ")");
         }
     }
 
index 6ccb17852a173b5952c772e7ab86f939142e33bd..fc45d81b4a5e9b017724b519fca10b46a139de93 100644 (file)
@@ -70,7 +70,7 @@ public class AreaReference {
         String part1 = parts[1];
         if (isPlainColumn(part0)) {
             if (!isPlainColumn(part1)) {
-                throw new RuntimeException("Bad area ref '" + reference + "'");
+                throw new IllegalStateException("Bad area ref '" + reference + "'");
             }
             // Special handling for whole-column references
             // Represented internally as x$1 to x$65536
@@ -301,7 +301,7 @@ public class AreaReference {
             // TODO - are references like "Sheet1!A1:Sheet1:B2" ever valid?
             // FormulaParser has code to handle that.
 
-            throw new RuntimeException("Unexpected " + SHEET_NAME_DELIMITER
+            throw new IllegalStateException("Unexpected " + SHEET_NAME_DELIMITER
                     + " in second cell reference of '" + reference + "'");
         }
 
index d76f20660a2cec6b0cc543fcad8fffd18faa3e5e..4aad2e784b65c04c59fc522c4db942f75b71b9d0 100644 (file)
@@ -93,10 +93,10 @@ public class CellRangeAddressList implements GenericRecord {
     }
     public CellRangeAddress remove(int rangeIndex) {
         if (_list.isEmpty()) {
-            throw new RuntimeException("List is empty");
+            throw new IllegalStateException("List is empty");
         }
         if (rangeIndex < 0 || rangeIndex >= _list.size()) {
-            throw new RuntimeException("Range index (" + rangeIndex
+            throw new IllegalStateException("Range index (" + rangeIndex
                     + ") is outside allowable range (0.." + (_list.size()-1) + ")");
         }
         return _list.remove(rangeIndex);
index c3a7afa1e9cc10564791aa7b9c8c6095964f18ed..50bf7a42504d6be8f863c7be3ccc33df41f5eef8 100644 (file)
@@ -164,7 +164,7 @@ public final class CellRangeUtil {
                 // range2 encloses range1, so replace it with the enclosing one
                 return new CellRangeAddress[] { range2 };
         }
-        throw new RuntimeException("unexpected intersection result (" + x + ")");
+        throw new IllegalStateException("unexpected intersection result (" + x + ")");
     }
 
     private static CellRangeAddress[] toArray(List<CellRangeAddress> temp) {
index a7cd5af45638214cb09e367717433664b30a335a..25a3eb963c479b09deffb4ff180831338077abe0 100644 (file)
@@ -167,7 +167,7 @@ public final class NumberToTextConverter {
         NormalisedDecimal rnd = pnd.roundUnits();
         int decExponent = rnd.getDecimalExponent();
         String decimalDigits;
-        if (Math.abs(decExponent)>98) {
+        if (Math.abs(decExponent) > 98) {
             decimalDigits = rnd.getSignificantDecimalDigitsLastDigitRounded();
             if (decimalDigits.length() == 16) {
                 // rounding caused carry
@@ -176,7 +176,7 @@ public final class NumberToTextConverter {
         } else {
             decimalDigits = rnd.getSignificantDecimalDigits();
         }
-        int countSigDigits = countSignifantDigits(decimalDigits);
+        int countSigDigits = countSignificantDigits(decimalDigits);
         if (decExponent < 0) {
             formatLessThanOne(sb, decimalDigits, decExponent, countSigDigits);
         } else {
@@ -236,12 +236,12 @@ public final class NumberToTextConverter {
         return nDigits > MAX_TEXT_LEN;
     }
 
-    private static int countSignifantDigits(String sb) {
-        int result=sb.length()-1;
+    private static int countSignificantDigits(String sb) {
+        int result = sb.length()-1;
         while(sb.charAt(result) == '0') {
             result--;
-            if(result < 0) {
-                throw new RuntimeException("No non-zero digits found");
+            if (result < 0) {
+                throw new IllegalStateException("No non-zero digits found");
             }
         }
         return result + 1;
index c6a5fb4f73f80ab230528198959ebbf3312704b5..0e7266c4b5e2fe22bf2e1841c8234027b39c1a7c 100644 (file)
@@ -134,7 +134,7 @@ public class HexRead {
         try {
             return readData(new ByteArrayInputStream( data.getBytes(StringUtil.UTF8) ), -1);
         } catch (IOException e) {
-            throw new RuntimeException(e);
+            throw new IllegalStateException(e);
         }
     }
 
index 66fec9473cb72cb0ca76299dd0efd0ef4614a92f..7c8427bcfee8e9b94ed7c43f49eff91c5c5a725d 100644 (file)
@@ -429,7 +429,7 @@ public final class IOUtils {
     public static long copy(InputStream srcStream, File destFile) throws IOException {
         File destDirectory = destFile.getParentFile();
         if (!(destDirectory.exists() || destDirectory.mkdirs())) {
-            throw new RuntimeException("Can't create destination directory: "+destDirectory);
+            throw new IllegalStateException("Can't create destination directory: "+destDirectory);
         }
         try (OutputStream destStream = new FileOutputStream(destFile)) {
             return IOUtils.copy(srcStream, destStream);
index 446c644f7524c95016f2cfda41e5e600f31e2dc7..63cb50699ce502ef7f63e0602d2d9dc1014efd5f 100644 (file)
@@ -46,7 +46,7 @@ public final class LittleEndianByteArrayOutputStream extends OutputStream implem
 
     private void checkPosition(int i) {
         if (i > _endIndex - _writeIndex) {
-            throw new RuntimeException("Buffer overrun");
+            throw new IllegalStateException("Buffer overrun");
         }
     }
 
index 459520cf556422c63eb34402d04a8d25bd49cee9..e6d1a84cb79c7ee64c60303caca415453595974e 100644 (file)
@@ -46,7 +46,7 @@ public class LittleEndianInputStream extends FilterInputStream implements Little
         try {
             return super.available();
         } catch (IOException e) {
-            throw new RuntimeException(e);
+            throw new IllegalStateException(e);
         }
     }
 
@@ -61,7 +61,7 @@ public class LittleEndianInputStream extends FilterInputStream implements Little
         try {
             checkEOF(read(buf), 1);
         } catch (IOException e) {
-            throw new RuntimeException(e);
+            throw new IllegalStateException(e);
         }
         return LittleEndian.getUByte(buf);
     }
@@ -88,7 +88,7 @@ public class LittleEndianInputStream extends FilterInputStream implements Little
         try {
             checkEOF(read(buf), buf.length);
         } catch (IOException e) {
-            throw new RuntimeException(e);
+            throw new IllegalStateException(e);
         }
         return LittleEndian.getInt(buf);
     }
@@ -112,7 +112,7 @@ public class LittleEndianInputStream extends FilterInputStream implements Little
         try {
             checkEOF(read(buf), LittleEndianConsts.LONG_SIZE);
         } catch (IOException e) {
-            throw new RuntimeException(e);
+            throw new IllegalStateException(e);
         }
         return LittleEndian.getLong(buf);
     }
@@ -128,14 +128,14 @@ public class LittleEndianInputStream extends FilterInputStream implements Little
         try {
             checkEOF(read(buf), LittleEndianConsts.SHORT_SIZE);
         } catch (IOException e) {
-            throw new RuntimeException(e);
+            throw new IllegalStateException(e);
         }
         return LittleEndian.getUShort(buf);
     }
 
     private static void checkEOF(int actualBytes, int expectedBytes) {
         if (expectedBytes != 0 && (actualBytes == -1 || actualBytes != expectedBytes)) {
-            throw new RuntimeException("Unexpected end-of-file");
+            throw new IllegalStateException("Unexpected end-of-file");
         }
     }
 
@@ -149,7 +149,7 @@ public class LittleEndianInputStream extends FilterInputStream implements Little
         try {
             checkEOF(_read(buf, off, len), len);
         } catch (IOException e) {
-            throw new RuntimeException(e);
+            throw new IllegalStateException(e);
         }
     }
 
index 156b2e2e82f32b48c394ebd814527ab569f6275c..e3a76cfbf63a97180f53a9697cc07bdf81374de9 100644 (file)
@@ -31,7 +31,7 @@ public final class LittleEndianOutputStream extends FilterOutputStream implement
         try {
             out.write(v);
         } catch (IOException e) {
-            throw new RuntimeException(e);
+            throw new IllegalStateException(e);
         }
     }
 
@@ -52,7 +52,7 @@ public final class LittleEndianOutputStream extends FilterOutputStream implement
             out.write(b2);
             out.write(b3);
         } catch (IOException e) {
-            throw new RuntimeException(e);
+            throw new IllegalStateException(e);
         }
     }
 
@@ -70,7 +70,7 @@ public final class LittleEndianOutputStream extends FilterOutputStream implement
             out.write(b0);
             out.write(b1);
         } catch (IOException e) {
-            throw new RuntimeException(e);
+            throw new IllegalStateException(e);
         }
     }
     @Override
@@ -79,7 +79,7 @@ public final class LittleEndianOutputStream extends FilterOutputStream implement
         try {
             super.write(b);
         } catch (IOException e) {
-            throw new RuntimeException(e);
+            throw new IllegalStateException(e);
         }
     }
     @Override
@@ -88,7 +88,7 @@ public final class LittleEndianOutputStream extends FilterOutputStream implement
         try {
             super.write(b, off, len);
         } catch (IOException e) {
-            throw new RuntimeException(e);
+            throw new IllegalStateException(e);
         }
     }
 
@@ -106,7 +106,7 @@ public final class LittleEndianOutputStream extends FilterOutputStream implement
             out.write( (byte) ( ( value >>> 16 ) & 0xFF ) );
             out.write( (byte) ( ( value >>> 24 ) & 0xFF ) );
         } catch (IOException e) {
-            throw new RuntimeException(e);
+            throw new IllegalStateException(e);
         }
     }
 
@@ -121,7 +121,7 @@ public final class LittleEndianOutputStream extends FilterOutputStream implement
             out.write( (byte) ( ( value ) & 0xFF ) );
             out.write( (byte) ( ( value >>> 8 ) & 0xFF ) );
         } catch (IOException e) {
-            throw new RuntimeException(e);
+            throw new IllegalStateException(e);
         }
     }
 }
index a5ebc6db83f372a7fec8437bc22259b47101d763..5eb218ecd4704423106f92f724d1b32ada8a50c6 100644 (file)
@@ -166,7 +166,7 @@ public final class XMLHelper {
             throw re;
         } catch (Exception e) {
             logThrowable(e, "Failed to create SAXParserFactory", "-");
-            throw new RuntimeException("Failed to create SAXParserFactory", e);
+            throw new IllegalStateException("Failed to create SAXParserFactory", e);
         }
     }