Action Configuration and Execution Classess

Versioning in JEF

In order to define versions in JEF, you should provide the following definitions through annotations:

Example:

@ActionPlugin(
       uuid = "f2333a20-5557-48db-84fe-b54379e43c09",
       type = "example", plugin = "jef-email-action",
       version = "1.0.0",
       actionConfiguration = EmailActionConfiguration.class)
public class EmailActionExecutor extends ActionExecutor {
…
  • UUID: this stands for “Universally Unique Identifier” and is unique across all the action and resource configuration. This value is the same for subsequent versions.
  • Type: this is a string that groups together all the actions that are from the same family. For example: Transcode, Archive, Copy, Import, Ingest, and so on. If the same string is used in existing Enterprise types, the given action configuration will be added to the same type. For example: if a “Transcode” type already exists in Dalet Flex Enterprise, any JEF actions that fit into that type will be added to the same transcode configuration as the other native Enterprise actions.
  • Plugin: this is the implementation of generic action types. For example: Elemental Transcode, DIVArchive, and so on. If the same string is used for existing Enterprise plugins, the given action configuration will be added to the same type. For example: if the Elemental Transcode plugin is used, JEF actions will be added to the same transcode type and two ‘“Elemental Transcode” names will be present. Please, see the “Plugin Types” section, for a complete list of current out-of-the box plugin types.
  • Version: this is a string with version numbering. , e.g. <major>.<medium>.<minor>. JEF will report the latest version to Enterprise.