Instead of implementing the system activity logic in PHP, an alternative is the possibility to realize it in .NET instead.
For this further requirements have to be met:
•In the SystemActivity.php in the base class of your system activity, you have overwritten the method getActivityType as follows:
public function getActivityType()
{
return SystemActivity::ACTIVITY_TYPE_NON_PHP;
}
This signalizes JobRouter, that the execution logic of the system activity is not implemented in PHP, but in .NET.
•The class containing the execution logic of the system activity in .NET has to be derived from the API base class AbstractSystemActivityAPI. Furthermore, the following abstract methods of the API base class have to be implemented in your class:
- GetActivityId(), GetModuleName()
- Prepare(), Execute(), BeforeSave(), CleanUp()
- OnSuccess(), OnException(Exception ex)
•You have created the .NET system activity as a .NET library during the implementation of the execution logic. Important: The name of the DLL has not to start with Jobrouter. !
•You have compiled the .NET system activity with the target version .NET 8.0 (Long Term Support) or .NET Standard 2.x and the target platform x64.