{"action":"created","issue":{"url":"https://api.github.com/repos/phalcon/cphalcon/issues/11396","repository_url":"https://api.github.com/repos/phalcon/cphalcon","labels_url":"https://api.github.com/repos/phalcon/cphalcon/issues/11396/labels{/name}","comments_url":"https://api.github.com/repos/phalcon/cphalcon/issues/11396/comments","events_url":"https://api.github.com/repos/phalcon/cphalcon/issues/11396/events","html_url":"https://github.com/phalcon/cphalcon/pull/11396","id":132684805,"number":11396,"title":"Use is_callable instead of method_exists on Dispatcher","user":{"login":"Surt","id":48085,"avatar_url":"https://avatars.githubusercontent.com/u/48085?v=3","gravatar_id":"","url":"https://api.github.com/users/Surt","html_url":"https://github.com/Surt","followers_url":"https://api.github.com/users/Surt/followers","following_url":"https://api.github.com/users/Surt/following{/other_user}","gists_url":"https://api.github.com/users/Surt/gists{/gist_id}","starred_url":"https://api.github.com/users/Surt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Surt/subscriptions","organizations_url":"https://api.github.com/users/Surt/orgs","repos_url":"https://api.github.com/users/Surt/repos","events_url":"https://api.github.com/users/Surt/events{/privacy}","received_events_url":"https://api.github.com/users/Surt/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2016-02-10T12:20:54Z","updated_at":"2016-03-04T19:29:07Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/phalcon/cphalcon/pulls/11396","html_url":"https://github.com/phalcon/cphalcon/pull/11396","diff_url":"https://github.com/phalcon/cphalcon/pull/11396.diff","patch_url":"https://github.com/phalcon/cphalcon/pull/11396.patch"},"body":"Using ```is_callable``` we can overload ```__call``` on Controllers, and catch generic action methods on controllers.\r\n\r\nUse case:\r\nErrors controllers where we want to define generic error actions\r\nCMS where we want to use ```__call``` to check for the content instead using a ```beforeException``` as a plugin\r\netc..."},"comment":{"url":"https://api.github.com/repos/phalcon/cphalcon/issues/comments/192429239","html_url":"https://github.com/phalcon/cphalcon/pull/11396#issuecomment-192429239","issue_url":"https://api.github.com/repos/phalcon/cphalcon/issues/11396","id":192429239,"user":{"login":"sergeyklay","id":1256298,"avatar_url":"https://avatars.githubusercontent.com/u/1256298?v=3","gravatar_id":"","url":"https://api.github.com/users/sergeyklay","html_url":"https://github.com/sergeyklay","followers_url":"https://api.github.com/users/sergeyklay/followers","following_url":"https://api.github.com/users/sergeyklay/following{/other_user}","gists_url":"https://api.github.com/users/sergeyklay/gists{/gist_id}","starred_url":"https://api.github.com/users/sergeyklay/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sergeyklay/subscriptions","organizations_url":"https://api.github.com/users/sergeyklay/orgs","repos_url":"https://api.github.com/users/sergeyklay/repos","events_url":"https://api.github.com/users/sergeyklay/events{/privacy}","received_events_url":"https://api.github.com/users/sergeyklay/received_events","type":"User","site_admin":false},"created_at":"2016-03-04T19:29:07Z","updated_at":"2016-03-04T19:29:07Z","body":"@Surt "}}