Directory Links Remote Update - Mardak/tiles-dev GitHub Wiki
This wiki page is about the Remote Update functionality of the Directory Links Firefox Feature.
The goal is to implement functionality for remotely fetching directory links content.
The content is a data payload provided in JSON.
We will attempt to implement this in an iterative fashion, with the following phases:
- Remote update client initial implementation
- Locale separated JSON payloads (statically generated)
- Dynamically updated JSON payloads
##Remote update client initial design
Modules
We implement the remote update client in DirectoryLinksProvider
, which feeds link objects to the Links
object in NewTabUtils
.
The relative locations of the two modules in mozilla central is:
toolkit/modules/newtab/
DirectoryLinksProvider.jsm
NewTabUtils.jsm
For all server interactions, a cookie will be set by the server and needs to be sent on each ping.
Bug 986521 - Fetch Directory Links data from a network location to cache locally
https://bugzilla.mozilla.org/show_bug.cgi?id=986521
Bug 993901 - Implement logic to decide when to fetch remotely hosted links
https://bugzilla.mozilla.org/show_bug.cgi?id=993901
Bug 993904 - Use cached directory links instead of locally packaged links
https://bugzilla.mozilla.org/show_bug.cgi?id=993904
Bug 993906 - Package and send appropriate data with remotely hosted links request
https://bugzilla.mozilla.org/show_bug.cgi?id=993906
Bug 975235 - Add counting of Tile impressions, clicks (inc. which tile and position)
https://bugzilla.mozilla.org/show_bug.cgi?id=975235
Bryan Clark's google doc has a section about payload format, but that will be modified and discussed very soon here.
Server-side pieces
Bug 993908 - Implement serving of static directory links
https://bugzilla.mozilla.org/show_bug.cgi?id=993908
Bug 993912 - Configure directory links servers for logging and connecting of data/flow
https://bugzilla.mozilla.org/show_bug.cgi?id=993912
Bug 995262 - Implement counting/processing of tile impressions/clicks
https://bugzilla.mozilla.org/show_bug.cgi?id=995262
Bug 993914 - Set up long term storage of appropriate data
https://bugzilla.mozilla.org/show_bug.cgi?id=993914