EES
  • Ethereum Execution Service
  • Concepts
    • Jobs and registry
    • Executors and coordination
    • Applications
    • Execution modules
    • Fee modules
    • Execution fees
    • Sponsored jobs
  • Coordination
    • Staking
    • Designation
    • Slashing
  • Execution modules
    • RegularTimeInterval
  • Fee modules
    • LinearAuction
    • PeggedLinearAuction
  • Deployments
  • Guides
    • Create an application
    • Sponsor jobs
    • Build an executor bot
  • EES DAO
  • SDK
    • Types
    • Query jobs
    • Execute batch
    • Create job
    • Delete job
    • Sponsor job
    • Revoke sponsorship
    • Listen for created jobs
  • EES Subgraph
  • Technical reference
    • API
      • Core
        • JobRegistry
        • Coordinator
      • Periphery
        • Querier
Powered by GitBook
On this page
  1. Concepts

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.

PreviousExecutors and coordinationNextExecution modules

Last updated 10 months ago