You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by ni...@apache.org on 2016/07/11 22:57:42 UTC
svn commit: r1752228 -
/poi/trunk/src/java/org/apache/poi/extractor/OLE2ExtractorFactory.java
Author: nick
Date: Mon Jul 11 22:57:42 2016
New Revision: 1752228
URL: http://svn.apache.org/viewvc?rev=1752228&view=rev
Log:
Last bit of reflection - get back to the full OOXML-enabled factory if we can
Modified:
poi/trunk/src/java/org/apache/poi/extractor/OLE2ExtractorFactory.java
Modified: poi/trunk/src/java/org/apache/poi/extractor/OLE2ExtractorFactory.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/extractor/OLE2ExtractorFactory.java?rev=1752228&r1=1752227&r2=1752228&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/extractor/OLE2ExtractorFactory.java (original)
+++ poi/trunk/src/java/org/apache/poi/extractor/OLE2ExtractorFactory.java Mon Jul 11 22:57:42 2016
@@ -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));
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org