Home | All Classes | Main Classes | Annotated | Grouped Classes | Functions |

# QNetworkOperation Class Reference

The QNetworkOperation class provides common operations for network protocols. More...

`#include <qnetworkprotocol.h>`

Inherits QObject.

List of all member functions.

## Public Members

- QNetworkOperation ( QNetworkProtocol::Operation operation, const QString & arg0, const QString & arg1, const QString & arg2 )
- QNetworkOperation ( QNetworkProtocol::Operation operation, const QByteArray & arg0, const QByteArray & arg1, const QByteArray & arg2 )
- ~QNetworkOperation ()
- void setState ( QNetworkProtocol::State state )
- void setProtocolDetail ( const QString & detail )
- void setErrorCode ( int ec )
- void setArg ( int num, const QString & arg )
- void setRawArg ( int num, const QByteArray & arg )
- QNetworkProtocol::Operation operation () const
- QNetworkProtocol::State state () const
- QString arg ( int num ) const
- QByteArray rawArg ( int num ) const
- QString protocolDetail () const
- int errorCode () const
- void free ()

## Detailed Description

The QNetworkOperation class provides common operations for network protocols.

An object is created to describe the operation and the current state for each operation that a network protocol should process.

For a detailed description of the Qt Network Architecture how to implement and use network protocols in Qt, see the Qt Network Documentation.

See also QNetworkProtocol and Input/Output and Networking.

## Member Function Documentation

### QNetworkOperation::QNetworkOperation ( QNetworkProtocol::Operation operation, const QString & arg0, const QString & arg1, const QString & arg2 )

Constructs a network operation object. operation is the type of the operation, and arg0, arg1 and arg2 are the first three arguments of the operation. The state is initialized to QNetworkProtocol::StWaiting.

See also QNetworkProtocol::Operation and QNetworkProtocol::State.

### QNetworkOperation::QNetworkOperation ( QNetworkProtocol::Operation operation, const QByteArray & arg0, const QByteArray & arg1, const QByteArray & arg2 )

Constructs a network operation object. operation is the type of the operation, and arg0, arg1 and arg2 are the first three raw data arguments of the operation. The state is initialized to QNetworkProtocol::StWaiting.

See also QNetworkProtocol::Operation and QNetworkProtocol::State.

### QNetworkOperation::~QNetworkOperation ()

Destructor.

### QString QNetworkOperation::arg ( int num ) const

Returns the argument num of the operation. If this argument was not already set, an empty string is returned.

Examples: network/ftpclient/ftpmainwindow.cpp and network/networkprotocol/nntp.cpp.

### int QNetworkOperation::errorCode () const

Returns the error code for the last error that occurred.

Example: network/ftpclient/ftpmainwindow.cpp.

### void QNetworkOperation::free ()

Sets this object to delete itself when it hasn't been used for one second.

Because QNetworkOperation pointers are passed around a lot the QNetworkProtocol 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.

Note: you should never need to call the method yourself.

### QNetworkProtocol::Operation QNetworkOperation::operation () const

Returns the type of the operation.

Example: network/ftpclient/ftpmainwindow.cpp.

### QString QNetworkOperation::protocolDetail () const

Returns a detailed error message for the last error. This must have been set using setProtocolDetail().

Example: network/ftpclient/ftpmainwindow.cpp.

### QByteArray QNetworkOperation::rawArg ( int num ) const

Returns the raw data argument num of the operation. If this argument was not already set, an empty bytearray is returned.

### void QNetworkOperation::setArg ( int num, const QString & arg )

Sets the argument num of the network operation to arg.

### void QNetworkOperation::setErrorCode ( int ec )

Sets the error code to ec.

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 QNetworkProtocol should be used.

See also setProtocolDetail() and QNetworkProtocol::Error.

### void QNetworkOperation::setProtocolDetail ( const QString & detail )

If the operation failed, the error message can be specified as detail.

### void QNetworkOperation::setRawArg ( int num, const QByteArray & arg )

Sets the raw data argument num of the network operation to arg.

### void QNetworkOperation::setState ( QNetworkProtocol::State state )

Sets the state 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.

See also QNetworkProtocol::State.

### QNetworkProtocol::State QNetworkOperation::state () const

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.

Example: network/ftpclient/ftpmainwindow.cpp.

This file is part of the Qt toolkit, copyright © 1995-2001 Trolltech, all rights reserved.