{"action":"created","issue":{"url":"https://api.github.com/repos/mozilla/MozStumbler/issues/1365","labels_url":"https://api.github.com/repos/mozilla/MozStumbler/issues/1365/labels{/name}","comments_url":"https://api.github.com/repos/mozilla/MozStumbler/issues/1365/comments","events_url":"https://api.github.com/repos/mozilla/MozStumbler/issues/1365/events","html_url":"https://github.com/mozilla/MozStumbler/issues/1365","id":52659236,"number":1365,"title":"Simulation Mode should be refactored into an injected dependency","user":{"login":"crankycoder","id":4829,"avatar_url":"https://avatars.githubusercontent.com/u/4829?v=3","gravatar_id":"","url":"https://api.github.com/users/crankycoder","html_url":"https://github.com/crankycoder","followers_url":"https://api.github.com/users/crankycoder/followers","following_url":"https://api.github.com/users/crankycoder/following{/other_user}","gists_url":"https://api.github.com/users/crankycoder/gists{/gist_id}","starred_url":"https://api.github.com/users/crankycoder/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/crankycoder/subscriptions","organizations_url":"https://api.github.com/users/crankycoder/orgs","repos_url":"https://api.github.com/users/crankycoder/repos","events_url":"https://api.github.com/users/crankycoder/events{/privacy}","received_events_url":"https://api.github.com/users/crankycoder/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/mozilla/MozStumbler/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"closed","locked":false,"assignee":{"login":"crankycoder","id":4829,"avatar_url":"https://avatars.githubusercontent.com/u/4829?v=3","gravatar_id":"","url":"https://api.github.com/users/crankycoder","html_url":"https://github.com/crankycoder","followers_url":"https://api.github.com/users/crankycoder/followers","following_url":"https://api.github.com/users/crankycoder/following{/other_user}","gists_url":"https://api.github.com/users/crankycoder/gists{/gist_id}","starred_url":"https://api.github.com/users/crankycoder/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/crankycoder/subscriptions","organizations_url":"https://api.github.com/users/crankycoder/orgs","repos_url":"https://api.github.com/users/crankycoder/repos","events_url":"https://api.github.com/users/crankycoder/events{/privacy}","received_events_url":"https://api.github.com/users/crankycoder/received_events","type":"User","site_admin":false},"milestone":null,"comments":3,"created_at":"2014-12-22T15:29:59Z","updated_at":"2015-02-18T15:08:28Z","closed_at":"2015-02-18T15:08:28Z","body":"The current implementation of #1191 uses a ContextWrapper around the application context as a control point for all simulation events.  This is problematic as we need to manage how the contexts are passed around throughout the application.  It's very likely that we'll break the simulation mode as we make further modifications to the stumbler codebase.\r\n\r\nWe should instead have a service provided by an interface ISimulation which provides all the generators for GPS, Cell and Wifi data.  Toggling the simulation mode can then just create or destroy the simulation service and all dependant classes can just check for NULL when they request the simulation service."},"comment":{"url":"https://api.github.com/repos/mozilla/MozStumbler/issues/comments/74879097","html_url":"https://github.com/mozilla/MozStumbler/issues/1365#issuecomment-74879097","issue_url":"https://api.github.com/repos/mozilla/MozStumbler/issues/1365","id":74879097,"user":{"login":"crankycoder","id":4829,"avatar_url":"https://avatars.githubusercontent.com/u/4829?v=3","gravatar_id":"","url":"https://api.github.com/users/crankycoder","html_url":"https://github.com/crankycoder","followers_url":"https://api.github.com/users/crankycoder/followers","following_url":"https://api.github.com/users/crankycoder/following{/other_user}","gists_url":"https://api.github.com/users/crankycoder/gists{/gist_id}","starred_url":"https://api.github.com/users/crankycoder/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/crankycoder/subscriptions","organizations_url":"https://api.github.com/users/crankycoder/orgs","repos_url":"https://api.github.com/users/crankycoder/repos","events_url":"https://api.github.com/users/crankycoder/events{/privacy}","received_events_url":"https://api.github.com/users/crankycoder/received_events","type":"User","site_admin":false},"created_at":"2015-02-18T15:08:28Z","updated_at":"2015-02-18T15:08:28Z","body":"Merged in #1492"}}