support "flat" and "deep" type detection of a given document
A "flat" detection means specifying the document format by using
the URL and some configuration data only. That will perform but produce
may invalid results if e.g., the extension of the document is wrong.
A "deep" detection means looking into the document stream to be right
which format it supports. Of course that includes a "flat" detection before.
The combination of both ones should produce stable results everytime.
make a "deep" detection or optional a "flat" detection by using a
Instead of XTypeDetection::queryTypeByURL() this function
use a MediaDescriptor to specify the document for detection.
Such descriptor hold different informations about the document.
He will be passed to any part of made detection process and every part
can change it to actualize it.
The property MediaDescriptor::URL should be set on
this descriptor as minimum. It specifies the location of the document.
If this parameter is missing another one is required: MediaDescriptor::InputStream.
This can be usefull to prevent operaton against multiple opening of the stream
and perform the operation. If this stream isn't already included the detection
will open it (if allowed!) and add it to the descriptor so it will be available for
all following parts.
A combination of both parameters can be usefull to perform the operation
and make results more stable; but only one of them is required.
Of course its possible to specify more document properties (e.g.
As an additional feature it's possible to suppress "deep" detection by using argument
Apache, OpenOffice, OpenOffice.org and the seagull logo are registered trademarks of The Apache Software Foundation.
The Apache feather logo is a trademark of The Apache Software Foundation.
Other names appearing on the site may be trademarks of their respective owners.