public function applyDefaultValidatorConfiguration(&$validatorConfiguration)
{
if ($validatorConfiguration !== null && !is_array($validatorConfiguration)) {
throw new InvalidArgumentType('$validatorConfiguration', 'array|null', $validatorConfiguration);
}
foreach ($this->getValidatorConfigurationSchema() as $validatorName => $configurationSchema) {
// Set configuration of specific validator to empty array if it is not already provided
if (!isset($validatorConfiguration[$validatorName])) {
$validatorConfiguration[$validatorName] = array();
}
foreach ($configurationSchema as $settingName => $settingConfiguration) {
// Check that a default entry exists in the configuration schema for the validator but that no value has been provided
if (!isset($validatorConfiguration[$validatorName][$settingName]) && array_key_exists('default', $settingConfiguration)) {
$validatorConfiguration[$validatorName][$settingName] = $settingConfiguration['default'];
}
}
}
}