On Tue, 2010-08-31 at 17:19 +0100, Luiz Augusto von Dentz wrote:
> Hi,
> 
> On Tue, Aug 31, 2010 at 1:34 PM, Patrick Ohly <[email protected]> wrote:
> > On Mon, 2010-08-30 at 23:06 +0100, Luiz Augusto von Dentz wrote:
> >> OpenSync there is a plugin in obexd to support synchronization over
> >> obex, is there a plan to have such a plugin for buteo too?
> >
> > There's a feature request open:
> > http://bugs.meego.com/show_bug.cgi?id=3868
> >
> > It's a bit unclear to me if and when that'll get implemented.
> 
> Well, I can implement it, Im not sure why you guys are pointing to
> meego bugs when meego is suppose to use what is upstream,

*If* an upstream project is used, *then* the policy is to work upstream.
But there's no policy that all code in MeeGo has to be released and
maintained as a separate upstream project. Many core components were
specifically developed for Harmattan and MeeGo.

>  that means
> buteo and obexd upstream must agree on what is best to do here, or is
> buteo suppose to be meego only?

<disclaimer>Note that I am only commenting here from the view point of
an outside observer of the Buteo project, not as one of its developers
(which I am not).</disclaimer>

At the moment, Buteo is getting developed inside Nokia: all the
developers are from Nokia, code gets committed to Nokia-internal repos,
the change log contains only references to a closed issue tracker that
(presumably) covers the next Nokia product.

Code gets copied to the MeeGo repos occasionally. The only public issue
tracker is the one in bugs.meego.com, but it doesn't see much activity.
Both will probably change at some point in the future, but we are not
there yet.

Beyond MeeGo, everything is speculation at this point. I have no idea
whether the developers are interested in supporting additional
platforms, and have the necessary time. The PIM storages that Buteo
interfaces with have to implement a lot more functionality than is
commonly found in PIM storage systems. Porting to Evolution Data Server
or Akonadi (to name just two that I am familiar with) will be hard.

> >> The reason that Im asking this is because we did recently integrate
> >> irmc (Sync) profile in obexd which we might use sync framework to get
> >> the necessary information, so my hope is that we don't have to
> >> duplicate code for handling obex connection when in fact we already
> >> have a dedicated daemon doing that, obexd, in fact this should
> >> simplify a lot the connection handling since all sync framework would
> >> need to care is the syncml not obex and obviously obexd is already
> >> doing connection handling for other obex targets.
> >
> > What you describe is the design implemented in SyncEvolution and obexd
> > for Moblin. In the Buteo design, msyncd is the central daemon which
> > accepts incoming OBEX connections directly by calling libopenobex.
> 
> But it doesn't have to, actually msyncd already depend on obexd
> anyway, since obexd handles other requests like capabilities request.
> So my point is basically to use obexd (OBEX daemon) for what it is
> for, handling OBEX connections, and leave msyncd to do the
> synchronization, this should simplify the design.

For what it's worth, I agree with you. After all, I came to the same
conclusion before ;-)

Coming back to a more technical discussion: there are pros and cons for
both approaches. obexd: code reuse, clean separation. msyncd: all
communication local.

You could use obexd to handle OBEX, then talk to some msyncd server
plugin over some custom (D-Bus) protocol to handle the SyncML messages
and syncing itself. There's example code on the obexd side with the
"syncevolution" plugin. You could even reimplement the server-side D-Bus
API and thus make Buteo work without having to touch obexd at all. See
http://api.syncevolution.org/#Server.Connect
http://api.syncevolution.org/#Connection

There are no example server plugins for Buteo, so you'll have to ask
Sateesh if you cannot figure out how to write one from the design
document and the comments in buteo-syncfs/msyncd.

-- 
Best Regards

Patrick Ohly
Senior Software Engineer

Intel GmbH
Open Source Technology Center               
Pützstr. 5                              Phone: +49-228-2493652
53129 Bonn
Germany

_______________________________________________
MeeGo-dev mailing list
[email protected]
http://lists.meego.com/listinfo/meego-dev

Reply via email to