N°9500 - move STATIC_CALL_AUTOSELECT_WHITELIST from RuntimeEnvironment to ModuleFileReader

This commit is contained in:
odain
2026-04-13 22:56:46 +02:00
parent 1222507205
commit e7e7664cb8
6 changed files with 11 additions and 13 deletions

View File

@@ -2,11 +2,9 @@
namespace Combodo\iTop\Setup\ModuleDependency;
require_once(APPROOT.'/setup/runtimeenv.class.inc.php');
use Combodo\iTop\PhpParser\Evaluation\PhpExpressionEvaluator;
use Combodo\iTop\Setup\ModuleDiscovery\ModuleFileReader;
use Combodo\iTop\Setup\ModuleDiscovery\ModuleFileReaderException;
use RunTimeEnvironment;
/**
* Class that handles a module dependency
@@ -64,7 +62,7 @@ class DependencyExpression
public static function GetPhpExpressionEvaluator(): PhpExpressionEvaluator
{
if (!isset(self::$oPhpExpressionEvaluator)) {
self::$oPhpExpressionEvaluator = new PhpExpressionEvaluator([], RunTimeEnvironment::STATIC_CALL_AUTOSELECT_WHITELIST);
self::$oPhpExpressionEvaluator = new PhpExpressionEvaluator([], ModuleFileReader::STATIC_CALL_AUTOSELECT_WHITELIST);
}
return self::$oPhpExpressionEvaluator;

View File

@@ -42,6 +42,10 @@ class ModuleFileReader
"utils::GetItopVersionWikiSyntax",
];
public const STATIC_CALL_AUTOSELECT_WHITELIST = [
"SetupInfo::ModuleIsSelected",
];
protected function __construct()
{
$this->oPhpExpressionEvaluator = new PhpExpressionEvaluator(static::FUNC_CALL_WHITELIST, static::STATIC_CALLWHITELIST);

View File

@@ -17,8 +17,6 @@
// You should have received a copy of the GNU Affero General Public License
// along with iTop. If not, see <http://www.gnu.org/licenses/>
//require_once(APPROOT.'setup/setuppage.class.inc.php');
/**
* Class ModuleInstaller
* Defines the API to implement module specific actions during the setup

View File

@@ -46,10 +46,6 @@ define('DATAMODEL_MODULE', 'datamodel'); // Convention to store the version of t
class RunTimeEnvironment
{
public const STATIC_CALL_AUTOSELECT_WHITELIST = [
"SetupInfo::ModuleIsSelected",
];
private static bool $bMetamodelStarted = false;
/**
@@ -513,7 +509,7 @@ class RunTimeEnvironment
}
}
$oPhpExpressionEvaluator = new PhpExpressionEvaluator([], RunTimeEnvironment::STATIC_CALL_AUTOSELECT_WHITELIST);
$oPhpExpressionEvaluator = new PhpExpressionEvaluator([], ModuleFileReader::STATIC_CALL_AUTOSELECT_WHITELIST);
// Now process the 'AutoSelect' modules
do {

View File

@@ -1,6 +1,7 @@
<?php
use Combodo\iTop\PhpParser\Evaluation\PhpExpressionEvaluator;
use Combodo\iTop\Setup\ModuleDiscovery\ModuleFileReader;
use Combodo\iTop\Setup\ModuleDiscovery\ModuleFileReaderException;
require_once(APPROOT.'/application/utils.inc.php');
@@ -286,7 +287,7 @@ class InstallationFileService
public function ProcessAutoSelectModules(): void
{
$oPhpExpressionEvaluator = new PhpExpressionEvaluator([], RunTimeEnvironment::STATIC_CALL_AUTOSELECT_WHITELIST);
$oPhpExpressionEvaluator = new PhpExpressionEvaluator([], ModuleFileReader::STATIC_CALL_AUTOSELECT_WHITELIST);
foreach ($this->GetAutoSelectModules() as $sModuleId => $aModule) {
try {

View File

@@ -20,6 +20,7 @@
use Combodo\iTop\Application\WebPage\WebPage;
use Combodo\iTop\PhpParser\Evaluation\PhpExpressionEvaluator;
use Combodo\iTop\Setup\ModuleDiscovery\ModuleFileReader;
use Combodo\iTop\Setup\ModuleDiscovery\ModuleFileReaderException;
/**
@@ -466,7 +467,7 @@ EOF
private function GetPhpExpressionEvaluator(): PhpExpressionEvaluator
{
if (!isset($this->oPhpExpressionEvaluator)) {
$this->oPhpExpressionEvaluator = new PhpExpressionEvaluator([], RunTimeEnvironment::STATIC_CALL_AUTOSELECT_WHITELIST);
$this->oPhpExpressionEvaluator = new PhpExpressionEvaluator([], ModuleFileReader::STATIC_CALL_AUTOSELECT_WHITELIST);
}
return $this->oPhpExpressionEvaluator;