[PATCH] Multi-Protocol IO-Slave
nf2 at scheinwelt.at
Sun Jan 13 14:18:03 GMT 2008
Aaron J. Seigo wrote:
> On Saturday 12 January 2008, Albert Astals Cid wrote:
>> This is my first and last comment to this thread but i really don't see why
>> we want that in KDE, it seems to me that we already support everything
>> gio/gvfs does and probably better since our KIOs have been much more tested
>> that their new gio/gvfs code, so i don't see the point in this unless it's
> i don't think the benefits have really been communicated at all, no.
Seems like the benefits really need better advertising :-)
Apart from the desktop/toolkit independence (just GLib and D-Bus) and
that one VFS is always better than two (For 3rd party applications the
situation was like the donkey stuck between two haystacks, they avoided
to choose KIO or Gnome-VFS - which sucks) - yes - i think GIO/GVFS is
better than KIO and you will want that stuff.
The most important thing about GIO/GVFS is that introduces a "stateful"
design - very similar to UNIX mounts. You "mount" a network server, type
your password and all applications can work with this share until you
unmount it. Unlike KIO and Gnome-VFS the connection-state is user
manageable (Mount/Unmount). Mounted network resources get listed in all
file-managers and file-choosers (and perhaps on the desktop) just like
your CD-Rom or USB-pen-drive.
The mounts live in multi-threaded mount daemons - one per user at server
mount - applications connect to them via IPC. Cause there is only one
daemon process for a certain user at server, connection state, connection
pooling and -sharing is easier to handle. There is no need for a
password cache. Of course all KDE, Gnome, 3rd party apps in a desktop
session should use the same mount daemons through the GIO client. You
don't want to login twice when working with a KDE app and a GTK app on
the same server. And you don't want to have two instances of
libsmbclient talking to the same server. Of course having the same list
of network drives in all file-managers and -choosers is very important
for a consistency and therefore usability. Also, sharing connections
means you won't hit the "number of connection" limits, some servers have
(Which i already experienced, when using KDE apps along with a Gnome-VFS
apps on the same FTP server).
There are other nice features like the quite flexible API for directory
listings and dir-entry properties, but they are less important i believe.
More information about the kde-core-devel