Commit Graph

169 Commits

Author SHA1 Message Date
Dan Mills
fd1579088c fix tracker's onItemRemoved 2009-01-02 16:16:38 -08:00
Dan Mills
5e7867a4de add a _getWeaveParentIdForItem method; fix getAllIDs; add a createMetadataRecord method 2009-01-02 13:49:19 -08:00
Dan Mills
5e3ac9586e add a generic cache class for storing records during reconciliation. cache has 100 item limit, and is cleared before and after reconciliation so the OS can reclaim memory after GC 2008-12-30 23:52:20 -08:00
Dan Mills
380b614133 make engine keep less records in memory by limiting the outgoing queue to a maximum of 100 records, and fetch the rest from the store each time 2008-12-29 23:28:17 -08:00
Dan Mills
6b260498e0 switch to generating individual bookmark records directly from the places store, without using a cache (to improve memory performance); create objects for bookmark types; temporarily disable history sync 2008-12-28 19:59:44 -08:00
Dan Mills
58318f5332 remove commented-out code 2008-12-26 21:50:07 -08:00
Dan Mills
62a45ad0ab Various engine/bookmark changes:
* Rely on the server to sort incoming records, remove all sorting code client-side.
* Streamline sync to be able to process incoming records one at a time, as soon as they are downloaded.  This changes reconciliation to be able to process a single incoming record.
* Engine base class will automatically convert parentid, depth, and sortindex into toplevel WBO objects.  This is good for now but kinda broken, engine subclasses should really be generating WBO records themselves.
* Since index is now a toplevel WBO property, there is no need for the bookmarks sync code to subclass recordLike.
* Refactor bookmarks store to be a little cleaner and work directly with records instead of "commands".
2008-12-23 11:30:31 -08:00
Dan Mills
92a77b80e1 remove accidentally committed logging calls 2008-12-23 11:23:10 -08:00
Dan Mills
efdd9ff7cf fix typo in history sql queries, clarify valid sort order values for collections 2008-12-19 17:00:12 -08:00
Dan Mills
08512b99a5 change engine to process (download, reconcile, apply changes) incoming records one by one 2008-12-19 11:48:09 -08:00
Dan Mills
d55df6a1f4 implement the awe (or tears) inducing places-style sql queries -- history sync works pretty well now 2008-12-18 22:39:32 -08:00
Dan Mills
e21bb9c514 typo fix 2008-12-18 01:09:17 -08:00
Dan Mills
9768e6c566 sync visit times and transition types for history 2008-12-17 16:04:03 -08:00
Dan Mills
06dc4da97f sync only the last 150 history items (pending some special sauce to sync high-scoring items); various sql fixes. history is syncing now, though there are bugs here and there 2008-12-17 02:32:00 -08:00
Dan Mills
32773c0f83 override _itemExists, itemExists (no _) checks for cached items, then calls that 2008-12-17 02:29:28 -08:00
Dan Mills
c02d11a89e api change for stores, deal with records not 'commands' 2008-12-16 17:06:45 -08:00
Anant Narayanan
ea93b73081 Make Form history sync work again with new engine 2008-12-13 16:33:04 +01:00
Dan Mills
f1a5b78d89 merge upstream changes 2008-12-12 13:57:05 -08:00
Dan Mills
6d599af9b4 closer to history somewhat working. need to rethink approach because of performance problems 2008-12-12 13:55:58 -08:00
Dan Mills
3c88a35efd remove slightly misleading comment 2008-12-12 13:54:19 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
1e27ccd917 Merged 2008-12-11 15:19:43 -08:00
jonathandicarlo@jonathan-dicarlos-macbook-pro.local
db031ee612 On Fennec there is no microsummaries service, so I made the BookmarksEngine catch the exception if the service is undefined, and skip commands that would require it to create a microsummary, logging warnings instead. 2008-12-11 14:26:20 -08:00
Dan Mills
022ceb5055 closer to history working 2008-12-10 00:57:27 -08:00
Dan Mills
3ef1c0d9b1 enable history sync (not working yet) 2008-12-09 12:26:14 -08:00
Dan Mills
f2e4594263 make changeItemID exclusively a store method 2008-12-08 13:21:25 -08:00
Dan Mills
9070a62677 remove sync cores, they are no longer used; remove sharing code from bookmarks (we can bring it back when we need it again, needs work); have the engine give hints to the store about when to wrap all items and cache them (to make subsequent calls to wrap one item fast); move serializeItem/getAllIDs into the store 2008-12-08 09:53:32 -08:00
Dan Mills
b8a8a42755 tracker now caches places id -> guid mappings, since otherwise it can't retrieve the correct guid on item removal (because the callback happens after the item is removed) 2008-12-06 00:12:40 -08:00
Dan Mills
f1332902ba parentGUID -> parentid 2008-12-05 03:36:27 -08:00
Dan Mills
95b8e357b2 disable tracker for entire sync run. make sure tracker is re-enabled at the end 2008-12-05 00:55:19 -08:00
Dan Mills
c1a443df70 use callbacks instead of snapshot diffs to figure out what changes to send to the server 2008-12-05 00:39:54 -08:00
Dan Mills
dd8e0e678b fix bookmarks tracker by removing yield calls (which of course don't work as callbacks for nsIBookmarksObserver) 2008-12-02 16:46:24 -08:00
Dan Mills
a67aabffa4 add logic to detect when the same item is in both incoming & outgoing queues, but with different IDs - change the local ID in that case 2008-11-27 00:25:28 +09:00
Dan Mills
c221d2ea8e decrypt incoming items all in one go so as to sort them by index (which is inside the payload); don't attempt to change the index of an item if we're also changing its folder; only change index/parent if it's different from current value 2008-11-26 14:07:18 +09:00
Dan Mills
36a866416f query the bookmarks service to find out if we have an item (instead of our snapshot cache) 2008-11-25 14:49:18 +09:00
Dan Mills
fb99c9f85e fix bookmark deletion sync 2008-11-25 01:49:02 +09:00
Dan Mills
35bbc1b8c0 work with NewEngine 2008-11-20 09:21:12 +09:00
Dan Mills
6f6665b8e1 remove some sharing code, derive from NewEngine 2008-11-06 19:18:46 -08:00
Dan Mills
d3af90034a hg merge 2008-11-03 15:02:00 -08:00
Dan Mills
6151afb26d fix log4moz calls (new api), fix module imports for renamed modules 2008-11-03 15:00:38 -08:00
Dan Mills
6a2010fc4c disable bookmark sharing hooks 2008-10-16 12:30:30 -07:00
Dan Mills
75326713c1 Bug 443489: use the correct cookie xpcom interface 2008-10-16 12:29:21 -07:00
Dan Mills
e53290c477 catch exceptions from microsummaries that don't have a static title set 2008-08-13 15:23:15 -07:00
Dan Mills
72f3cc9e31 Bug 450396: password engine does not define a tracker 2008-08-13 15:19:56 -07:00
Dan Mills
556e90536f merge upstream changes 2008-08-08 14:43:36 -07:00
Dan Mills
1f877adb30 move some code from the engine to remote.js; rename FileEngine to BlobEngine (since it doesn't actually sync complete files); clean up SyncEngine's sync method 2008-08-08 14:42:57 -07:00
Anant Narayanan
c200956d6a Syncing for Awesome bar (bug 437133, r=thunder) 2008-08-07 20:00:35 -07:00
Anant Narayanan
94b9dfcd2e Automated merge with ssh://anarayanan@mozilla.com@hg.mozilla.org/labs/weave 2008-08-04 17:23:36 -07:00
Anant Narayanan
8d3528d073 Asynchronous bookmark sharing (bug 449113, r=thunder) 2008-08-04 17:23:23 -07:00
Dan Mills
c5a94ec81c filter out invalid tags when applying edit commands 2008-07-31 00:21:22 -07:00
Dan Mills
0102f2cd60 more tab sync fixes, only disposing is left to fix; also allow the notify wrapper to pass along an optional data payload 2008-07-30 21:58:13 -07:00