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.