package com.brightgenerous.poi.delegate;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import com.brightgenerous.poi.PoiMethods;
class PoiDelegaterImpl implements PoiDelegater {
@Override
public boolean isExcel(File file) throws IOException {
try {
PoiMethods.readIfWrap(file);
return true;
} catch (InvalidFormatException e) {
throw new IOException(e);
}
}
@Override
public boolean isExcel(InputStream inputStream) throws IOException {
try {
PoiMethods.readIfWrap(inputStream);
return true;
} catch (InvalidFormatException e) {
throw new IOException(e);
}
}
@Override
public boolean isXls(File file) throws IOException {
try {
return PoiMethods.readIfWrap(file) instanceof HSSFWorkbook;
} catch (InvalidFormatException e) {
throw new IOException(e);
}
}
@Override
public boolean isXls(InputStream inputStream) throws IOException {
try {
return PoiMethods.readIfWrap(inputStream) instanceof HSSFWorkbook;
} catch (InvalidFormatException e) {
throw new IOException(e);
}
}
@Override
public boolean isXlsx(File file) throws IOException {
try {
return PoiMethods.readIfWrap(file) instanceof XSSFWorkbook;
} catch (InvalidFormatException e) {
throw new IOException(e);
}
}
@Override
public boolean isXlsx(InputStream inputStream) throws IOException {
try {
return PoiMethods.readIfWrap(inputStream) instanceof XSSFWorkbook;
} catch (InvalidFormatException e) {
throw new IOException(e);
}
}
}