public function call($name, $arguments = array())
    {
        /** @var AbstractAction $action */
        $action = $this->getAction($name);

        if ($action instanceof RegistryAwareInterface) {
            $action->setRegistry($this->service->getRegistry());
        }

        $this->dispatchPreActionEvent($arguments, $action);

        $start = microtime(true);

        $response = $action->execute($arguments);

        $event = $this->dispatchPostActionEvent($arguments, $action, $response, microtime(true) - $start, $action->getExtraData());

        $response = $event->getResponse();

        return $response;
    }
public function call($name, $arguments = array())
    {
        /** @var AbstractAction $action */
        $action = $this->getAction($name);

        if ($action instanceof RegistryAwareInterface) {
            $action->setRegistry($this->service->getRegistry());
        }

        $this->dispatchPreActionEvent($arguments, $action);

        $start = microtime(true);

        $response = $action->execute($arguments);

        $event = $this->dispatchPostActionEvent($arguments, $action, $response, microtime(true) - $start, $action->getExtraData());

        $response = $event->getResponse();

        return $response;
    }
@param string $name      Action name
@param array  $arguments Arguments to be passed to action execution method

@return mixed Action response