summaryrefslogtreecommitdiffstats
path: root/python/pyqt/sip/qtnetwork/qhttp.sip
diff options
context:
space:
mode:
Diffstat (limited to 'python/pyqt/sip/qtnetwork/qhttp.sip')
-rw-r--r--python/pyqt/sip/qtnetwork/qhttp.sip279
1 files changed, 279 insertions, 0 deletions
diff --git a/python/pyqt/sip/qtnetwork/qhttp.sip b/python/pyqt/sip/qtnetwork/qhttp.sip
new file mode 100644
index 00000000..fbcc9999
--- /dev/null
+++ b/python/pyqt/sip/qtnetwork/qhttp.sip
@@ -0,0 +1,279 @@
+// This is the SIP interface definition for QHttp, QHttpHeader,
+// QHttpRequestHeader and QHttpResponseHeader.
+//
+// Copyright (c) 2007
+// Riverbank Computing Limited <info@riverbankcomputing.co.uk>
+//
+// This file is part of PyQt.
+//
+// This copy of PyQt is free software; you can redistribute it and/or modify it
+// under the terms of the GNU General Public License as published by the Free
+// Software Foundation; either version 2, or (at your option) any later
+// version.
+//
+// PyQt is supplied in the hope that it will be useful, but WITHOUT ANY
+// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+// FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+// details.
+//
+// You should have received a copy of the GNU General Public License along with
+// PyQt; see the file LICENSE. If not, write to the Free Software Foundation,
+// Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+
+%ExportedDoc
+<Sect2><Title>QHttp (Qt v3+)</Title>
+<FuncSynopsis>
+ <FuncDef>Q_LONG <Function>readBlock</Function></FuncDef>
+ <ParamDef>char *<Parameter>data</Parameter></ParamDef>
+ <ParamDef>Q_ULONG <Parameter>maxlen</Parameter></ParamDef>
+</FuncSynopsis>
+<Para>
+This takes a single <Literal>maxlen</Literal> parameter. The
+<Literal>data</Literal> is returned if there was no error, otherwise
+<Literal>None</Literal> is returned.
+</Para>
+</Sect2>
+
+<Sect2><Title>QHttpHeader (Qt v3.1+)</Title>
+<Para>
+<Literal>QHttpHeader</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QHttpRequestHeader (Qt v3.1+)</Title>
+<Para>
+<Literal>QHttpRequestHeader</Literal> is fully implemented.
+</Para>
+</Sect2>
+
+<Sect2><Title>QHttpResponseHeader (Qt v3.1+)</Title>
+<Para>
+<Literal>QHttpResponseHeader</Literal> is fully implemented.
+</Para>
+</Sect2>
+%End
+
+
+%If (Qt_NETWORKPROTOCOL_HTTP)
+%If (Qt_3_1_0 -)
+
+class QHttpHeader
+{
+%TypeHeaderCode
+#include <qhttp.h>
+%End
+
+public:
+ QHttpHeader();
+ QHttpHeader(const QHttpHeader &);
+ QHttpHeader(const QString &);
+ virtual ~QHttpHeader();
+
+ QString value(const QString &) const;
+ void setValue(const QString &,const QString &);
+ void removeValue(const QString &);
+
+ QStringList keys() const;
+ bool hasKey(const QString &) const;
+
+ bool hasContentLength() const;
+ uint contentLength() const;
+ void setContentLength(int);
+
+ bool hasContentType() const;
+ QString contentType() const;
+ void setContentType(const QString &);
+
+ virtual QString toString() const;
+ bool isValid() const;
+
+ virtual int majorVersion() const = 0;
+ virtual int minorVersion() const = 0;
+
+protected:
+ virtual bool parseLine(const QString &,int);
+ bool parse(const QString &);
+ void setValid(bool);
+};
+
+
+class QHttpResponseHeader : QHttpHeader
+{
+%TypeHeaderCode
+#include <qhttp.h>
+%End
+
+public:
+ QHttpResponseHeader();
+ QHttpResponseHeader(const QHttpResponseHeader &);
+
+ int statusCode() const;
+ QString reasonPhrase() const;
+
+ int majorVersion() const;
+ int minorVersion() const;
+
+ QString toString() const;
+
+protected:
+ bool parseLine(const QString &,int);
+};
+
+
+class QHttpRequestHeader : QHttpHeader
+{
+%TypeHeaderCode
+#include <qhttp.h>
+%End
+
+public:
+ QHttpRequestHeader();
+ QHttpRequestHeader(const QString &,const QString &,int = 1,int = 1);
+ QHttpRequestHeader(const QHttpRequestHeader &);
+ QHttpRequestHeader(const QString &);
+
+ void setRequest(const QString &,const QString &,int = 1,int = 1);
+
+ QString method() const;
+ QString path() const;
+
+ int majorVersion() const;
+ int minorVersion() const;
+
+ QString toString() const;
+
+protected:
+ bool parseLine(const QString &,int);
+};
+
+%End
+
+
+%If (Qt_3_0_0 -)
+
+class QHttp : QNetworkProtocol
+{
+%TypeHeaderCode
+#include <qhttp.h>
+%End
+
+public:
+ QHttp();
+%If (Qt_3_1_0 -)
+ QHttp(QObject * /TransferThis/,const char * = 0);
+ QHttp(const QString &,Q_UINT16 = 80,QObject * /TransferThis/ = 0,
+ const char * = 0);
+ virtual ~QHttp();
+%End
+
+ int supportedOperations() const;
+
+%If (Qt_3_1_0 -)
+ enum State {
+ Unconnected,
+ HostLookup,
+ Connecting,
+ Sending,
+ Reading,
+ Connected,
+ Closing
+ };
+
+ enum Error {
+ NoError,
+ UnknownError,
+ HostNotFound,
+ ConnectionRefused,
+ UnexpectedClose,
+ InvalidResponseHeader,
+ WrongContentLength,
+ Aborted
+ };
+
+ int setHost(const QString &,Q_UINT16 = 80);
+
+ int get(const QString &,QIODevice * = 0) /ReleaseGIL/;
+ int post(const QString &,QIODevice *,QIODevice * = 0) /ReleaseGIL/;
+ int post(const QString &,const QByteArray &,
+ QIODevice * = 0) /ReleaseGIL/;
+ int head(const QString &) /ReleaseGIL/;
+ int request(const QHttpRequestHeader &,QIODevice * = 0,
+ QIODevice * = 0) /ReleaseGIL/;
+ int request(const QHttpRequestHeader &,const QByteArray &,
+ QIODevice * = 0) /ReleaseGIL/;
+
+ int closeConnection();
+
+ unsigned long bytesAvailable() const;
+
+ SIP_PYOBJECT readBlock(Q_ULONG) /ReleaseGIL/ [Q_LONG (char *,Q_ULONG)];
+%MethodCode
+ char *buf;
+
+ if ((buf = (char *)sipMalloc(a0)) == NULL)
+ sipIsErr = 1;
+ else
+ {
+ Q_LONG actlen;
+
+ Py_BEGIN_ALLOW_THREADS
+ actlen = sipCpp -> QHttp::readBlock(buf,a0);
+ Py_END_ALLOW_THREADS
+
+ if (actlen < 0)
+ {
+ Py_INCREF(Py_None);
+ sipRes = Py_None;
+ }
+ else if ((sipRes = PyString_FromStringAndSize(buf,actlen)) == NULL)
+ sipIsErr = 1;
+
+ sipFree((ANY *)buf);
+ }
+%End
+
+ QByteArray readAll() /ReleaseGIL/;
+
+ int currentId() const;
+ QIODevice *currentSourceDevice() const;
+ QIODevice *currentDestinationDevice() const;
+ QHttpRequestHeader currentRequest() const;
+ bool hasPendingRequests() const;
+ void clearPendingRequests();
+
+ State state() const;
+
+ Error error() const;
+ QString errorString() const;
+%End
+
+public slots:
+%If (Qt_3_1_0 -)
+ void abort();
+%End
+
+signals:
+%If (Qt_3_1_0 -)
+ void stateChanged(int);
+ void responseHeaderReceived(const QHttpResponseHeader &);
+ void readyRead(const QHttpResponseHeader &);
+ void dataSendProgress(int,int);
+ void dataReadProgress(int,int);
+
+ void requestStarted(int);
+ void requestFinished(int,bool);
+ void done(bool);
+%End
+
+protected:
+ void operationGet(QNetworkOperation *);
+ void operationPut(QNetworkOperation *);
+
+%If (Qt_3_1_0 -)
+ void timerEvent(QTimerEvent *);
+%End
+};
+
+%End
+%End