Last bit of reflection - get back to the full OOXML-enabled factory if we can
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1752228 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
4643b2ade0
commit
90e8b0f5b0
@ -126,8 +126,15 @@ public class OLE2ExtractorFactory {
|
||||
public static POITextExtractor createExtractor(InputStream input) throws IOException {
|
||||
Class<?> cls = getOOXMLClass();
|
||||
if (cls != null) {
|
||||
// TODO Reflection
|
||||
throw new IllegalArgumentException("TODO Reflection");
|
||||
// Use Reflection to get us the full OOXML-enabled version
|
||||
try {
|
||||
Method m = cls.getDeclaredMethod("createExtractor", InputStream.class);
|
||||
return (POITextExtractor)m.invoke(null, input);
|
||||
} catch (IllegalArgumentException iae) {
|
||||
throw iae;
|
||||
} catch (Exception e) {
|
||||
throw new IllegalArgumentException("Error creating Extractor for InputStream", e);
|
||||
}
|
||||
} else {
|
||||
// Best hope it's OLE2....
|
||||
return createExtractor(new NPOIFSFileSystem(input));
|
||||
|
Loading…
Reference in New Issue
Block a user