New KIO::Connection
Thiago Macieira
thiago at kde.org
Sun Jul 8 15:56:56 BST 2007
I'd like to apply a patch very similar to the one attached to kdelibs in a
week's time (i.e., not tomorrow). I am still testing a couple of things
and some bugs may show up.
I have redesigned KIO::Connection and adapted KIO::Slave,
KIO::SlaveInterface and klauncher to the new API. The class is exported,
but is private, so there should be no impact at all in any application. I
have only found offending code in kio_file, which I will need to fix.
The new implementation completely does away with file descriptors. It uses
KLocalSocket for now as its only backend, but I want to write at least
one more, based on D-Bus. The main reason for this change is to make sure
we can get rid of K3Network and, therefore, support more platforms.
In the process of developing it, I realised that KIO::SlaveInterface was
an abstraction for KIO::Slave, but right now it's not possible to have
one without the other, and it's the abstraction that imposes the format
of int+QByteArray for as a communication method. It should be possible to
merge them into a single class.
kinit/klauncher.cpp | 46 ---
kinit/klauncher.h | 11
kio/CMakeLists.txt | 2
kio/kio/connection.cpp | 678
++++++++++++++++++++++++++++-----------------
kio/kio/connection.h | 130 ++++----
kio/kio/connection_p.h | 82 +++++
kio/kio/dataslave.cpp | 2
kio/kio/scheduler.cpp | 1
kio/kio/slave.cpp | 223 +++++---------
kio/kio/slave.h | 14
kio/kio/slavebase.cpp | 146 +++------
kio/kio/slaveinterface.cpp | 87 ++---
kio/kio/slaveinterface.h | 15
kio/kio/slaveinterface_p.h | 63 ++++
14 files changed, 860 insertions(+), 640 deletions(-)
--
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
PGP/GPG: 0x6EF45358; fingerprint:
E067 918B B660 DBD1 105C 966C 33F5 F005 6EF4 5358
-------------- next part --------------
A non-text attachment was scrubbed...
Name: new-kio-connection.diff.gz
Type: application/x-gzip
Size: 15910 bytes
Desc: not available
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20070708/4d804562/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20070708/4d804562/attachment.sig>
More information about the kde-core-devel
mailing list