--- Comment #2 from pohly <patrick.ohly(a)intel.com> 2010-03-10 06:04:05 PST ---
(In reply to comment #1)
1)Class Cmdline is used to do sync, configure, etc. The first idea is
it in Cmdline.h/cpp, however, it belongs to libsyncevolution and now cppunit
tests are based on it, so i think it isn't suitable to use it in
syncevolution.cpp. New command line should not use libsyncevolution.
I disagree on that. The new command line tool should be able to do both: run as
small wrapper around D-Bus *and* call Cmdline/libsyncevolution.so directly. The
latter is useful a) when SyncEvolution is compiled without D-Bus and b) for
SyncEvolution client<->SyncEvolution server tests.
Right now, the later won't work when the command line uses the D-Bus server
because the D-Bus server only supports one session at a time.
2)For the option '--version' in the command line, dbus server
don't support it.
I suggest a new method in dbus api 'GetCapability' returning a list of strings
to represent server related info.
I think this is going in the wrong direction. You seem to attempt to
reimplement all command line options as D-Bus operations. This is not what I
meant with "pass all argv to a new D-Bus method and have it processed as part
In that all approach, all that is needed is one new API: "execute(char
*argv)". It'll get a D-Bus session, then inside that session invoke the
Cmdline methods, which can call the same code as they do now instead of going
through the D-Bus API.
The main gaps around that are output handling and integrating the session
started by "--run" with the current D-Bus Session (not sure whether that is
necessary, but I suspect so).
3) when no any parameters in command line, current behavior is to
registered sources' databases. Now dbus api don't have this kind of API. Is it
ok to add a new API for this?
4) '--keyring' is tried to be removed since dbus server makes the decision.
It would still be needed for "non-D-Bus mode".
5) DBus server has no api to return valid properties and valid
do we really need this? I think yes, it would be better to add new APIs.
6) DBus server has no api to know all backends info, e.g, info from
SyncSource::backendsInfo(), also through 'GetCapability'?
7)'restore' method don't support 'dryrun'
parameter in current DBus API. Add
We might want to add it purely to have it feature-complete.
Configure bugmail: http://bugzilla.moblin.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching the assignee of the bug.
You are watching someone on the CC list of the bug.