Hi Mark, > Hi Guys (John, copied you in in case your working on anything > significant). > > I've been meaning to do a few things to sync engine, and I've finally > got around to figuring out how I want some of it to work. This is a > request for comments, ideas, help with some sticking points, and sanity > checking :) > > It started with wanting to get pre WM5 devices into sync engine, at > which point I decided this would be easier if sync engine was designed > to handle multiple devices, because then you just support 2 classes of > device. Of course multiple devices would be cool anyway, so I'll do that > first.
I do like the idea of just having one sync-engine that can handle both the post wm5 devices, as well as the pre wm5 devices. Regarding the multiple devices, I still have not gotten around to test this, but does it actually work in Windows to have multiple WM5/6 devices connected at the same time? > > > The first bit is quite easy, move a lot of stuff from the SyncEngine > class into a new Device class, and have SyncEngine maintain a collection > of Devices. I intend to then have an 'active' device which all sync > activities act on. This is not complete multi device functionality, but > would allow multiple devices to connect without confusing sync engine, > which I believe would cause problems at the moment. I have to say that this idea sounds pretty sane to me. > > > The next step I haven't completely ironed out yet, but would be > something like this. > > Each Device would advertise the dbus interface on its own object path, > either using the device id or partnership id as part of the path, I'm > not sure which. The opensync sync group would then have device and > partnership info as part of its config, so it could contact the correct > dbus object. This would also tie an opensync group to a partnership, > which is definitely a good thing. Indeed the last part is indeed a good thing. It would also allow for aborting cleanly in case you are using a different device with the opensync group, instead of messing up everything. > > I've currently got two problems with this second part. Firstly, creating > a partnership and sync group would have to be combined for everyday > users, and I can't decide the best way to do that. One possibility would be creating a partnership name in the opensync configuration for our synce plugin. You could then see if it is possible to have the opensync-synce plugin talk to sync-engine, see if the partnership exists. If it does not exist AND if there is a free slot, the partnership with the given name will be created automatically. This way you would have all the work done by the opensync plugin. Using the above would enable users to only have to set the partnership name in the configuration for opensync, and the partnership would be created automagically. Let me know what you think about the above approach. > > The next problem is a little more complex. To sync multiple devices > needs multiple sync groups, but we've gone a way to doing that above > with different configs. However, to enable device initiated sync, we > need to know the name of the sync group for that device to run the > correct command. I guess this could just be in the partnership specific > config, but I don't think this is well known. Maybe some kind of config > editor ? One possibility could be to have the same name for the partnership and the opensync group to be able to use this feature? Guido Diepen -- Aviation is proof that given the will, we have the capacity to achieve the impossible. --Eddie Rickenbacker ------------------------------------------------------------------------------ Come build with us! The BlackBerry(R) Developer Conference in SF, CA is the only developer event you need to attend this year. Jumpstart your developing skills, take BlackBerry mobile applications to market and stay ahead of the curve. Join us from November 9 - 12, 2009. Register now! http://p.sf.net/sfu/devconference _______________________________________________ SynCE-Devel mailing list SynCE-Devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/synce-devel