Confirmed users
176
edits
No edit summary |
No edit summary |
||
| Line 126: | Line 126: | ||
'''NOTE:''' this is like a precondition (If-Unmodified-Since or If-Match), and there is a response 412 Precondition Failed. We could use those? We are using float timestamps instead of HTTP dates; we could use X-If-Unmodified-Since or use ETag. I don't believe, but am not sure, that we need to understand the timestamps as a newer/older kind of thing. At least for this case (<tt>last_modified</tt> is different). | '''NOTE:''' this is like a precondition (If-Unmodified-Since or If-Match), and there is a response 412 Precondition Failed. We could use those? We are using float timestamps instead of HTTP dates; we could use X-If-Unmodified-Since or use ETag. I don't believe, but am not sure, that we need to understand the timestamps as a newer/older kind of thing. At least for this case (<tt>last_modified</tt> is different). | ||
=== User Interface Concerns | === Deleting the data === | ||
The user may delete the data by doing a request to: | |||
POST {collection}?delete | |||
{"reason": "optional text"} | |||
This will wipe the data, and further GET calls will then return: | |||
{"collection_deleted": {"reason": "optional text"}} | |||
The client should see this and ask the user if they want to delete the local data. If the client then does a POST to upload its own data, this erases the deleted state on the collection. | |||
== User Interface Concerns == | |||
While all sync'd applications are in some sense "installed" on all applications, clients (and specifically dashboards) should not treat all applications equivalently. Applications that were installed from elsewhere should be kept separately from applications installed on the device, unless the user has indicated they specifically want the application on the respective device. | While all sync'd applications are in some sense "installed" on all applications, clients (and specifically dashboards) should not treat all applications equivalently. Applications that were installed from elsewhere should be kept separately from applications installed on the device, unless the user has indicated they specifically want the application on the respective device. | ||
| Line 136: | Line 150: | ||
'''NOTE:''' we have to consider what the application picker for Activities looks like too; there is no "dashboard" for Activity picking, so nothing to helpfully distinguish between local and remote apps, or handle app ordering. | '''NOTE:''' we have to consider what the application picker for Activities looks like too; there is no "dashboard" for Activity picking, so nothing to helpfully distinguish between local and remote apps, or handle app ordering. | ||
== Implementation Notes == | |||
The server implementation is hosted at https://github.com/mozilla/appsync | The server implementation is hosted at https://github.com/mozilla/appsync | ||