public function getProperty($name)
    {
        $result = $this->findProperty($name);

        if (null !== $result) {
            return $result;
        } elseif (isset($this->properties[$name])) {
            return $this->properties[$name];
        } else {
            throw new NoSuchPropertyException($name);
        }
    }