public function setConfigurationValue($key, $value)
    {
        $completeConfiguration = $this->getConfiguration();
        $configuration = &$completeConfiguration;

        $pathParts = explode(self::DELIMITER, $key);
        foreach ($pathParts as $pathPart) {

            // If the current configuration is not an array,
            // but the client want to set a value, just overwrite the current value
            if (is_array($configuration) === false) {
                $configuration = [];
            }
            $configuration = &$configuration[ucfirst($pathPart)];
        }

        $configuration = $value;
        $this->setConfiguration($completeConfiguration);
    }