[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-core-devel
Subject: New KNetwork update
From: Thiago Macieira <thiago () kde ! org>
Date: 2007-04-01 21:39:38
Message-ID: 200704012339.49593.thiago () kde ! org
[Download RAW message or body]
I have finished adding the new "module" into kdecore.
The new "module" consists of three classes:
1) KLocalSocket
2) KLocalSocketServer
3) KSocketFactory
The first is used to open Unix socket connections; the second is the
server and the third contains only static methods that return sockets
opened to remote servers (non-local).
The KLocalSocket class needs its front-end rewritten so that it no longer
derives from QAbstractSocket. The rest seems to be rather complete.
With that, the following concepts completely disappear from KDE:
a) a unified socket class that does Unix sockets and TCP/IP
you now need to use two different classes if your application can use
both concepts
b) port numbers (services) as strings
I have tried for six years to introduce this concept. I gave up.
c) blocking sockets
following the Qt lead, all sockets are now asynchronous. This has a
great impact on ioslaves. You have to add the necessary waitFor*() calls.
d) KIDNA and KSocks
just stop using them. KIDNA is replaced by QUrl. As for KSocks, you
should not be using file descriptors, period.
The old code is still there, for the moment. I can't remove it because the
low-level KIO protocol (KIO::SlaveInterface, KIO::Slave, KIO::Connection)
is a big mess and depends on some of the concepts there. Until such time
as I rewrite the wire protocol and KIO::Connection, it'll have to stay.
The old headers are renamed k3*.h. To port, just change your #includes
(until someone renames the namespace).
I have finished porting kdelibs. That's all. I have not had time to work
on kdebase and will not have until next weekend. I am sorry.
One other thing: QSslSocket is now mandatory. Qt 4.2 no longer builds
kdelibs.
--
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
PGP/GPG: 0x6EF45358; fingerprint:
E067 918B B660 DBD1 105C 966C 33F5 F005 6EF4 5358
[Attachment #3 (application/pgp-signature)]
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic