I think that sounds correct, Benjamin. #2 would give a basis for
comparison if modification times are tracked in the local copy and #1
would provide a method of saving all new and modified bookmarks at
once rather than doing it for individual bookmarks.
I think we would need another method in the same vein for mass
deletion as well, though, where the local copy would have to keep
track of deletion times as well.
I suspect that Simpy isn't retaining deleted bookmarks, as that could
eventually require a large amount of disk space over time. I imagine
that #3 might be a problem in that respect. If I'm wrong, then yes,
the methods we've described thus far should allow for the
implementation of two-way synchronization, which I think would be
great for backups as well as applications with offline support.
On 7/4/07, Benjamin Reitzammer <breitzammer@...> wrote:
> Hi,
>
> I agree with you Matthew. What do you think would be such operations,
> that are needed for a more efficient synchronization?
>
> I can think of only three:
> 1) Some kind of "mass-saving/updating" method would be needed. Because
> when I sync after a long period of being offline, it's probable that a
> lot has changed. And instead of making a single call for each of the
> possibly hundred changed items, a single call with all changed items
> within, would be a lot more efficient.
>
> 2) Something like "lastUpdate". The del.icio.us API has the "update"
> call (http://del.icio.us/help/api/update) which returns the time the
> last change happened on the server side. This would help save
> unnecessary API calls. Some, if not a lot.
>
> 3) Going even further would be a call, that would return only the
> added AND deleted items after a given point in time. I think this,
> includes the "lastupdate" call somehow, and together with number 1)
> would result in only a total of two calls being necessary for a
> complete sync between local and remote.
>
> What do you think?
>
> Cheers
>
> Benjamin