Extending Ianus
Several Ianus tasks support customization thru the Plug-In mechanism. A Ianus plug-in is a .NET class implementing one of the plug-in interfaces exposed by Ianus.
Ianus plug-in can be defined as:
- C# scripts: the plug-in class is embedded in the job XML script and gets compiled and executed on the fly.
- Class libraries: the plug-in class is contained in a .NET class library to be referenced by the customized tasks.
Plug-in Class Libraries
Plug-ins class libraries can be coded in in any .NET language (so C#, VB.NET but, for example, also Micro Focus(tm) COBOL for .NET) and compiled as .NET Core 5.0 assemblies.
The Samples
folder in the Ianus distribution contains a number of Plug-in Class Libraries examples.
Supported Plug-Ins
The following plug-ins are supported.
Plug-In Type | Interface/Superclass | Purpose |
---|---|---|
File Editor | HPE.Ianus.Scripting.IFileEditor |
Record editing and filtering for File Edit |
Record Layout Layout Matcher | HPE.Ianus.Scripting.ILayoutMatch |
Record layout selection for layout based tasks, such as File Compare, File Copy or File Format |
Column Comparator | HPE.Ianus.Scripting.IColumnComparator |
Custom column comparison for Table Compare and Stored Procedure Compare |
Column Converter | HPE.Ianus.Scripting.IColumnConverter |
Custom column converter for Table Copy |
Column Matcher | HPE.Ianus.Scripting.IColumnMatcher |
Custom column converter for Table Scan |
Record Comparator | HPE.Ianus.Scripting.IRecordComparator |
Custom record comparison for File Compare |
User Script | HPE.Ianus.Scripting.IScript |
User logic for User Script |
User Fields | HPE.Ianus.File.AbstractAbstractUserField |
User field for file related task (i.e. File Copy) |
User Task | HPE.Ianus.Task |
User defined task |
Resources
Resources can be defined at configuration or task level, for use plugins to use. Refer to @"Resources".
Codepages
Codepages for data comparison and conversion can be customized and extended. Refer to Codepages.