Internally, the scheduled_task module performs some translations to V1 API style COM trigger definitions. With the work to remove any usage of the older API, using this structure as an intermediate during translations should be removed. The V1 structure cannot fully represent all of the trigger types that need to be implemented, including their trigger specific configuration. Removing this will be necessary for full fidelity transformation.
Instead, ITrigger instances should be converted directly to / from their manifest counterparts.
This ticket involves a few steps:
- Add a from_manifest_hash and to_manifest_hash to the V2 class that is capable of translating between ITrigger instances and is at full parity with current translation capabilities. These should be used in place of V1.from_iTrigger / V1.to_manifest_hash or V1.from_manifest_hash calls. There should be spec tests added to trigger_spec.rb demonstrating these translations. At the same time it may be necessary to add an append_manifest_trigger that is similar to append_v1trigger but that instead calls from_manifest_hash internally.
- There may be other methods that need to be added / tests updated as a result of the above.
- Old / irrelevant V1 translation helpers should be removed. It may make sense to rename V1 class to something like Manifest. Much of this class will be gutted as it is irrelevant, but it does currently contain some utility specific to manifests.