KDSoapPendingCall_p.h

00001 /****************************************************************************
00002 ** Copyright (C) 2010-2010 Klaralvdalens Datakonsult AB.  All rights reserved.
00003 **
00004 ** This file is part of the KD SOAP library.
00005 **
00006 ** Licensees holding valid commercial KD Soap licenses may use this file in
00007 ** accordance with the KD Soap Commercial License Agreement provided with
00008 ** the Software.
00009 **
00010 **
00011 ** This file may be distributed and/or modified under the terms of the
00012 ** GNU General Public License version 2 and version 3 as published by the
00013 ** Free Software Foundation and appearing in the file LICENSE.GPL included.
00014 **
00015 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
00016 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
00017 **
00018 ** Contact info@kdab.com if any conditions of this licensing are not
00019 ** clear to you.
00020 **
00021 **********************************************************************/
00022 
00023 #ifndef KDSOAPPENDINGCALL_P_H
00024 #define KDSOAPPENDINGCALL_P_H
00025 
00026 #include <QSharedData>
00027 #include <QBuffer>
00028 #include <QXmlStreamReader>
00029 #include "KDSoapMessage.h"
00030 #if QT_VERSION >= 0x040600
00031 #include <QWeakPointer>
00032 #else
00033 #include <QPointer>
00034 #endif
00035 
00036 class QNetworkReply;
00037 class KDSoapValue;
00038 
00039 class KDSoapPendingCall::Private : public QSharedData
00040 {
00041 public:
00042     Private(QNetworkReply* r, QBuffer* b)
00043         : reply(r), buffer(b), parsed(false)
00044     {
00045     }
00046     ~Private();
00047 
00048     void parseReply();
00049     KDSoapValue parseReplyElement(QXmlStreamReader& reader);
00050 
00051     // Can be deleted under us if the KDSoapClientInterface (and its QNetworkAccessManager)
00052     // are deleted before the KDSoapPendingCall.
00053 #if QT_VERSION >= 0x040600
00054     QWeakPointer<QNetworkReply> reply;
00055 #else
00056     QPointer<QNetworkReply> reply;
00057 #endif
00058     QBuffer* buffer;
00059     KDSoapMessage replyMessage;
00060     bool parsed;
00061 };
00062 
00063 #endif // KDSOAPPENDINGCALL_P_H
 All Classes Functions Enumerations Enumerator Friends

Klarälvdalens Datakonsult AB (KDAB)
Qt-related services and products
http://www.kdab.com/
http://www.kdab.com/products/kd-soap/