1.1 KiB
1.1 KiB
import dev.kreuzberg.IDocumentExtractor;
import dev.kreuzberg.DocumentExtractorBridge;
// Java's Panama FFM binding exposes the IDocumentExtractor interface and the
// DocumentExtractorBridge.registerDocumentExtractor / unregisterDocumentExtractor
// helpers, but the InternalDocument return type is referenced from the
// interface signature without a corresponding generated Java class. Until the
// alef Java backend emits dev.kreuzberg.InternalDocument, custom Java
// DocumentExtractor implementations cannot return a value from extract_bytes /
// extract_file.
//
// Implement the extractor in Rust as `Plugin + DocumentExtractor` and register
// it via `register_document_extractor` in a Rust shim crate that links
// kreuzberg before the JVM loads the native library.