/** * @param Router_Mask $route * @param string $service_name * * @return Response | null */ protected function executeServiceRoute(\Core\Router_Mask $route, $service_name) { $response = null; $class_name = '\\Service\\' . $service_name . '\\Controller_' . str_replace('/', '_', $route->controller_class_name); // print( $class_name ); if (class_exists($class_name)) { /** @var Controller $controller */ $controller = new $class_name($this, $route); $response = $controller->actionPrepare(); if ($response instanceof Response) { return $response; } if ($controller instanceof Controller) { if ($this->request->method == 'GET') { if (Config::DEV_MODE) { Logs::writeGet($this->request->url_string . '?' . $this->request->get_params_string); } if (method_exists($controller, 'actionGet')) { $response = $controller->actionGet(); } } if ($this->request->method == 'POST') { if (Config::DEV_MODE) { Logs::writePost($this->request->url_string . PHP_EOL . var_export($_POST, true)); } if (method_exists($controller, 'actionPost')) { $response = $controller->actionPost(); } } } } return $response; }