Applications

Applications are smart contracts with logic to be executed by the JobManager contract. An application contract must implement the IApplication interface:

interface IApplication {
    function onExecuteJob(uint256 _index, address _owner) external;
    function onCreatedJob(uint256 _index, bytes1 _executionModule, address _owner, bytes calldata _inputs) external;
    function onDeletedJob(uint256 _index, address _owner) external;
}

The functions onExecuteJob, onCreatedJob and onDeletedJob are callback functions which the JobManager contract will call upon execution, creation and deletion of a job respectively.

Applications can be implemented by anyone and can contain any logic such as calling external contracts. This makes it possible to execute any logic through EES jobs.

Last updated