Opened on 09/04/2017 at 11:09:31 AM
Closed on 09/05/2017 at 05:03:28 PM
#5617 closed change (fixed)
Provide with async executor bound to Platform.
Reported by: | sergz | Assignee: | sergz |
---|---|---|---|
Priority: | P2 | Milestone: | |
Module: | Libadblockplus | Keywords: | |
Cc: | fhd | Blocked By: | |
Blocking: | #5556 | Platform: | Unknown / Cross platform |
Ready: | no | Confidential: | no |
Tester: | Unknown | Verified working: | no |
Review URL(s): |
Description
Background
In order to simplify the custom implementation of asynchronous interfaces, in particular in our libadblockplus-android, one has to be able to get access to an asynchronous executor, which will be later managed by Platform, before the latter is constructed. Therefore I propose to create a default platform builder which exposes a scheduler Scheduler which can be used before Platform is constructed, the internals of Scheduler and how it's managed by the Platform is hidden from the user, though.
In addition, it would be good to keep publicly available Platform class not aware about any asynchronous executor, so if a user takes over the responsibility for an implementation of asynchronous interfaces then there is no cost for the asynchronous executor.
What to change
Implement DefaultPlatformBuilder exposing Scheduler, ensuring a default implementation of a missing interface is chosen, allowing to set a default implementation of a particular interface in advance and allowing to finally create the default platform.
A commit referencing this issue has landed:
Issue 5617 - Provide with async executor bound to Platform in the future