jobDefinition = $definition; return $this; } protected function getSetting($key, $default = null) { return $this->jobDefinition->getSetting($key, $default); } public function getName() { $parts = explode('\\', get_class($this)); $class = preg_replace('/Job$/', '', array_pop($parts)); if (array_shift($parts) === 'Icinga' && array_shift($parts) === 'Module') { $module = array_shift($parts); if ($module !== 'Director') { return sprintf('%s (%s)', $class, $module); } } return $class; } public static function getSuggestedRunInterval(QuickForm $form) { return 900; } /** * Override this method if you want to extend the settings form * * @param QuickForm $form QuickForm that should be extended * @return QuickForm */ public static function addSettingsFormFields(QuickForm $form) { return $form; } public function setDb(Db $db) { $this->db = $db; return $this; } protected function db() { return $this->db; } protected function output($message) { $this->output[] = $message; return $this; } /** * printf helper method * * @param string $message Format string * @param mixed ...$arg Format string argument * * @return self */ protected function printf($message) { $args = array_slice(func_get_args(), 1); return $this->output(vsprintf($message, $args)); } protected function warning($message) { $this->warnings[] = $message; return $this; } protected function error($message) { $this->errors[] = $message; return $this; } }