[Kde-imaging] libkvkontakte depends on Qt 4.8

Alexander Potashev aspotashev at gmail.com
Mon May 18 12:44:57 UTC 2015


Hi Gilles,

Please find my comments below.

2015-05-18 9:04 GMT+03:00 Gilles Caulier <caulier.gilles at gmail.com>:
> 2015-05-17 23:45 GMT+02:00 Alexander Potashev <aspotashev at gmail.com>:
>> Another commit I have just pushed removes the files mpform.* in favor
>> of my own code for HTTP multi-part requests using
>> QHttpMultiPart/QNetworkAccessManager.
>
> This way permit to be logged to a remote service without to use an
> external session of  web browser as it's done in all web service kipi
> tools ? If yes, this solution must be the good way to apply in a
> common class from internal libkipiplugins (not libkipi) to generalize
> this authentification method.
>
> Remember that we have a student who will work on kipi-plugins core to
> factorize all web service tool codes.

No, it is not about authentication. The multi-part request is only
used to actually upload photos.

But there are more advantages in using QHttpMultiPart besides licensing:
 1. We reduce the amount of code.
 2. This way we do not prepare the whole request (possibly
multi-megabyte) in a QByteArray. In my indestanding,
QNetworkAccessManager reads the images from disk as soon as they are
ready to be uploaded, thus preventing peaks in memory usage. I did not
actually check the memory usage though.

It may be interesting to factorize the code around QHttpMultiPart I
added in libkvkontakte/photopostjob.cpp and move it in a handy
function/class in libkipiplugins. I have not done this myself yet,
mainly because I didn't take time to have a look at the other export
plugins using mpform.{cpp,h} to see what would be the best API for
this in libkipiplugins. May be it should be just a rewritten version
of class MPForm taking advantage of QHttpMultiPart.


Thanks for the green light on new external dependency in the coming
digiKam 4.x releases! There is still some polishing left to do, and
then I'll hopefully announce a new release of libkvkontakte.

-- 
Alexander Potashev


More information about the Kde-imaging mailing list