/**
     * Explicitly sets the object name of the controller
     *
     * @param string $unknownCasedControllerObjectName The fully qualified controller object name
     * @return void
     * @throws \TYPO3\Flow\Object\Exception\UnknownObjectException
     * @api
     */
    public function setControllerObjectName($unknownCasedControllerObjectName)
    {
        $controllerObjectName = $this->objectManager->getCaseSensitiveObjectName($unknownCasedControllerObjectName);
        if ($controllerObjectName === false) {
            throw new UnknownObjectException('The object "' . $unknownCasedControllerObjectName . '" is not registered.', 1268844071);
        }
        $this->controllerPackageKey = $this->objectManager->getPackageKeyByObjectName($controllerObjectName);
        $matches = array();
        $subject = substr($controllerObjectName, strlen($this->controllerPackageKey) + 1);
        preg_match('/
			^(
				Controller
			|
				(?P<subpackageKey>.+)\\\\Controller
			)
			\\\\(?P<controllerName>[a-z\\\\]+)Controller
			$/ix', $subject, $matches);
        $this->controllerSubpackageKey = isset($matches['subpackageKey']) ? $matches['subpackageKey'] : null;
        $this->controllerName = $matches['controllerName'];
    }