Skip to main content

Search OfficeIMO

Enter a topic, API type, or PowerShell command.

Documentation Search all OfficeIMO/

API Reference

Class

OfficeWorkflowRunner

Runs bounded local conversion and PDF health workflows and publishes validated artifacts atomically.

Inheritance

  • Object
  • OfficeWorkflowRunner

Constructors

OfficeWorkflowRunner 2 overloads
public OfficeWorkflowRunner() #

Creates a workflow runner without optional provenance providers.

public OfficeWorkflowRunner(IOfficeProvenanceVerifier provenanceVerifier, IEnumerable<IOfficeProvenanceSignalDetector> provenanceSignalDetectors = null) #

Creates a workflow runner with optional cryptographic and provider-specific provenance services.

Parameters

provenanceVerifier OfficeIMO.Provenance.IOfficeProvenanceVerifier requiredposition: 0
provenanceSignalDetectors System.Collections.Generic.IEnumerable{OfficeIMO.Provenance.IOfficeProvenanceSignalDetector} = null optionalposition: 1

Methods

public virtual async Task<PdfAssemblyResult> AssemblePdfAsync(PdfAssemblyRequest request, IProgress<OfficeWorkflowProgress> progress = null, CancellationToken cancellationToken = default) #
Returns: Task<PdfAssemblyResult>

Parameters

request OfficeIMO.Workflows.PdfAssemblyRequest requiredposition: 0
progress System.IProgress{OfficeIMO.Workflows.OfficeWorkflowProgress} = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = default optionalposition: 2
public virtual async Task<PdfPageImageExportResult> ExportPdfPagesAsync(PdfPageImageExportRequest request, IProgress<OfficeWorkflowProgress> progress = null, CancellationToken cancellationToken = default) #
Returns: Task<PdfPageImageExportResult>

Parameters

request OfficeIMO.Workflows.PdfPageImageExportRequest requiredposition: 0
progress System.IProgress{OfficeIMO.Workflows.OfficeWorkflowProgress} = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = default optionalposition: 2
public async Task<PdfSearchableWorkflowResult> MakePdfSearchableAsync(PdfSearchableWorkflowRequest request, IOcrEngine engine, CancellationToken cancellationToken = default) #
Returns: Task<PdfSearchableWorkflowResult>

Recognizes an immutable source snapshot, reopens the generated PDF, and publishes after source and host checks.

Parameters

request OfficeIMO.Workflows.PdfSearchableWorkflowRequest requiredposition: 0
engine OfficeIMO.Ocr.IOcrEngine requiredposition: 1
cancellationToken System.Threading.CancellationToken = default optionalposition: 2
public static OfficeWorkflowDocumentPreview PreviewDocument(Byte[] bytes, String extension, CancellationToken cancellationToken = default) #
Returns: OfficeWorkflowDocumentPreview

Creates an in-memory review sample of a PDF, DOCX, XLSX, PPTX, or HTML artifact without publishing files.

Parameters

bytes System.Byte[] requiredposition: 0
extension System.String requiredposition: 1
cancellationToken System.Threading.CancellationToken = default optionalposition: 2
public async Task<ImageOcrWorkflowResult> RecognizeImageAsync(ImageOcrWorkflowRequest request, IOcrEngine engine, CancellationToken cancellationToken = default) #
Returns: Task<ImageOcrWorkflowResult>

Recognizes an image through Reader.Ocr, reviews the text, and publishes a verified UTF-8 artifact.

Parameters

request OfficeIMO.Workflows.ImageOcrWorkflowRequest requiredposition: 0
engine OfficeIMO.Ocr.IOcrEngine requiredposition: 1
cancellationToken System.Threading.CancellationToken = default optionalposition: 2
public virtual Task<OfficeWorkflowResult> RunAsync(OfficeWorkflowRequest request, IProgress<OfficeWorkflowProgress> progress = null, CancellationToken cancellationToken = default) #
Returns: Task<OfficeWorkflowResult>

Runs one workflow request.

Parameters

request OfficeIMO.Workflows.OfficeWorkflowRequest requiredposition: 0
progress System.IProgress{OfficeIMO.Workflows.OfficeWorkflowProgress} = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = default optionalposition: 2
public virtual async Task<IReadOnlyList<OfficeWorkflowResult>> RunBatchAsync(IEnumerable<OfficeWorkflowRequest> requests, IProgress<OfficeWorkflowProgress> progress = null, CancellationToken cancellationToken = default) #
Returns: Task<IReadOnlyList<OfficeWorkflowResult>>

Runs a batch sequentially so every request shares one predictable local resource budget.

Parameters

requests System.Collections.Generic.IEnumerable{OfficeIMO.Workflows.OfficeWorkflowRequest} requiredposition: 0
progress System.IProgress{OfficeIMO.Workflows.OfficeWorkflowProgress} = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = default optionalposition: 2
public virtual async Task<OfficeInvoiceStorageWorkflowResult> RunInvoiceAsync(OfficeInvoiceStorageWorkflowRequest request, InvoiceValidator validator = null, CancellationToken cancellationToken = default) #
Returns: Task<OfficeInvoiceStorageWorkflowResult>

Executes shared invoice operations through bounded source snapshots and the existing local/provider publication owner.

Parameters

request OfficeIMO.Workflows.OfficeInvoiceStorageWorkflowRequest requiredposition: 0
validator OfficeIMO.Invoicing.Validation.InvoiceValidator = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = default optionalposition: 2
public async Task<IReadOnlyList<OfficeOcrSessionResult>> RunOcrSessionAsync(IEnumerable<OfficeOcrSessionRequest> requests, IOcrEngine engine, IProgress<OfficeWorkflowProgress> progress = null, IProgress<OfficeOcrSessionResult> resultsProgress = null, CancellationToken cancellationToken = default, IReadOnlyList<String> protectedOutputPaths = null, IReadOnlyList<OfficeWorkflowProtectedSource> protectedInputs = null) #
Returns: Task<IReadOnlyList<OfficeOcrSessionResult>>

Runs an ordered OCR session with one caller-owned engine and at most one active recognition/review.

Parameters

requests System.Collections.Generic.IEnumerable{OfficeIMO.Workflows.OfficeOcrSessionRequest} requiredposition: 0
engine OfficeIMO.Ocr.IOcrEngine requiredposition: 1
progress System.IProgress{OfficeIMO.Workflows.OfficeWorkflowProgress} = null optionalposition: 2
resultsProgress System.IProgress{OfficeIMO.Workflows.OfficeOcrSessionResult} = null optionalposition: 3
cancellationToken System.Threading.CancellationToken = default optionalposition: 4
protectedOutputPaths System.Collections.Generic.IReadOnlyList{System.String} = null optionalposition: 5
protectedInputs System.Collections.Generic.IReadOnlyList{OfficeIMO.Workflows.OfficeWorkflowProtectedSource} = null optionalposition: 6
public virtual async Task<OfficeProvenanceWorkflowResult> RunProvenanceAsync(OfficeProvenanceWorkflowRequest request, IProgress<OfficeWorkflowProgress> progress = null, CancellationToken cancellationToken = default) #
Returns: Task<OfficeProvenanceWorkflowResult>

Runs one provenance request with bounded input and atomic removal publication.

Parameters

request OfficeIMO.Workflows.OfficeProvenanceWorkflowRequest requiredposition: 0
progress System.IProgress{OfficeIMO.Workflows.OfficeWorkflowProgress} = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = default optionalposition: 2
public virtual async Task<IReadOnlyList<OfficeProvenanceWorkflowResult>> RunProvenanceBatchAsync(IEnumerable<OfficeProvenanceWorkflowRequest> requests, OfficeProvenanceWorkflowBatchOptions options = null, IProgress<OfficeWorkflowProgress> progress = null, CancellationToken cancellationToken = default) #
Returns: Task<IReadOnlyList<OfficeProvenanceWorkflowResult>>

Runs a bounded batch sequentially so providers and parsers share one predictable resource envelope.

Parameters

requests System.Collections.Generic.IEnumerable{OfficeIMO.Workflows.OfficeProvenanceWorkflowRequest} requiredposition: 0
options OfficeIMO.Workflows.OfficeProvenanceWorkflowBatchOptions = null optionalposition: 1
progress System.IProgress{OfficeIMO.Workflows.OfficeWorkflowProgress} = null optionalposition: 2
cancellationToken System.Threading.CancellationToken = default optionalposition: 3
public virtual async Task<PdfRedactionWorkflowResult> RunRedactionAsync(PdfRedactionWorkflowRequest request, IProgress<OfficeWorkflowProgress> progress = null, CancellationToken cancellationToken = default) #
Returns: Task<PdfRedactionWorkflowResult>

Parameters

request OfficeIMO.Workflows.PdfRedactionWorkflowRequest requiredposition: 0
progress System.IProgress{OfficeIMO.Workflows.OfficeWorkflowProgress} = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = default optionalposition: 2
RunRedactionBatchAsync 2 overloads
public virtual async Task<PdfRedactionBatchResult> RunRedactionBatchAsync(PdfRedactionBatchRequest request, IProgress<OfficeWorkflowProgress> progress = null, CancellationToken cancellationToken = default) #
Returns: Task<PdfRedactionBatchResult>

Parameters

request OfficeIMO.Workflows.PdfRedactionBatchRequest requiredposition: 0
progress System.IProgress{OfficeIMO.Workflows.OfficeWorkflowProgress} = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = default optionalposition: 2
public virtual async Task<PdfRedactionBatchResult> RunRedactionBatchAsync(IEnumerable<PdfRedactionWorkflowRequest> requests, IProgress<OfficeWorkflowProgress> progress = null, CancellationToken cancellationToken = default) #
Returns: Task<PdfRedactionBatchResult>

Parameters

requests System.Collections.Generic.IEnumerable{OfficeIMO.Workflows.PdfRedactionWorkflowRequest} requiredposition: 0
progress System.IProgress{OfficeIMO.Workflows.OfficeWorkflowProgress} = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = default optionalposition: 2
public async Task<PdfSplitWorkflowResult> SplitPdfAsync(PdfSplitWorkflowRequest request, IProgress<OfficeWorkflowProgress> progress = null, CancellationToken cancellationToken = default) #
Returns: Task<PdfSplitWorkflowResult>

Splits consecutive pages through the PDF engine and publishes reopened, bounded outputs.

Parameters

request OfficeIMO.Workflows.PdfSplitWorkflowRequest requiredposition: 0
progress System.IProgress{OfficeIMO.Workflows.OfficeWorkflowProgress} = null optionalposition: 1
cancellationToken System.Threading.CancellationToken = default optionalposition: 2

Fields

public const Int32 MaximumBatchRequestCount #

Maximum number of requests accepted by one sequential batch.

Value: 250