diff --git a/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFCellStyle.java b/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFCellStyle.java
index b221bf5491..8d37d10709 100644
--- a/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFCellStyle.java
+++ b/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFCellStyle.java
@@ -833,12 +833,15 @@ public class XSSFCellStyle implements CellStyle, Duplicatable {
* Set the background fill color represented as a {@link org.apache.poi.ss.usermodel.Color} value.
*
* @param color the color to use
+ * @throws IllegalArgumentException if you provide a Color instance that is not a {@link XSSFColor}
* @since POI 5.2.3
*/
@Override
public void setFillBackgroundColor(org.apache.poi.ss.usermodel.Color color) {
if (color instanceof XSSFColor) {
setFillBackgroundColor((XSSFColor)color);
+ } else {
+ throw new IllegalArgumentException("XSSFCellStyle only accepts XSSFColor instances");
}
}
@@ -900,12 +903,15 @@ public class XSSFCellStyle implements CellStyle, Duplicatable {
* Set the foreground fill color represented as a {@link org.apache.poi.ss.usermodel.Color} value.
*
* @param color the color to use
+ * @throws IllegalArgumentException if you provide a Color instance that is not a {@link XSSFColor}
* @since POI 5.2.3
*/
@Override
public void setFillForegroundColor(org.apache.poi.ss.usermodel.Color color) {
if (color instanceof XSSFColor) {
setFillForegroundColor((XSSFColor)color);
+ } else {
+ throw new IllegalArgumentException("XSSFCellStyle only accepts XSSFColor instances");
}
}
diff --git a/poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFCellStyle.java b/poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFCellStyle.java
index 9bb826d56a..bff242f0c4 100644
--- a/poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFCellStyle.java
+++ b/poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFCellStyle.java
@@ -642,6 +642,7 @@ public final class HSSFCellStyle implements CellStyle, Duplicatable {
* Set the background fill color represented as a {@link org.apache.poi.ss.usermodel.Color} value.
*
* @param color the color to use
+ * @throws IllegalArgumentException if you provide a Color instance that is not a {@link HSSFColor}
* @since POI 5.2.3
*/
@Override
@@ -650,6 +651,8 @@ public final class HSSFCellStyle implements CellStyle, Duplicatable {
if (color instanceof HSSFColor) {
short index2 = ((HSSFColor)color).getIndex2();
if (index2 != -1) setFillBackgroundColor(index2);
+ } else {
+ throw new IllegalArgumentException("HSSFCellStyle only accepts HSSFColor instances");
}
}
@@ -698,6 +701,7 @@ public final class HSSFCellStyle implements CellStyle, Duplicatable {
* Set the foreground fill color represented as a {@link org.apache.poi.ss.usermodel.Color} value.
*
* @param color the color to use
+ * @throws IllegalArgumentException if you provide a Color instance that is not a {@link HSSFColor}
* @since POI 5.2.3
*/
@Override
@@ -706,6 +710,8 @@ public final class HSSFCellStyle implements CellStyle, Duplicatable {
if (color instanceof HSSFColor) {
short index2 = ((HSSFColor)color).getIndex2();
if (index2 != -1) setFillForegroundColor(index2);
+ } else {
+ throw new IllegalArgumentException("HSSFCellStyle only accepts HSSFColor instances");
}
}