diff options
Diffstat (limited to 'library/Reporting/Hook/ActionHook.php')
-rw-r--r-- | library/Reporting/Hook/ActionHook.php | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/library/Reporting/Hook/ActionHook.php b/library/Reporting/Hook/ActionHook.php new file mode 100644 index 0000000..ef550ee --- /dev/null +++ b/library/Reporting/Hook/ActionHook.php @@ -0,0 +1,37 @@ +<?php +// Icinga Reporting | (c) 2018 Icinga GmbH | GPLv2 + +namespace Icinga\Module\Reporting\Hook; + +use Icinga\Application\Hook; +use Icinga\Module\Reporting\Report; +use ipl\Html\Form; + +abstract class ActionHook +{ + /** + * @return string + */ + abstract public function getName(); + + /** + * @param Report $report + * @param array $config + */ + abstract public function execute(Report $report, array $config); + + /** + * @param Form $form + */ + public function initConfigForm(Form $form, Report $report) + { + } + + /** + * @return ActionHook[] + */ + final public static function getActions() + { + return Hook::all('reporting/Action'); + } +} |