Files
fil/docs/snippets/csharp/plugins/plugin_extractor.md
Henrik Jess Nielsen b4c07d3693
All checks were successful
Deploy fil (kreuzberg) / deploy (push) Successful in 49s
Nomad changes
2026-06-01 23:40:55 +02:00

51 lines
1.2 KiB
Markdown

```csharp title="C#"
using Kreuzberg;
var extractor = new CustomTextExtractor();
KreuzbergLib.RegisterDocumentExtractor(extractor);
public class CustomTextExtractor : IDocumentExtractor
{
public string Name => "custom-text-extractor";
public string Version => "1.0.0";
public void Initialize()
{
Console.WriteLine("Custom text extractor initialized");
}
public void Shutdown()
{
Console.WriteLine("Custom text extractor shut down");
}
public ExtractionResult ExtractBytes(byte[] content, string mimeType, ExtractionConfig config)
{
var text = System.Text.Encoding.UTF8.GetString(content);
return new ExtractionResult
{
Content = text.ToUpper(),
MimeType = mimeType,
DetectedLanguages = null
};
}
public ExtractionResult ExtractFile(string path, string mimeType, ExtractionConfig config)
{
var content = System.IO.File.ReadAllBytes(path);
return ExtractBytes(content, mimeType, config);
}
public string[] SupportedMimeTypes()
{
return new[] { "text/plain" };
}
public int Priority()
{
return 50;
}
}
```