Services/Sync/Developer/StorageFormat: Difference between revisions

From MozillaWiki
< Services‎ | Sync
Jump to navigation Jump to search
(initial structure)
 
(add more structure)
Line 1: Line 1:
Under a user's <tt>/storage</tt> path, there's a set of well-known records and storage formats used by the Weave Sync add-on. This document describes the JS-object format of the JSON-string <tt>payload</tt>.
Under a user's <tt>/storage</tt> path, there's a set of well-known records and storage formats used by the Weave Sync add-on. This document describes those records and their formats, e.g., JS-object format of the JSON-string <tt>payload</tt>.


= meta/global =
= Weave Basic Object =
 
All records from the server come back as a JSON string that represent a JS-object with some attributes.
 
== Version 2 ==
 
== Changes from v1 -> v2 ==


This record contains general metadata to describe data like versions and syncID.
== Version 1 ==
 
= Encrypted Data Object =
 
Individual data engines, e.g., bookmarks, encrypt their [[Labs/Weave/Developer/BrowserObjects|BrowserObjects]] payloads before packing it into a Weave Basic Object.
 
== Version 2 ==
 
== Changes from v1 -> v2 ==
 
== Version 1 ==
 
= Payload: meta/global =
 
The payload of the <tt>meta/global</tt> record contains general metadata to describe data like versions and syncID.


== Version 2 ==
== Version 2 ==
Line 18: Line 38:
  <b>syncID</b> <i>string</i>:
  <b>syncID</b> <i>string</i>:


= Weave Basic Object =
= Payload: keys/pubkey =
 
== Version 2 ==
 
== Changes from v1 -> v2 ==
 
== Version 1 ==
 
= Payload: keys/privkey =
 
== Version 2 ==
 
== Changes from v1 -> v2 ==
 
== Version 1 ==
 
= Payload: crypto/<engine> =
 
== Version 2 ==
 
== Changes from v1 -> v2 ==
 
== Version 1 ==

Revision as of 19:31, 29 March 2010

Under a user's /storage path, there's a set of well-known records and storage formats used by the Weave Sync add-on. This document describes those records and their formats, e.g., JS-object format of the JSON-string payload.

Weave Basic Object

All records from the server come back as a JSON string that represent a JS-object with some attributes.

Version 2

Changes from v1 -> v2

Version 1

Encrypted Data Object

Individual data engines, e.g., bookmarks, encrypt their BrowserObjects payloads before packing it into a Weave Basic Object.

Version 2

Changes from v1 -> v2

Version 1

Payload: meta/global

The payload of the meta/global record contains general metadata to describe data like versions and syncID.

Version 2

storageVersion int:
syncID string:
engines object:

Changes from v1 -> v2

Version 1

storageVersion string:
syncID string:

Payload: keys/pubkey

Version 2

Changes from v1 -> v2

Version 1

Payload: keys/privkey

Version 2

Changes from v1 -> v2

Version 1

Payload: crypto/<engine>

Version 2

Changes from v1 -> v2

Version 1