1.0 KiB
1.0 KiB
import Kreuzberg
final class PdfOnlyProcessor: PostProcessor {
func name() -> String {
"pdf-only-processor"
}
func version() -> String {
"1.0.0"
}
func processingStage() -> String {
"middle" // ProcessingStage enum name
}
func priority() -> Int32 {
50 // Default priority
}
func process(result: ExtractionResult, config: ExtractionConfig) -> String {
// Returns JSON-encoded Result<(), String>
// No-op post-processor for PDF-only processing
"{\"ok\": null}"
}
func shouldProcess(result: ExtractionResult, config: ExtractionConfig) -> Bool {
result.mimeType() == "application/pdf"
}
func estimatedDurationMs(result: ExtractionResult) -> UInt64 {
0 // No processing overhead
}
func initialize() -> String {
"{\"ok\": null}"
}
func shutdown() -> String {
"{\"ok\": null}"
}
}
let processor = PdfOnlyProcessor()
try Kreuzberg.registerPostProcessor(processor)