Syncrules: allow export via REST API
This commit is contained in:
parent
1bc77ad7c6
commit
5a3e604e75
|
@ -2,14 +2,26 @@
|
|||
|
||||
namespace Icinga\Module\Director\Controllers;
|
||||
|
||||
use Icinga\Module\Director\DirectorObject\Automation\ImportExport;
|
||||
use Icinga\Module\Director\Web\Table\SyncruleTable;
|
||||
use Icinga\Module\Director\Web\Controller\ActionController;
|
||||
use Icinga\Module\Director\Web\Tabs\ImportTabs;
|
||||
|
||||
class SyncrulesController extends ActionController
|
||||
{
|
||||
protected $isApified = true;
|
||||
|
||||
/**
|
||||
* @throws \Icinga\Exception\ConfigurationError
|
||||
* @throws \Icinga\Exception\Http\HttpNotFoundException
|
||||
*/
|
||||
public function indexAction()
|
||||
{
|
||||
if ($this->getRequest()->isApiRequest()) {
|
||||
$this->sendExport();
|
||||
return;
|
||||
}
|
||||
|
||||
$this->addTitle($this->translate('Sync rule'))
|
||||
->setAutoRefreshInterval(10)
|
||||
->addAddLink(
|
||||
|
@ -19,4 +31,15 @@ class SyncrulesController extends ActionController
|
|||
|
||||
(new SyncruleTable($this->db()))->renderTo($this);
|
||||
}
|
||||
|
||||
/**
|
||||
* @throws \Icinga\Exception\ConfigurationError
|
||||
*/
|
||||
protected function sendExport()
|
||||
{
|
||||
$this->sendJson(
|
||||
$this->getResponse(),
|
||||
(new ImportExport($this->db()))->serializeAllSyncRules()
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue