Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
Public Member Functions
ConflictChecker Class Reference

Public Member Functions

 __construct (ModuleList $list, PackageInfoFactory $packageInfoFactory)
 
 checkConflictsWhenEnableModules ($moduleNames, $currentlyEnabledModules=null)
 

Detailed Description

Checks for conflicts between modules

Definition at line 13 of file ConflictChecker.php.

Constructor & Destructor Documentation

◆ __construct()

__construct ( ModuleList  $list,
PackageInfoFactory  $packageInfoFactory 
)

Constructor

Parameters
ModuleList$list
PackageInfoFactory$packageInfoFactory

Definition at line 35 of file ConflictChecker.php.

36  {
37  $this->list = $list;
38  $this->packageInfo = $packageInfoFactory->create();
39  }

Member Function Documentation

◆ checkConflictsWhenEnableModules()

checkConflictsWhenEnableModules (   $moduleNames,
  $currentlyEnabledModules = null 
)

Check if enabling module will conflict any modules

Parameters
string[]$moduleNames
string[]$currentlyEnabledModules
Returns
array

Definition at line 49 of file ConflictChecker.php.

50  {
51  $masterList = isset($currentlyEnabledModules) ? $currentlyEnabledModules: $this->list->getNames();
52  // union of currently enabled modules and to-be-enabled modules
53  $enabledModules = array_unique(array_merge($masterList, $moduleNames));
54  $conflictsAll = [];
55  foreach ($moduleNames as $moduleName) {
56  $conflicts = [];
57  foreach ($enabledModules as $enabledModule) {
58  $messages = $this->getConflictMessages($enabledModule, $moduleName);
59  if (!empty($messages)) {
60  $conflicts[] = implode("\n", $messages);
61  }
62  }
63  $conflictsAll[$moduleName] = $conflicts;
64  }
65  return $conflictsAll;
66  }

The documentation for this class was generated from the following file: