Closed Bug 744809 Opened 13 years ago Closed 12 years ago

Move session store from harvester to provider model

Categories

(Firefox :: Session Restore, defect)

defect
Not set
normal

Tracking

()

RESOLVED WONTFIX

People

(Reporter: ttaubert, Unassigned)

Details

Attachments

(1 file)

Attached patch patch v1 (WIP)Splinter Review
Session store should ideally know very little about the data it is storing and restoring. Therefore we need to stop collecting and start asking providers for their data. That's a very early work-in-progress patch I'd like to get some feedback on. The RestoreDataProviders.jsm is actually just a bad hack to register all data providers *once* on startup before session store starts restoring things. I'm sure there's a better way to do it but I wanted to make sessionstore tests run :) For a start, I integrated SessionStorage (per-tab) and Scratchpads (per-browser). I couldn't find anything per-window for now, maybe we don't even need this.
Attachment #614411 - Flags: feedback?(paul)
Attachment #614411 - Flags: feedback?(dietrich)
Comment on attachment 614411 [details] [diff] [review] patch v1 (WIP) Review of attachment 614411 [details] [diff] [review]: ----------------------------------------------------------------- First off, awesome :) Ok a couple quick comments... 1. This is much closer to what I was thinking for SS2 (https://wiki.mozilla.org/User:Zpao/SessionStore2). I know what you have is a transitional state, but I was envisioning a cleaner break. This still pigeon holes us into a browser > window > tab structure and forces providers to think like that. I guess we're not going away from that setup anytime soon, though so it's probably fine (I hadn't gotten to the details like this, so these are just first glance thoughts). 2. Let's do away with passing stringified JS objects around and constantly needing to parse & stringify. Use jsvals (we already started this with nsISessionStartup). We can make that change starting with providers and then make it in the core service too. 3. Does this open us up to getting rid of extData? 4. I'd envisioned something like registerProvider(key, provider) but something like this would work too. I think we want to provide a way to check if there's already a provider for a key pre-registration So f+ for the general work happening, but I think we should hammer out the end goal before putting too much more work in.
Attachment #614411 - Flags: feedback?(paul) → feedback+
Comment on attachment 614411 [details] [diff] [review] patch v1 (WIP) Cancelling feedback request. Let's spec out the details first.
Attachment #614411 - Flags: feedback?(dietrich)
Closing, we have different plans now.
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: