git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1725039 13f79535-47bb-0310-9956-ffa450edef68tags/REL_3_14_FINAL
@@ -76,6 +76,7 @@ import org.apache.poi.poifs.filesystem.FilteringDirectoryNode; | |||
import org.apache.poi.poifs.filesystem.NPOIFSFileSystem; | |||
import org.apache.poi.poifs.filesystem.Ole10Native; | |||
import org.apache.poi.poifs.filesystem.POIFSFileSystem; | |||
import org.apache.poi.ss.SpreadsheetVersion; | |||
import org.apache.poi.ss.formula.FormulaShifter; | |||
import org.apache.poi.ss.formula.FormulaType; | |||
import org.apache.poi.ss.formula.SheetNameFormatter; | |||
@@ -2152,4 +2153,15 @@ public final class HSSFWorkbook extends POIDocument implements org.apache.poi.ss | |||
public InternalWorkbook getInternalWorkbook() { | |||
return workbook; | |||
} | |||
/** | |||
* Returns the spreadsheet version (EXCLE97) of this workbook | |||
* | |||
* @return EXCEL97 SpreadsheetVersion enum | |||
* @since 3.14 beta 2 | |||
*/ | |||
@Override | |||
public SpreadsheetVersion getSpreadsheetVersion() { | |||
return SpreadsheetVersion.EXCEL97; | |||
} | |||
} |
@@ -23,6 +23,7 @@ import java.io.OutputStream; | |||
import java.util.Iterator; | |||
import java.util.List; | |||
import org.apache.poi.ss.SpreadsheetVersion; | |||
import org.apache.poi.ss.formula.udf.UDFFinder; | |||
import org.apache.poi.ss.usermodel.Row.MissingCellPolicy; | |||
import org.apache.poi.ss.util.CellRangeAddress; | |||
@@ -623,5 +624,13 @@ public interface Workbook extends Closeable, Iterable<Sheet> { | |||
* @since 3.8 | |||
*/ | |||
boolean getForceFormulaRecalculation(); | |||
/** | |||
* Returns the spreadsheet version of this workbook | |||
* | |||
* @return SpreadsheetVersion enum | |||
* @since 3.14 beta 2 | |||
*/ | |||
public SpreadsheetVersion getSpreadsheetVersion(); | |||
} |
@@ -35,6 +35,7 @@ import java.util.zip.ZipOutputStream; | |||
import org.apache.poi.openxml4j.opc.OPCPackage; | |||
import org.apache.poi.openxml4j.opc.internal.ZipHelper; | |||
import org.apache.poi.ss.SpreadsheetVersion; | |||
import org.apache.poi.ss.formula.udf.UDFFinder; | |||
import org.apache.poi.ss.usermodel.CellStyle; | |||
import org.apache.poi.ss.usermodel.CreationHelper; | |||
@@ -1325,5 +1326,16 @@ public class SXSSFWorkbook implements Workbook { | |||
return _wb.getForceFormulaRecalculation(); | |||
} | |||
/** | |||
* Returns the spreadsheet version (EXCLE2007) of this workbook | |||
* | |||
* @return EXCEL2007 SpreadsheetVersion enum | |||
* @since 3.14 beta 2 | |||
*/ | |||
@Override | |||
public SpreadsheetVersion getSpreadsheetVersion() { | |||
return SpreadsheetVersion.EXCEL2007; | |||
} | |||
//end of interface implementation | |||
} |
@@ -54,6 +54,7 @@ import org.apache.poi.openxml4j.opc.PackageRelationshipTypes; | |||
import org.apache.poi.openxml4j.opc.PackagingURIHelper; | |||
import org.apache.poi.openxml4j.opc.TargetMode; | |||
import org.apache.poi.poifs.crypt.HashAlgorithm; | |||
import org.apache.poi.ss.SpreadsheetVersion; | |||
import org.apache.poi.ss.formula.SheetNameFormatter; | |||
import org.apache.poi.ss.formula.udf.IndexedUDFFinder; | |||
import org.apache.poi.ss.formula.udf.UDFFinder; | |||
@@ -2255,4 +2256,15 @@ public class XSSFWorkbook extends POIXMLDocument implements Workbook { | |||
setVBAProject(vbaProjectStream); | |||
} | |||
} | |||
/** | |||
* Returns the spreadsheet version (EXCLE2007) of this workbook | |||
* | |||
* @return EXCEL2007 SpreadsheetVersion enum | |||
* @since 3.14 beta 2 | |||
*/ | |||
@Override | |||
public SpreadsheetVersion getSpreadsheetVersion() { | |||
return SpreadsheetVersion.EXCEL2007; | |||
} | |||
} |
@@ -30,6 +30,7 @@ import java.io.FileOutputStream; | |||
import java.io.IOException; | |||
import org.apache.poi.POITestCase; | |||
import org.apache.poi.ss.SpreadsheetVersion; | |||
import org.apache.poi.ss.usermodel.BaseTestWorkbook; | |||
import org.apache.poi.ss.usermodel.Cell; | |||
import org.apache.poi.ss.usermodel.Row; | |||
@@ -47,7 +48,7 @@ import org.junit.Ignore; | |||
import org.junit.Test; | |||
public final class TestSXSSFWorkbook extends BaseTestWorkbook { | |||
public static final SXSSFITestDataProvider _testDataProvider = SXSSFITestDataProvider.instance; | |||
private static final SXSSFITestDataProvider _testDataProvider = SXSSFITestDataProvider.instance; | |||
public TestSXSSFWorkbook() { | |||
super(_testDataProvider); | |||
@@ -435,4 +436,10 @@ public final class TestSXSSFWorkbook extends BaseTestWorkbook { | |||
streamingWorkBook.close(); | |||
workBook.close(); | |||
} | |||
@Test | |||
@Override | |||
public void getSpreadsheetVersion() throws IOException { | |||
verifySpreadsheetVersion(SpreadsheetVersion.EXCEL2007); | |||
} | |||
} |
@@ -77,9 +77,10 @@ import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTWorkbookPr; | |||
import org.openxmlformats.schemas.spreadsheetml.x2006.main.STCalcMode; | |||
public final class TestXSSFWorkbook extends BaseTestWorkbook { | |||
private static final XSSFITestDataProvider _testDataProvider = XSSFITestDataProvider.instance; | |||
public TestXSSFWorkbook() { | |||
super(XSSFITestDataProvider.instance); | |||
super(_testDataProvider); | |||
} | |||
/** | |||
@@ -1078,4 +1079,10 @@ public final class TestXSSFWorkbook extends BaseTestWorkbook { | |||
assertTrue(file.delete()); | |||
} | |||
} | |||
@Test | |||
@Override | |||
public void getSpreadsheetVersion() throws IOException { | |||
verifySpreadsheetVersion(SpreadsheetVersion.EXCEL2007); | |||
} | |||
} |
@@ -53,6 +53,7 @@ import org.apache.poi.poifs.filesystem.DirectoryEntry; | |||
import org.apache.poi.poifs.filesystem.DirectoryNode; | |||
import org.apache.poi.poifs.filesystem.NPOIFSFileSystem; | |||
import org.apache.poi.poifs.filesystem.POIFSFileSystem; | |||
import org.apache.poi.ss.SpreadsheetVersion; | |||
import org.apache.poi.ss.formula.ptg.Area3DPtg; | |||
import org.apache.poi.ss.usermodel.BaseTestWorkbook; | |||
import org.apache.poi.ss.usermodel.Name; | |||
@@ -70,8 +71,10 @@ import junit.framework.AssertionFailedError; | |||
* Tests for {@link HSSFWorkbook} | |||
*/ | |||
public final class TestHSSFWorkbook extends BaseTestWorkbook { | |||
private static final HSSFITestDataProvider _testDataProvider = HSSFITestDataProvider.instance; | |||
public TestHSSFWorkbook() { | |||
super(HSSFITestDataProvider.instance); | |||
super(_testDataProvider); | |||
} | |||
/** | |||
@@ -1253,4 +1256,10 @@ public final class TestHSSFWorkbook extends BaseTestWorkbook { | |||
fileOut.close(); | |||
} | |||
@Test | |||
@Override | |||
public void getSpreadsheetVersion() throws IOException { | |||
verifySpreadsheetVersion(SpreadsheetVersion.EXCEL97); | |||
} | |||
} |
@@ -31,6 +31,7 @@ import java.util.ConcurrentModificationException; | |||
import java.util.Iterator; | |||
import org.apache.poi.ss.ITestDataProvider; | |||
import org.apache.poi.ss.SpreadsheetVersion; | |||
import org.apache.poi.ss.util.CellRangeAddress; | |||
import org.junit.Test; | |||
@@ -822,4 +823,13 @@ public abstract class BaseTestWorkbook { | |||
b.close(); | |||
} | |||
@Test | |||
public abstract void getSpreadsheetVersion() throws IOException; | |||
protected void verifySpreadsheetVersion(SpreadsheetVersion expected) throws IOException { | |||
final Workbook wb = _testDataProvider.createWorkbook(); | |||
assertEquals(expected, wb.getSpreadsheetVersion()); | |||
wb.close(); | |||
} | |||
} |