2014-10-23 05:41:16 -04:00
|
|
|
<?php
|
2026-03-26 12:46:27 -04:00
|
|
|
|
|
|
|
|
// SPDX-FileCopyrightText: 2018 Icinga GmbH <https://icinga.com>
|
|
|
|
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
2014-10-23 05:41:16 -04:00
|
|
|
|
2014-11-10 10:31:40 -05:00
|
|
|
namespace Icinga\Module\Setup;
|
2014-10-23 05:41:16 -04:00
|
|
|
|
|
|
|
|
/**
|
2014-11-10 04:30:52 -05:00
|
|
|
* Class to implement functionality for a single setup step
|
2014-10-23 05:41:16 -04:00
|
|
|
*/
|
|
|
|
|
abstract class Step
|
|
|
|
|
{
|
|
|
|
|
/**
|
2014-11-10 04:30:52 -05:00
|
|
|
* Apply this step's configuration changes
|
2014-10-23 05:41:16 -04:00
|
|
|
*
|
|
|
|
|
* @return bool
|
|
|
|
|
*/
|
|
|
|
|
abstract public function apply();
|
|
|
|
|
|
|
|
|
|
/**
|
2014-11-10 04:30:52 -05:00
|
|
|
* Return a HTML representation of this step's configuration changes supposed to be made
|
2014-10-23 05:41:16 -04:00
|
|
|
*
|
|
|
|
|
* @return string
|
|
|
|
|
*/
|
|
|
|
|
abstract public function getSummary();
|
|
|
|
|
|
|
|
|
|
/**
|
2015-07-03 10:31:11 -04:00
|
|
|
* Return a textual summary of all configuration changes made
|
2014-10-23 05:41:16 -04:00
|
|
|
*
|
2023-08-16 05:30:23 -04:00
|
|
|
* @return ?array
|
2014-10-23 05:41:16 -04:00
|
|
|
*/
|
|
|
|
|
abstract public function getReport();
|
|
|
|
|
}
|