Neos\Flow\Configuration\ConfigurationManager::mergePolicyConfiguration PHP Method

mergePolicyConfiguration() protected method

Merges two policy configuration arrays.
protected mergePolicyConfiguration ( array $firstConfigurationArray, array $secondConfigurationArray ) : array
$firstConfigurationArray array
$secondConfigurationArray array
return array
    protected function mergePolicyConfiguration(array $firstConfigurationArray, array $secondConfigurationArray)
    {
        $result = Arrays::arrayMergeRecursiveOverrule($firstConfigurationArray, $secondConfigurationArray);
        if (!isset($result['roles'])) {
            return $result;
        }
        foreach ($result['roles'] as $roleIdentifier => $roleConfiguration) {
            if (!isset($firstConfigurationArray['roles'][$roleIdentifier]['privileges']) || !isset($secondConfigurationArray['roles'][$roleIdentifier]['privileges'])) {
                continue;
            }
            $result['roles'][$roleIdentifier]['privileges'] = array_merge($firstConfigurationArray['roles'][$roleIdentifier]['privileges'], $secondConfigurationArray['roles'][$roleIdentifier]['privileges']);
        }
        return $result;
    }