public function getParam($name, $defaultValue = null)
    {

        // load the params
        $params = reset($this->params);

        // query whether or not, the param with the passed name is set
        if (is_array($params) && isset($params[$name])) {
            // load the value from the array
            $value = $params[$name];
            // query whether or not, the value contains a comma => if yes, we explode it into an array
            if (is_string($value) && stripos($value, $delimiter = $this->getParamDelimiter())) {
                $value = explode($delimiter, $value);
            }

            // return the found value
            return $value;
        }

        // if not, query we query if a default value has been passed
        if ($defaultValue != null) {
            return $defaultValue;
        }

        // throw an exception if neither the param exists or a default value has been passed
        throw new \Exception(sprintf('Requested param %s not available', $name));
    }