public function load(array $settings = null)
    {
        $classVars = array_keys(get_class_vars(get_class($this)));

        foreach ($settings as $name => $value) {
            if (in_array($name, $this->blacklistConfig, true)) {
                continue;
            }

            if (in_array($name, $classVars, true)) {
                $method = 'set' . SimpleDataObjectConverter::snakeCaseToUpperCamelCase($name);
                if (method_exists($this, $method)) {
                    $this->configMapping += $this->configHelper->getNewSettingPath($name);
                    $this->{$method}($this->castToType($value, $name));
                } else {
                    $this->logger->debug(
                        'The evaluated method "' . $method . '" is not available in class ' . __CLASS__
                    );
                }
            } else {
                if (array_key_exists($name, $this->additionalSettings)) {
                    $this->additionalSettings[$name] = $value;
                } else {
                    $this->logger->debug(
                        'The given setting property "' . $name . '" is not available in class ' . __CLASS__
                    );
                }
            }
        }
    }
public function load(array $settings = null)
    {
        $classVars = array_keys(get_class_vars(get_class($this)));

        foreach ($settings as $name => $value) {
            if (in_array($name, $this->blacklistConfig, true)) {
                continue;
            }

            if (in_array($name, $classVars, true)) {
                $method = 'set' . SimpleDataObjectConverter::snakeCaseToUpperCamelCase($name);
                if (method_exists($this, $method)) {
                    $this->configMapping += $this->configHelper->getNewSettingPath($name);
                    $this->{$method}($this->castToType($value, $name));
                } else {
                    $this->logger->debug(
                        'The evaluated method "' . $method . '" is not available in class ' . __CLASS__
                    );
                }
            } else {
                if (array_key_exists($name, $this->additionalSettings)) {
                    $this->additionalSettings[$name] = $value;
                } else {
                    $this->logger->debug(
                        'The given setting property "' . $name . '" is not available in class ' . __CLASS__
                    );
                }
            }
        }
    }
public function load ( array $ settings = null ) { $ classVars = array_keys ( get_class_vars ( get_class ( $ this ) ) ) ; foreach ( $ settings as $ name => $ value ) { if ( in_array ( $ name , $ this -> blacklistConfig , true ) ) { continue ; } if ( in_array ( $ name , $ classVars , true ) ) { $ method = 'set' . SimpleDataObjectConverter :: snakeCaseToUpperCamelCase ( $ name ) ; if ( method_exists ( $ this , $ method ) ) { $ this -> configMapping += $ this -> configHelper -> getNewSettingPath ( $ name ) ; $ this -> { $ method } ( $ this -> castToType ( $ value , $ name ) ) ; } else { $ this -> logger -> debug ( 'The evaluated method "' . $ method . '" is not available in class ' . __CLASS__ ) ; } } else { if ( array_key_exists ( $ name , $ this -> additionalSettings ) ) { $ this -> additionalSettings [ $ name ] = $ value ; } else { $ this -> logger -> debug ( 'The given setting property "' . $ name . '" is not available in class ' . __CLASS__ ) ; } } } }
Prepares values to be saved.
Note that we use the += operator intentionally

@param array|null $settings

@throws \ReflectionException
Prepares values to be saved . Note that we use the + = operator intentionally