canmove, Confirmed users
725
edits
(Created page with "=Overview= Tracking bug for Sync: {{bug|606353}} =Bookmarks= {{bug|519514}} IMHO the overall theme here would be to provide powerful asynchronous methods to replace Sync's ma...") |
No edit summary |
||
Line 2: | Line 2: | ||
Tracking bug for Sync: {{bug|606353}} | Tracking bug for Sync: {{bug|606353}} | ||
==Current situation== | |||
Right now Sync calls various synchronousm Places API methods to read and write records, with the exception of history reads where it rolls its own asynchronous SQL queries. | |||
==Problem== | |||
Synchronous sqlite I/O is hurting us a lot on mobile. | |||
==Proposed solution== | |||
Provide powerful asynchronous methods to replace Sync's many synchronous calls. So instead of adding a bookmark and then adding a bunch of annotations to it, it would be great if Places had an API that would let us do it one go, do all the writes async and then call us back. | |||
=Bookmarks= | =Bookmarks= | ||
Line 7: | Line 19: | ||
{{bug|519514}} | {{bug|519514}} | ||
Description of Sync's bookmark record (includes folders, separators, livemarks, etc.): https://wiki.mozilla.org/Labs/Weave/Developer/BrowserObjects#bookmark | |||
=Proposal= | |||
Introduce | |||
* getBookmarkInfoAsync() | |||
* insertBookmarkAsync() | |||
* updateBookmarkAsync() | |||
that return/take in as much information as we keep about bookmarks. | |||
TODO flesh these out | |||
=Read= | =Read= | ||
Line 21: | Line 43: | ||
I imagine that this information could be retrieved with one query which could be wrapped into getBookmarkInfoAsync() or similar API call. | I imagine that this information could be retrieved with one query which could be wrapped into getBookmarkInfoAsync() or similar API call. | ||
=Write= | =Write= |