{"action":"created","issue":{"url":"https://api.github.com/repos/contao/core-bundle/issues/234","labels_url":"https://api.github.com/repos/contao/core-bundle/issues/234/labels{/name}","comments_url":"https://api.github.com/repos/contao/core-bundle/issues/234/comments","events_url":"https://api.github.com/repos/contao/core-bundle/issues/234/events","html_url":"https://github.com/contao/core-bundle/pull/234","id":70716126,"number":234,"title":"[RFC] Split InitializeSystemListener","user":{"login":"dtomasi","id":1616726,"avatar_url":"https://avatars.githubusercontent.com/u/1616726?v=3","gravatar_id":"","url":"https://api.github.com/users/dtomasi","html_url":"https://github.com/dtomasi","followers_url":"https://api.github.com/users/dtomasi/followers","following_url":"https://api.github.com/users/dtomasi/following{/other_user}","gists_url":"https://api.github.com/users/dtomasi/gists{/gist_id}","starred_url":"https://api.github.com/users/dtomasi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dtomasi/subscriptions","organizations_url":"https://api.github.com/users/dtomasi/orgs","repos_url":"https://api.github.com/users/dtomasi/repos","events_url":"https://api.github.com/users/dtomasi/events{/privacy}","received_events_url":"https://api.github.com/users/dtomasi/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":24,"created_at":"2015-04-24T15:16:39Z","updated_at":"2015-04-27T13:34:01Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/contao/core-bundle/pulls/234","html_url":"https://github.com/contao/core-bundle/pull/234","diff_url":"https://github.com/contao/core-bundle/pull/234.diff","patch_url":"https://github.com/contao/core-bundle/pull/234.patch"},"body":"see: #192 \r\n\r\nThings that are done:\r\n\r\n- splitted `IntitializeSystemListener` in 8 decoupled listeners\r\n- Listeners in `Contao\\CoreBundle\\EventListener\\Framework` are registered by a `CompilerPass` see: https://github.com/ContaoBlackForest/core-bundle/blob/feature/split-initialize-system-listener/src/ContaoCoreBundle.php#L64\r\n- `InitializeSystemListenerTest` is rewritten to test `contao.framework.boot`-Event is dispatched and how often this happens.\r\n- Some tests for listeners in `Contao\\CoreBundle\\EventListener\\Framework` are already coded\r\n\r\nThings that need to be done:\r\n\r\n- Write tests for all listeners in `Contao\\CoreBundle\\EventListener\\Framework`\r\n- Write a test-setup that loads all required services and parameters to load the framework. This is needed for other Tests like `AddToSearchIndexListenerTest`.\r\n\r\nThings that need to be discussed:\r\n\r\n- basic structure\r\n- naming of listeners\r\n- should the listeners bei separated from listeners in `listeners.yml`? maybe `listeners_framework.yml` ? \r\n- should we also create a `contao.framework.terminate` and `contao.framework.exception`- Event ?\r\n\r\nWhat are your opinions ?"},"comment":{"url":"https://api.github.com/repos/contao/core-bundle/issues/comments/96653494","html_url":"https://github.com/contao/core-bundle/pull/234#issuecomment-96653494","issue_url":"https://api.github.com/repos/contao/core-bundle/issues/234","id":96653494,"user":{"login":"dtomasi","id":1616726,"avatar_url":"https://avatars.githubusercontent.com/u/1616726?v=3","gravatar_id":"","url":"https://api.github.com/users/dtomasi","html_url":"https://github.com/dtomasi","followers_url":"https://api.github.com/users/dtomasi/followers","following_url":"https://api.github.com/users/dtomasi/following{/other_user}","gists_url":"https://api.github.com/users/dtomasi/gists{/gist_id}","starred_url":"https://api.github.com/users/dtomasi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dtomasi/subscriptions","organizations_url":"https://api.github.com/users/dtomasi/orgs","repos_url":"https://api.github.com/users/dtomasi/repos","events_url":"https://api.github.com/users/dtomasi/events{/privacy}","received_events_url":"https://api.github.com/users/dtomasi/received_events","type":"User","site_admin":false},"created_at":"2015-04-27T13:34:01Z","updated_at":"2015-04-27T13:34:01Z","body":"I´m firing `contao.framework.initialize` because developers can then also use EventDispatcher instead of the legacy-hook. But if there is a other solution, we can drop this. "}}