diff --git a/src/java/org/apache/poi/ss/formula/ptg/ExternSheetNameResolver.java b/src/java/org/apache/poi/ss/formula/ptg/ExternSheetNameResolver.java index be20167ed..a6cb76022 100644 --- a/src/java/org/apache/poi/ss/formula/ptg/ExternSheetNameResolver.java +++ b/src/java/org/apache/poi/ss/formula/ptg/ExternSheetNameResolver.java @@ -25,36 +25,35 @@ import org.apache.poi.ss.formula.SheetNameFormatter; * @author Josh Micich */ final class ExternSheetNameResolver { + private ExternSheetNameResolver() { + // no instances of this class + } - private ExternSheetNameResolver() { - // no instances of this class - } - - public static String prependSheetName(FormulaRenderingWorkbook book, int field_1_index_extern_sheet, String cellRefText) { - ExternalSheet externalSheet = book.getExternalSheet(field_1_index_extern_sheet); - StringBuffer sb; - if (externalSheet != null) { - String wbName = externalSheet.getWorkbookName(); - String sheetName = externalSheet.getSheetName(); - if (wbName != null) { - sb = new StringBuffer(wbName.length() + sheetName.length() + cellRefText.length() + 4); - SheetNameFormatter.appendFormat(sb, wbName, sheetName); - } else { + public static String prependSheetName(FormulaRenderingWorkbook book, int field_1_index_extern_sheet, String cellRefText) { + ExternalSheet externalSheet = book.getExternalSheet(field_1_index_extern_sheet); + StringBuffer sb; + if (externalSheet != null) { + String wbName = externalSheet.getWorkbookName(); + String sheetName = externalSheet.getSheetName(); + if (wbName != null) { + sb = new StringBuffer(wbName.length() + sheetName.length() + cellRefText.length() + 4); + SheetNameFormatter.appendFormat(sb, wbName, sheetName); + } else { sb = new StringBuffer(sheetName.length() + cellRefText.length() + 4); SheetNameFormatter.appendFormat(sb, sheetName); - } - } else { - String sheetName = book.getSheetNameByExternSheet(field_1_index_extern_sheet); - sb = new StringBuffer(sheetName.length() + cellRefText.length() + 4); - if (sheetName.length() < 1) { - // What excel does if sheet has been deleted - sb.append("#REF"); // note - '!' added just once below - } else { - SheetNameFormatter.appendFormat(sb, sheetName); - } - } - sb.append('!'); - sb.append(cellRefText); - return sb.toString(); - } + } + } else { + String sheetName = book.getSheetNameByExternSheet(field_1_index_extern_sheet); + sb = new StringBuffer(sheetName.length() + cellRefText.length() + 4); + if (sheetName.length() < 1) { + // What excel does if sheet has been deleted + sb.append("#REF"); // note - '!' added just once below + } else { + SheetNameFormatter.appendFormat(sb, sheetName); + } + } + sb.append('!'); + sb.append(cellRefText); + return sb.toString(); + } } diff --git a/src/testcases/org/apache/poi/hssf/eventusermodel/TestEventWorkbookBuilder.java b/src/testcases/org/apache/poi/hssf/eventusermodel/TestEventWorkbookBuilder.java index e7869755a..1b02cf241 100644 --- a/src/testcases/org/apache/poi/hssf/eventusermodel/TestEventWorkbookBuilder.java +++ b/src/testcases/org/apache/poi/hssf/eventusermodel/TestEventWorkbookBuilder.java @@ -39,130 +39,130 @@ import org.apache.poi.ss.formula.ptg.Ref3DPtg; * Tests for {@link EventWorkbookBuilder} */ public final class TestEventWorkbookBuilder extends TestCase { - private MockHSSFListener mockListen; - private SheetRecordCollectingListener listener; + private MockHSSFListener mockListen; + private SheetRecordCollectingListener listener; - @Override - public void setUp() { - HSSFRequest req = new HSSFRequest(); - mockListen = new MockHSSFListener(); - listener = new SheetRecordCollectingListener(mockListen); - req.addListenerForAllRecords(listener); + @Override + public void setUp() { + HSSFRequest req = new HSSFRequest(); + mockListen = new MockHSSFListener(); + listener = new SheetRecordCollectingListener(mockListen); + req.addListenerForAllRecords(listener); - HSSFEventFactory factory = new HSSFEventFactory(); - try { - InputStream is = HSSFTestDataSamples.openSampleFileStream("3dFormulas.xls"); - POIFSFileSystem fs = new POIFSFileSystem(is); - factory.processWorkbookEvents(req, fs); - } catch (IOException e) { - throw new RuntimeException(e); - } - } + HSSFEventFactory factory = new HSSFEventFactory(); + try { + InputStream is = HSSFTestDataSamples.openSampleFileStream("3dFormulas.xls"); + POIFSFileSystem fs = new POIFSFileSystem(is); + factory.processWorkbookEvents(req, fs); + } catch (IOException e) { + throw new RuntimeException(e); + } + } - public void testBasics() { - assertNotNull(listener.getSSTRecord()); - assertNotNull(listener.getBoundSheetRecords()); - assertNotNull(listener.getExternSheetRecords()); - } + public void testBasics() { + assertNotNull(listener.getSSTRecord()); + assertNotNull(listener.getBoundSheetRecords()); + assertNotNull(listener.getExternSheetRecords()); + } - public void testGetStubWorkbooks() { - assertNotNull(listener.getStubWorkbook()); - assertNotNull(listener.getStubHSSFWorkbook()); - } + public void testGetStubWorkbooks() { + assertNotNull(listener.getStubWorkbook()); + assertNotNull(listener.getStubHSSFWorkbook()); + } - public void testContents() { - assertEquals(2, listener.getSSTRecord().getNumStrings()); - assertEquals(3, listener.getBoundSheetRecords().length); - assertEquals(1, listener.getExternSheetRecords().length); + public void testContents() { + assertEquals(2, listener.getSSTRecord().getNumStrings()); + assertEquals(3, listener.getBoundSheetRecords().length); + assertEquals(1, listener.getExternSheetRecords().length); - assertEquals(3, listener.getStubWorkbook().getNumSheets()); + assertEquals(3, listener.getStubWorkbook().getNumSheets()); - InternalWorkbook ref = listener.getStubWorkbook(); - assertEquals("Sh3", ref.findSheetNameFromExternSheet(0)); - assertEquals("Sheet1", ref.findSheetNameFromExternSheet(1)); - assertEquals("S2", ref.findSheetNameFromExternSheet(2)); - } + InternalWorkbook ref = listener.getStubWorkbook(); + assertEquals("Sh3", ref.findSheetNameFromExternSheet(0)); + assertEquals("Sheet1", ref.findSheetNameFromExternSheet(1)); + assertEquals("S2", ref.findSheetNameFromExternSheet(2)); + } - public void testFormulas() { + public void testFormulas() { - FormulaRecord[] fRecs = mockListen.getFormulaRecords(); + FormulaRecord[] fRecs = mockListen.getFormulaRecords(); - // Check our formula records - assertEquals(6, fRecs.length); + // Check our formula records + assertEquals(6, fRecs.length); - InternalWorkbook stubWB = listener.getStubWorkbook(); - assertNotNull(stubWB); - HSSFWorkbook stubHSSF = listener.getStubHSSFWorkbook(); - assertNotNull(stubHSSF); + InternalWorkbook stubWB = listener.getStubWorkbook(); + assertNotNull(stubWB); + HSSFWorkbook stubHSSF = listener.getStubHSSFWorkbook(); + assertNotNull(stubHSSF); - // Check these stubs have the right stuff on them - assertEquals("Sheet1", stubWB.getSheetName(0)); + // Check these stubs have the right stuff on them + assertEquals("Sheet1", stubWB.getSheetName(0)); assertEquals("Sheet1", stubHSSF.getSheetName(0)); - assertEquals("S2", stubWB.getSheetName(1)); + assertEquals("S2", stubWB.getSheetName(1)); assertEquals("S2", stubHSSF.getSheetName(1)); - assertEquals("Sh3", stubWB.getSheetName(2)); + assertEquals("Sh3", stubWB.getSheetName(2)); assertEquals("Sh3", stubHSSF.getSheetName(2)); - // Check we can get the formula without breaking - for(int i=0; i _records = new ArrayList(); - private final List _frecs = new ArrayList(); + private static final class MockHSSFListener implements HSSFListener { + public MockHSSFListener() {} + private final List _records = new ArrayList(); + private final List _frecs = new ArrayList(); - public void processRecord(Record record) { - _records.add(record); - if(record instanceof FormulaRecord) { - _frecs.add(record); - } - } - public FormulaRecord[] getFormulaRecords() { - FormulaRecord[] result = new FormulaRecord[_frecs.size()]; - _frecs.toArray(result); - return result; - } - } + public void processRecord(Record record) { + _records.add(record); + if(record instanceof FormulaRecord) { + _frecs.add(record); + } + } + public FormulaRecord[] getFormulaRecords() { + FormulaRecord[] result = new FormulaRecord[_frecs.size()]; + _frecs.toArray(result); + return result; + } + } }