Search in sources :

Example 1 with TIFFImageReaderSpi

use of com.github.jaiimageio.impl.plugins.tiff.TIFFImageReaderSpi in project ddf by codice.

the class TikaInputTransformer method classLoaderAndBundleContextSetup.

private void classLoaderAndBundleContextSetup(BundleContext bundleContext) {
    ClassLoader tccl = Thread.currentThread().getContextClassLoader();
    try (InputStream stream = TikaMetadataExtractor.class.getResourceAsStream("/metadata.xslt")) {
        Thread.currentThread().setContextClassLoader(getClass().getClassLoader());
        templates = TransformerFactory.newInstance(net.sf.saxon.TransformerFactoryImpl.class.getName(), net.sf.saxon.TransformerFactoryImpl.class.getClassLoader()).newTemplates(new StreamSource(stream));
    } catch (TransformerConfigurationException e) {
        LOGGER.debug("Couldn't create XML transformer", e);
    } catch (IOException e) {
        LOGGER.debug("Could not get Tiki metadata XSLT", e);
    } finally {
        Thread.currentThread().setContextClassLoader(tccl);
    }
    if (bundleContext == null) {
        LOGGER.info("Bundle context is null. Unable to register {} as an osgi service.", TikaInputTransformer.class.getSimpleName());
        return;
    }
    registerService(bundleContext);
    IIORegistry.getDefaultInstance().registerServiceProvider(new J2KImageReaderSpi());
    IIORegistry.getDefaultInstance().registerServiceProvider(new TIFFImageReaderSpi());
}
Also used : TransformerConfigurationException(javax.xml.transform.TransformerConfigurationException) CloseShieldInputStream(org.apache.tika.io.CloseShieldInputStream) InputStream(java.io.InputStream) StreamSource(javax.xml.transform.stream.StreamSource) IOException(java.io.IOException) J2KImageReaderSpi(com.github.jaiimageio.jpeg2000.impl.J2KImageReaderSpi) TIFFImageReaderSpi(com.github.jaiimageio.impl.plugins.tiff.TIFFImageReaderSpi)

Aggregations

TIFFImageReaderSpi (com.github.jaiimageio.impl.plugins.tiff.TIFFImageReaderSpi)1 J2KImageReaderSpi (com.github.jaiimageio.jpeg2000.impl.J2KImageReaderSpi)1 IOException (java.io.IOException)1 InputStream (java.io.InputStream)1 TransformerConfigurationException (javax.xml.transform.TransformerConfigurationException)1 StreamSource (javax.xml.transform.stream.StreamSource)1 CloseShieldInputStream (org.apache.tika.io.CloseShieldInputStream)1