The UBIK® Plugin Design feature allows users to create a UBIK® Plugin C# solution, including system definitions purely from customizing in UBIK® Studio.
Usage
Creation of a new Plugin Design Configuration
The feature is accessible through the "System.PluginDesign.PLUGIN_DESIGN_CONFIGURATION" MetaClass in UBIK Studio. A new Plugin Design Configuration instance can be created in the Bulk Editor to define a custom plugin context.
Adding MetaClasses to the configuration
Custom MetaClasses can be added to the plugin configuration using the "SYSREL_PLUGINDESIGNCONFIG_METACLASS" relation in the Relation Editor.
Adding other objects to the configuration
In the initial version of this feature, we're assuming that your MetaClasses are the center of your customizing; everything else will be detected as a dependency of those. E.g., if you're using a MetaProperty in a MetaClass you related to the Plugin Design Configuration instance, it will also be contained in the generated C# solution. The same is true for all other kinds of objects. The Plugin Design feature is subject of active development, so most likely there will be more detailed control about the things contained in the designated Plugin in the next versions.
Exporting a C# solution for the plugin
A C# solution can be generated for the plugin via context menu action in the Class Browser (content view style): Right-click the Plugin Configuration instance, 'Start Action → "" → Create a C# solution for a custom UBIK plugin'. This will increase the plugin version (revision), generate the C# solution and prompt the user with a save dialog for a respective .zip archive.
Supported capabilities
| Feature | Version |
|---|---|
| Generation of a basic Plugin project, including the Module and a SystemDefinitions stub |
5.0 Initial Release |
| MetaClasses | 5.0 Initial Release |
| MetaProperties | 5.0 Initial Release |
| Custom Class Code | 5.0 Initial Release |
| Custom Code Library | 5.0 Initial Release |
| Classifications | 5.0 Initial Release |
| Relations | 5.0 Initial Release |
| Selective Lists and Selective Items | 5.0 Initial Release |
| References | 5.0 Service Pack |
| Units and Unit Items | 5.0 Service Pack |
| MetaProxies and MetaProxyProperties | 5.1 Initial Release |