Plugin Management

Plugin Management

Custom devices / Plugins are a core Connexion technology - they let you inject your own functionality into workflows or even host entire software solutions. The Connexion management UI contains a lot of functionality to help manage plugins as well as version the plugins used in each channel.

Most plugin management is done through the Plugin Manager Dialog. This dialog displays all custom devices / plugins in the system, along with associated metadata.

image-20250905-210027.png

The header menu items and right-click context menu is mostly self-explanatory. There are a couple of advanced functions:

image-20250905-212126.png

Toggle hidden state: A plugin that is not used (ie, is not in any channel) can be hidden. Hidden plugins do not show up in the Create/Edit Channel dialog.

Load & re-save all channels: All channels using this plugin will be loaded within the management UI and then saved (if any changes are detected). This functionality is useful if a new version of a plugin uses a global as a default property (a rare occurrence).

Importing a Plugin

To import a new plugin from a file, click the Import from File(s) button in the bottom left. If you are importing a nuget package, select the appropriate file. If you are importing from assemblies, you should select the assembly containing the custom device and all references. Do not include assemblies which are not needed, as this will bloat the system and make importing and exporting slow.

image-20250905-213401.png

If your custom plugin references assembly ABC, then you should only select the assembly containing your plugin (SampleDevice.dll in the above image) and the ABC assembly. Do not select all files in the build folder.

After you select required assembly files, an import summary dialog will be displayed.

image-20250905-213654.png

If you want to upgrade all channels in Connexion to the version being imported, select the Upgrade all… option. If selected, you also have the option to remove any unused versions of this plugin - meaning the imported version will be the only one in Connexion, and all channels will be upgraded to the imported version.

There are other methods of setting custom device versions, which will be described further down this article.

Assembly Usage

The Assembly Usage Dialog shows which assemblies are referenced by both custom devices (plugins) as well as custom code controls.

image-20250906-031608.png
The InterfaceCommon assembly version 3.2.1.9 is reference by the custom devices listed in the left pane.
image-20250906-031827.png
Custom Code controls in the right pane are referencing the InnerHarbour.DataGeneration assembly.

Advanced Versioning

The Advanced Plugin Versioning Dialog can be used to set the version of one or more custom devices / plugins in one or more channels.

image-20250906-032240.png

The first step is to select the plugin(s) to upgrade or downgrade from the left pane. Next, select the channels to be updated using the Group, Tab, and Channel lists in the right pane.

image-20250906-171831.png

You can also select channels to update by channel Tag.

image-20250906-172112.png

Use the Plugin Versions tab to choose to update channels which are currently using specific version(s) of a plugin.

image-20250906-172322.png

Individual Versioning

You can view and change the version of a custom device / plugin within a channel by right-clicking on the device icon and choosing the desired version.

image-20250906-172957.png

After changing the device version, you must save the channel.