Kaynağa Gözat

bug 58775: use short for data format index, int for cell style index

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1721930 13f79535-47bb-0310-9956-ffa450edef68
tags/REL_3_14_FINAL
Javen O'Neal 8 yıl önce
ebeveyn
işleme
cac40dd101

+ 4
- 5
src/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java Dosyayı Görüntüle

@@ -1322,11 +1322,10 @@ public final class HSSFWorkbook extends POIDocument implements org.apache.poi.ss
* get the number of styles the workbook contains
* @return count of cell styles
*/

@Override
public short getNumCellStyles()
public int getNumCellStyles()
{
return (short) workbook.getNumExFormats();
return workbook.getNumExFormats();
}

/**
@@ -1335,10 +1334,10 @@ public final class HSSFWorkbook extends POIDocument implements org.apache.poi.ss
* @return HSSFCellStyle object at the index
*/
@Override
public HSSFCellStyle getCellStyleAt(short idx)
public HSSFCellStyle getCellStyleAt(int idx)
{
ExtendedFormatRecord xfr = workbook.getExFormatAt(idx);
HSSFCellStyle style = new HSSFCellStyle(idx, xfr, this);
HSSFCellStyle style = new HSSFCellStyle((short)idx, xfr, this);

return style;
}

+ 2
- 2
src/java/org/apache/poi/ss/usermodel/Workbook.java Dosyayı Görüntüle

@@ -344,7 +344,7 @@ public interface Workbook extends Closeable, Iterable<Sheet> {
*
* @return count of cell styles
*/
short getNumCellStyles();
int getNumCellStyles();

/**
* Get the cell style object at the given index
@@ -352,7 +352,7 @@ public interface Workbook extends Closeable, Iterable<Sheet> {
* @param idx index within the set of styles (0-based)
* @return CellStyle object at the index
*/
CellStyle getCellStyleAt(short idx);
CellStyle getCellStyleAt(int idx);

/**
* Write out this workbook to an Outputstream.

+ 2
- 2
src/java/org/apache/poi/ss/util/CellUtil.java Dosyayı Görüntüle

@@ -189,9 +189,9 @@ public final class CellUtil {

// index seems like what index the cellstyle is in the list of styles for a workbook.
// not good to compare on!
short numberCellStyles = workbook.getNumCellStyles();
int numberCellStyles = workbook.getNumCellStyles();

for (short i = 0; i < numberCellStyles; i++) {
for (int i = 0; i < numberCellStyles; i++) {
CellStyle wbStyle = workbook.getCellStyleAt(i);
Map<String, Object> wbStyleMap = getFormatProperties(wbStyle);


+ 2
- 2
src/ooxml/java/org/apache/poi/xssf/streaming/SXSSFWorkbook.java Dosyayı Görüntüle

@@ -877,7 +877,7 @@ public class SXSSFWorkbook implements Workbook {
* @return count of cell styles
*/
@Override
public short getNumCellStyles()
public int getNumCellStyles()
{
return _wb.getNumCellStyles();
}
@@ -889,7 +889,7 @@ public class SXSSFWorkbook implements Workbook {
* @return CellStyle object at the index
*/
@Override
public CellStyle getCellStyleAt(short idx)
public CellStyle getCellStyleAt(int idx)
{
return _wb.getCellStyleAt(idx);
}

+ 2
- 13
src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFWorkbook.java Dosyayı Görüntüle

@@ -853,16 +853,6 @@ public class XSSFWorkbook extends POIXMLDocument implements Workbook {
return pictures; //YK: should return Collections.unmodifiableList(pictures);
}

/**
* Get the cell style object at the given index
*
* @param idx index within the set of styles
* @return XSSFCellStyle object at the index
*/
@Override
public XSSFCellStyle getCellStyleAt(short idx) {
return getCellStyleAt(idx&0xffff);
}
/**
* Get the cell style object at the given index
*
@@ -931,9 +921,8 @@ public class XSSFWorkbook extends POIXMLDocument implements Workbook {
*
* @return count of cell styles
*/
@Override
public short getNumCellStyles() {
return (short) (stylesSource).getNumCellStyles();
public int getNumCellStyles() {
return stylesSource.getNumCellStyles();
}

/**

+ 2
- 0
src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFBugs.java Dosyayı Görüntüle

@@ -2507,6 +2507,7 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
XSSFCellStyle style = wb.createCellStyle();
assertEquals(i, style.getUIndex());
}
assertEquals(numStyles, wb.getNumCellStyles());

// avoid OOM in gump run
File file = XSSFTestDataSamples.writeOutAndClose(wb, "bug57880");
@@ -2522,6 +2523,7 @@ public final class TestXSSFBugs extends BaseTestBugzillaIssues {
//Assume identical cell styles aren't consolidated
//If XSSFWorkbooks ever implicitly optimize/consolidate cell styles (such as when the workbook is written to disk)
//then this unit test should be updated
assertEquals(numStyles, wb.getNumCellStyles());
for (int i=1; i<numStyles; i++) {
XSSFCellStyle style = wb.getCellStyleAt(i);
assertNotNull(style);

+ 2
- 2
src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFCellStyle.java Dosyayı Görüntüle

@@ -1019,9 +1019,9 @@ public class TestXSSFCellStyle {
}

public static void copyStyles(Workbook reference, Workbook target) {
final short numberOfStyles = reference.getNumCellStyles();
final int numberOfStyles = reference.getNumCellStyles();
// don't copy default style (style index 0)
for (short i = 1; i < numberOfStyles; i++) {
for (int i = 1; i < numberOfStyles; i++) {
final CellStyle referenceStyle = reference.getCellStyleAt(i);
final CellStyle targetStyle = target.createCellStyle();
targetStyle.cloneStyleFrom(referenceStyle);

+ 1
- 2
src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFWorkbook.java Dosyayı Görüntüle

@@ -225,9 +225,8 @@ public final class TestXSSFWorkbook extends BaseTestWorkbook {
public void getNumCellStyles() throws IOException{
XSSFWorkbook workbook = new XSSFWorkbook();
try {
short i = workbook.getNumCellStyles();
//get default cellStyles
assertEquals(1, i);
assertEquals(1, workbook.getNumCellStyles());
} finally {
workbook.close();
}

+ 2
- 2
src/testcases/org/apache/poi/hssf/usermodel/TestBugs.java Dosyayı Görüntüle

@@ -2006,7 +2006,7 @@ public final class TestBugs extends BaseTestBugzillaIssues {
@Test
public void bug49751() throws Exception {
HSSFWorkbook wb = openSample("49751.xls");
short numCellStyles = wb.getNumCellStyles();
int numCellStyles = wb.getNumCellStyles();
List<String> namedStyles = Arrays.asList(
"20% - Accent1", "20% - Accent2", "20% - Accent3", "20% - Accent4", "20% - Accent5",
"20% - Accent6", "40% - Accent1", "40% - Accent2", "40% - Accent3", "40% - Accent4",
@@ -2017,7 +2017,7 @@ public final class TestBugs extends BaseTestBugzillaIssues {
"Neutral", "Note", "Output", "Title", "Total", "Warning Text");

List<String> collecteddStyles = new ArrayList<String>();
for (short i = 0; i < numCellStyles; i++) {
for (int i = 0; i < numCellStyles; i++) {
HSSFCellStyle cellStyle = wb.getCellStyleAt(i);
String styleName = cellStyle.getUserStyleName();
if (styleName != null) {

Loading…
İptal
Kaydet