summaryrefslogtreecommitdiffstats
path: root/doc/html/qnetworkoperation.html
blob: b61f5ca34e9a5b019f91cd556a8873ab1a44a660 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- /home/espenr/tmp/qt-3.3.8-espenr-2499/qt-x11-free-3.3.8/src/kernel/qnetworkprotocol.cpp:974 -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>QNetworkOperation Class</title>
<style type="text/css"><!--
fn { margin-left: 1cm; text-indent: -1cm; }
a:link { color: #004faf; text-decoration: none }
a:visited { color: #672967; text-decoration: none }
body { background: #ffffff; color: black; }
--></style>
</head>
<body>

<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr bgcolor="#E5E5E5">
<td valign=center>
 <a href="index.html">
<font color="#004faf">Home</font></a>
 | <a href="classes.html">
<font color="#004faf">All&nbsp;Classes</font></a>
 | <a href="mainclasses.html">
<font color="#004faf">Main&nbsp;Classes</font></a>
 | <a href="annotated.html">
<font color="#004faf">Annotated</font></a>
 | <a href="groups.html">
<font color="#004faf">Grouped&nbsp;Classes</font></a>
 | <a href="functions.html">
<font color="#004faf">Functions</font></a>
</td>
<td align="right" valign="center"><img src="logo32.png" align="right" width="64" height="32" border="0"></td></tr></table><h1 align=center>QNetworkOperation Class Reference<br><small>[<a href="network.html">network module</a>]</small></h1>

<p>The QNetworkOperation class provides common operations for network protocols.
<a href="#details">More...</a>
<p><tt>#include &lt;<a href="qnetworkprotocol-h.html">qnetworkprotocol.h</a>&gt;</tt>
<p>Inherits <a href="qobject.html">QObject</a>.
<p><a href="qnetworkoperation-members.html">List of all member functions.</a>
<h2>Public Members</h2>
<ul>
<li class=fn><a href="#QNetworkOperation"><b>QNetworkOperation</b></a> ( QNetworkProtocol::Operation&nbsp;operation, const&nbsp;QString&nbsp;&amp;&nbsp;arg0, const&nbsp;QString&nbsp;&amp;&nbsp;arg1, const&nbsp;QString&nbsp;&amp;&nbsp;arg2 )</li>
<li class=fn><a href="#QNetworkOperation-2"><b>QNetworkOperation</b></a> ( QNetworkProtocol::Operation&nbsp;operation, const&nbsp;QByteArray&nbsp;&amp;&nbsp;arg0, const&nbsp;QByteArray&nbsp;&amp;&nbsp;arg1, const&nbsp;QByteArray&nbsp;&amp;&nbsp;arg2 )</li>
<li class=fn><a href="#~QNetworkOperation"><b>~QNetworkOperation</b></a> ()</li>
<li class=fn>void <a href="#setState"><b>setState</b></a> ( QNetworkProtocol::State&nbsp;state )</li>
<li class=fn>void <a href="#setProtocolDetail"><b>setProtocolDetail</b></a> ( const&nbsp;QString&nbsp;&amp;&nbsp;detail )</li>
<li class=fn>void <a href="#setErrorCode"><b>setErrorCode</b></a> ( int&nbsp;ec )</li>
<li class=fn>void <a href="#setArg"><b>setArg</b></a> ( int&nbsp;num, const&nbsp;QString&nbsp;&amp;&nbsp;arg )</li>
<li class=fn>void <a href="#setRawArg"><b>setRawArg</b></a> ( int&nbsp;num, const&nbsp;QByteArray&nbsp;&amp;&nbsp;arg )</li>
<li class=fn>QNetworkProtocol::Operation <a href="#operation"><b>operation</b></a> () const</li>
<li class=fn>QNetworkProtocol::State <a href="#state"><b>state</b></a> () const</li>
<li class=fn>QString <a href="#arg"><b>arg</b></a> ( int&nbsp;num ) const</li>
<li class=fn>QByteArray <a href="#rawArg"><b>rawArg</b></a> ( int&nbsp;num ) const</li>
<li class=fn>QString <a href="#protocolDetail"><b>protocolDetail</b></a> () const</li>
<li class=fn>int <a href="#errorCode"><b>errorCode</b></a> () const</li>
<li class=fn>void <a href="#free"><b>free</b></a> ()</li>
</ul>
<hr><a name="details"></a><h2>Detailed Description</h2>


<p> The QNetworkOperation class provides common operations for network protocols.

<p> 

<p> An object is created to describe the operation and the current
state for each operation that a network protocol should process.
<p> For a detailed description of the Qt Network Architecture and how
to implement and use network protocols in Qt, see the <a href="network.html">Qt Network Documentation</a>.
<p> <p>See also <a href="qnetworkprotocol.html">QNetworkProtocol</a> and <a href="io.html">Input/Output and Networking</a>.

<hr><h2>Member Function Documentation</h2>
<h3 class=fn><a name="QNetworkOperation"></a>QNetworkOperation::QNetworkOperation ( <a href="qnetworkprotocol.html#Operation-enum">QNetworkProtocol::Operation</a>&nbsp;operation, const&nbsp;<a href="qstring.html">QString</a>&nbsp;&amp;&nbsp;arg0, const&nbsp;<a href="qstring.html">QString</a>&nbsp;&amp;&nbsp;arg1, const&nbsp;<a href="qstring.html">QString</a>&nbsp;&amp;&nbsp;arg2 )
</h3>
Constructs a network operation object. <em>operation</em> is the type of
the operation, and <em>arg0</em>, <em>arg1</em> and <em>arg2</em> are the first
three arguments of the operation. The state is initialized to
QNetworkProtocol::StWaiting.
<p> <p>See also <a href="qnetworkprotocol.html#Operation-enum">QNetworkProtocol::Operation</a> and <a href="qnetworkprotocol.html#State-enum">QNetworkProtocol::State</a>.

<h3 class=fn><a name="QNetworkOperation-2"></a>QNetworkOperation::QNetworkOperation ( <a href="qnetworkprotocol.html#Operation-enum">QNetworkProtocol::Operation</a>&nbsp;operation, const&nbsp;<a href="qbytearray.html">QByteArray</a>&nbsp;&amp;&nbsp;arg0, const&nbsp;<a href="qbytearray.html">QByteArray</a>&nbsp;&amp;&nbsp;arg1, const&nbsp;<a href="qbytearray.html">QByteArray</a>&nbsp;&amp;&nbsp;arg2 )
</h3>
Constructs a network operation object. <em>operation</em> is the type of
the operation, and <em>arg0</em>, <em>arg1</em> and <em>arg2</em> are the first
three raw data arguments of the operation. The state is
initialized to QNetworkProtocol::StWaiting.
<p> <p>See also <a href="qnetworkprotocol.html#Operation-enum">QNetworkProtocol::Operation</a> and <a href="qnetworkprotocol.html#State-enum">QNetworkProtocol::State</a>.

<h3 class=fn><a name="~QNetworkOperation"></a>QNetworkOperation::~QNetworkOperation ()
</h3>
Destructor.

<h3 class=fn><a href="qstring.html">QString</a> <a name="arg"></a>QNetworkOperation::arg ( int&nbsp;num ) const
</h3>
Returns the operation's <em>num</em>-th argument. If this argument was
not already set, an empty string is returned.

<p>Example: <a href="networkprotocol-example.html#x672">network/networkprotocol/nntp.cpp</a>.
<h3 class=fn>int <a name="errorCode"></a>QNetworkOperation::errorCode () const
</h3>
Returns the error code for the last error that occurred.

<h3 class=fn>void <a name="free"></a>QNetworkOperation::free ()
</h3>
Sets this object to delete itself when it hasn't been used for one
second.
<p> Because QNetworkOperation pointers are passed around a lot the
<a href="qnetworkprotocol.html">QNetworkProtocol</a> generally does not have enough knowledge to
delete these at the correct time. If a QNetworkProtocol doesn't
need an operation any more it will call this function instead.
<p> Note: you should never need to call the method yourself.

<h3 class=fn><a href="qnetworkprotocol.html#Operation-enum">QNetworkProtocol::Operation</a> <a name="operation"></a>QNetworkOperation::operation () const
</h3>
Returns the type of the operation.

<h3 class=fn><a href="qstring.html">QString</a> <a name="protocolDetail"></a>QNetworkOperation::protocolDetail () const
</h3>
Returns a detailed error message for the last error. This must
have been set using <a href="#setProtocolDetail">setProtocolDetail</a>().

<h3 class=fn><a href="qbytearray.html">QByteArray</a> <a name="rawArg"></a>QNetworkOperation::rawArg ( int&nbsp;num ) const
</h3>
Returns the operation's <em>num</em>-th raw data argument. If this
argument was not already set, an empty bytearray is returned.

<h3 class=fn>void <a name="setArg"></a>QNetworkOperation::setArg ( int&nbsp;num, const&nbsp;<a href="qstring.html">QString</a>&nbsp;&amp;&nbsp;arg )
</h3>
Sets the network operation's <em>num</em>-th argument to <em>arg</em>.

<h3 class=fn>void <a name="setErrorCode"></a>QNetworkOperation::setErrorCode ( int&nbsp;ec )
</h3>
Sets the error code to <em>ec</em>.
<p> If the operation failed, the protocol should set an error code to
describe the error in more detail. If possible, one of the error
codes defined in <a href="qnetworkprotocol.html">QNetworkProtocol</a> should be used.
<p> <p>See also <a href="#setProtocolDetail">setProtocolDetail</a>() and <a href="qnetworkprotocol.html#Error-enum">QNetworkProtocol::Error</a>.

<h3 class=fn>void <a name="setProtocolDetail"></a>QNetworkOperation::setProtocolDetail ( const&nbsp;<a href="qstring.html">QString</a>&nbsp;&amp;&nbsp;detail )
</h3>
If the operation failed, the error message can be specified as <em>detail</em>.

<h3 class=fn>void <a name="setRawArg"></a>QNetworkOperation::setRawArg ( int&nbsp;num, const&nbsp;<a href="qbytearray.html">QByteArray</a>&nbsp;&amp;&nbsp;arg )
</h3>
Sets the network operation's <em>num</em>-th raw data argument to <em>arg</em>.

<h3 class=fn>void <a name="setState"></a>QNetworkOperation::setState ( <a href="qnetworkprotocol.html#State-enum">QNetworkProtocol::State</a>&nbsp;state )
</h3>
Sets the <em>state</em> of the operation object. This should be done by
the network protocol during processing; at the end it should be
set to QNetworkProtocol::StDone or QNetworkProtocol::StFailed,
depending on success or failure.
<p> <p>See also <a href="qnetworkprotocol.html#State-enum">QNetworkProtocol::State</a>.

<h3 class=fn><a href="qnetworkprotocol.html#State-enum">QNetworkProtocol::State</a> <a name="state"></a>QNetworkOperation::state () const
</h3>
Returns the state of the operation. You can determine whether an
operation is still waiting to be processed, is being processed,
has been processed successfully, or failed.

<!-- eof -->
<hr><p>
This file is part of the <a href="index.html">Qt toolkit</a>.
Copyright &copy; 1995-2007
<a href="http://www.trolltech.com/">Trolltech</a>. All Rights Reserved.<p><address><hr><div align=center>
<table width=100% cellspacing=0 border=0><tr>
<td>Copyright &copy; 2007
<a href="troll.html">Trolltech</a><td align=center><a href="trademarks.html">Trademarks</a>
<td align=right><div align=right>Qt 3.3.8</div>
</table></div></address></body>
</html>