context = $context; } public function match($rawPathinfo) { $allow = array(); $pathinfo = rawurldecode($rawPathinfo); $context = $this->context; $request = $this->request ?: $this->createRequest($pathinfo); if (0 === strpos($pathinfo, '/admin')) { if (0 === strpos($pathinfo, '/admin/module')) { // admin.payplugmodule.config if ('/admin/module/PayPlugModule' === $pathinfo) { return array ( '_controller' => 'PayPlugModule\\Controller\\Admin\\ConfigurationController::viewAction', '_route' => 'admin.payplugmodule.config',); } // admin.payplugmodule.config.save if ('/admin/module/payplugmodule/configuration' === $pathinfo) { if ($this->context->getMethod() != 'POST') { $allow[] = 'POST'; goto not_adminpayplugmoduleconfigsave; } return array ( '_controller' => 'PayPlugModule\\Controller\\Admin\\ConfigurationController::saveAction', '_route' => 'admin.payplugmodule.config.save',); } not_adminpayplugmoduleconfigsave: } if (0 === strpos($pathinfo, '/admin/payplugmodule/order')) { // admin.payplugmodule.order.refund if ('/admin/payplugmodule/order/refund' === $pathinfo) { if ($this->context->getMethod() != 'POST') { $allow[] = 'POST'; goto not_adminpayplugmoduleorderrefund; } return array ( '_controller' => 'PayPlugModule\\Controller\\Admin\\OrderController::refundAction', '_route' => 'admin.payplugmodule.order.refund',); } not_adminpayplugmoduleorderrefund: // admin.payplugmodule.order.capture if ('/admin/payplugmodule/order/capture' === $pathinfo) { if ($this->context->getMethod() != 'POST') { $allow[] = 'POST'; goto not_adminpayplugmoduleordercapture; } return array ( '_controller' => 'PayPlugModule\\Controller\\Admin\\OrderController::captureAction', '_route' => 'admin.payplugmodule.order.capture',); } not_adminpayplugmoduleordercapture: } } if (0 === strpos($pathinfo, '/payplug')) { // payplugmodule_notification if ('/payplug/notification' === $pathinfo) { return array ( '_controller' => 'PayPlugModule\\Controller\\NotificationController::entryPoint', '_route' => 'payplugmodule_notification',); } // payplugmodule_delete_card if ('/payplug/card/delete' === $pathinfo) { return array ( '_controller' => 'PayPlugModule\\Controller\\CardController::deleteCurrentCustomerCard', '_route' => 'payplugmodule_delete_card',); } } throw 0 < count($allow) ? new MethodNotAllowedException(array_unique($allow)) : new ResourceNotFoundException(); } }