public function createAction($name)
    {
        if (!$this->actions->containsKey($name)) {
            throw new \InvalidArgumentException(sprintf(
                'Any action registered under "%s" name, only ["%s"] are.',
                $name,
                implode('","', $this->actions->getKeys())
            ));
        }

        return clone $this->actions->get($name);
    }