about
MLiPS 5
11/22/2024

MLiPS 5: PowerShell Pipeline

policy-based reconfigurable pipelines

Mike Corley
click header to toggle Site Explorer

Reconfigurable Pipeline with PowerShell:

Extension of the PowerShell scripting model. Why PowerShell? Powershell has a well-developed ecosystem with:
  • Execution environment for Cmdlets, functions, scripts
  • Can execute native and managed applications
  • Has implemented a hosting model so applications can host PowerShell execution
Scripting model is "object-oriented", NOT text-oriented stream-based like traditional scripting models, e.g., Bash.
Object-based processing has huge implications: Objects have well-defined interfaces, can define/enforce formal contracts and define/enforce workflow participants. Example “Command-1 | Command-2 | Command-3”

Pipeline Policies:

Figure 5 illustrates how processing policies may be defined using XML-based definitions. The Object Factory can create any one of three implementations of the QSI.IRecognizeEntity interface. Each use of the pipeline would configure the Object Factory with an appropriate policy for the desired form of processing.
Note that is simply a substitution operation, not requiring any redesign of the pipeline, its scripts, nor the existing policies.

Pipeline Stage Operation:

In Figure 6. some details of the stage operation are illustrated: an input file object arrives at the stage, is passed to a Get-Text custom cmdlet which uses the ITextExtract interface to interact with processing bound to that interface by the Object Factory.
When the stage operation has completed, the result object(s) are passed to the next pipeline stage.
  Next Prev Pages Sections About Keys