diff options
Diffstat (limited to 'src/UiGuiIndentServer.cpp')
| -rw-r--r--[-rwxr-xr-x] | src/UiGuiIndentServer.cpp | 209 |
1 files changed, 114 insertions, 95 deletions
diff --git a/src/UiGuiIndentServer.cpp b/src/UiGuiIndentServer.cpp index ad0dd3e..91c5ec7 100755..100644 --- a/src/UiGuiIndentServer.cpp +++ b/src/UiGuiIndentServer.cpp @@ -43,114 +43,133 @@ matter for which application the plugin/client is developed. */ -UiGuiIndentServer::UiGuiIndentServer(void) : TQObject() { - _tcpServer = NULL; - _currentClientConnection = NULL; - _readyForHandleRequest = false; +UiGuiIndentServer::UiGuiIndentServer(void) : + TQObject() +{ + _tcpServer = NULL; + _currentClientConnection = NULL; + _readyForHandleRequest = false; } - -UiGuiIndentServer::~UiGuiIndentServer(void) { +UiGuiIndentServer::~UiGuiIndentServer(void) +{ } - -void UiGuiIndentServer::startServer() { - if ( _tcpServer == NULL ) { - _tcpServer = new TQTcpServer(this); - } - - if ( !_tcpServer->isListening() ) { - if ( !_tcpServer->listen(TQHostAddress::Any, tquint16(84484)) ) { - TQMessageBox::critical( NULL, tr("UiGUI Server"), tr("Unable to start the server: %1.").arg(_tcpServer->errorString()) ); - return; - } - } - - connect( _tcpServer, SIGNAL(newConnection()), this, SLOT(handleNewConnection()) ); - _readyForHandleRequest = true; - _blockSize = 0; +void UiGuiIndentServer::startServer() +{ + if (_tcpServer == NULL) + { + _tcpServer = new TQTcpServer(this); + } + + if (!_tcpServer->isListening()) + { + if (!_tcpServer->listen(TQHostAddress::Any, tquint16(84484))) + { + TQMessageBox::critical(NULL, tr("UiGUI Server"), + tr("Unable to start the server: %1.").arg(_tcpServer->errorString())); + return; + } + } + + connect(_tcpServer, SIGNAL(newConnection()), this, SLOT(handleNewConnection())); + _readyForHandleRequest = true; + _blockSize = 0; } - -void UiGuiIndentServer::stopServer() { - if ( _tcpServer != NULL ) { - _tcpServer->close(); - delete _tcpServer; - _tcpServer = NULL; - } - _currentClientConnection = NULL; - _readyForHandleRequest = false; +void UiGuiIndentServer::stopServer() +{ + if (_tcpServer != NULL) + { + _tcpServer->close(); + delete _tcpServer; + _tcpServer = NULL; + } + _currentClientConnection = NULL; + _readyForHandleRequest = false; } +void UiGuiIndentServer::handleNewConnection() +{ + TQTcpSocket *clientConnection = _tcpServer->nextPendingConnection(); + connect(clientConnection, SIGNAL(disconnected()), clientConnection, SLOT(deleteLater())); -void UiGuiIndentServer::handleNewConnection() { - TQTcpSocket *clientConnection = _tcpServer->nextPendingConnection(); - connect( clientConnection, SIGNAL(disconnected()), clientConnection, SLOT(deleteLater()) ); - - connect( clientConnection, SIGNAL(readyRead()), this, SLOT(handleReceivedData()) ); + connect(clientConnection, SIGNAL(readyRead()), this, SLOT(handleReceivedData())); } - -void UiGuiIndentServer::handleReceivedData() { - if ( !_readyForHandleRequest ) { - return; - } - - _currentClientConnection = qobject_cast<TQTcpSocket*>( sender() ); - TQString receivedData = ""; - - if ( _currentClientConnection != NULL ) { - TQDataStream in(_currentClientConnection); - in.setVersion(TQDataStream::TQt_4_0); - - if ( _blockSize == 0 ) { - if ( _currentClientConnection->bytesAvailable() < (int)sizeof(tquint32) ) - return; - - in >> _blockSize; - } - - if ( _currentClientConnection->bytesAvailable() < _blockSize ) - return; - - TQString receivedMessage; - in >> receivedMessage; - - _blockSize = 0; - - tqDebug() << "receivedMessage: " << receivedMessage; - - if ( receivedMessage == "ts" ) { - sendMessage("Toll"); - } - else { - sendMessage("irgendwas"); - } - } +void UiGuiIndentServer::handleReceivedData() +{ + if (!_readyForHandleRequest) + { + return; + } + + _currentClientConnection = qobject_cast<TQTcpSocket*>(sender()); + TQString receivedData = ""; + + if (_currentClientConnection != NULL) + { + TQDataStream in(_currentClientConnection); + in.setVersion(TQDataStream::TQt_4_0); + + if (_blockSize == 0) + { + if (_currentClientConnection->bytesAvailable() < (int)sizeof(tquint32)) + { + return; + } + + in >> _blockSize; + } + + if (_currentClientConnection->bytesAvailable() < _blockSize) + { + return; + } + + TQString receivedMessage; + in >> receivedMessage; + + _blockSize = 0; + + tqDebug() << "receivedMessage: " << receivedMessage; + + if (receivedMessage == "ts") + { + sendMessage("Toll"); + } + else + { + sendMessage("irgendwas"); + } + } } - -void UiGuiIndentServer::sendMessage( const TQString &message ) { - _readyForHandleRequest = false; - - _dataToSend = ""; - TQDataStream out(&_dataToSend, TQIODevice::WriteOnly); - out.setVersion(TQDataStream::TQt_4_0); - out << (tquint32)0; - out << message; - out.device()->seek(0); - out << (tquint32)(_dataToSend.size() - sizeof(tquint32)); - - connect(_currentClientConnection, SIGNAL(bytesWritten(qint64)), this, SLOT(checkIfReadyForHandleRequest())); - _currentClientConnection->write(_dataToSend); +void UiGuiIndentServer::sendMessage(const TQString &message) +{ + _readyForHandleRequest = false; + + _dataToSend = ""; + TQDataStream out(&_dataToSend, TQIODevice::WriteOnly); + out.setVersion(TQDataStream::TQt_4_0); + out << (tquint32)0; + out << message; + out.device()->seek(0); + out << (tquint32)(_dataToSend.size() - sizeof(tquint32)); + + connect(_currentClientConnection, SIGNAL(bytesWritten(qint64)), this, + SLOT(checkIfReadyForHandleRequest())); + _currentClientConnection->write(_dataToSend); } - -void UiGuiIndentServer::checkIfReadyForHandleRequest() { - if ( _currentClientConnection->bytesToWrite() == 0 ) { - TQString dataToSendStr = _dataToSend.right( _dataToSend.size() - sizeof(tquint32) ); - tqDebug() << "checkIfReadyForHandleRequest _dataToSend was: " << dataToSendStr; - disconnect(_currentClientConnection, SIGNAL(bytesWritten(qint64)), this, SLOT(checkIfReadyForHandleRequest())); - _readyForHandleRequest = true; - } +void UiGuiIndentServer::checkIfReadyForHandleRequest() +{ + if (_currentClientConnection->bytesToWrite() == 0) + { + TQString dataToSendStr = _dataToSend.right(_dataToSend.size() - sizeof(tquint32)); + tqDebug() << "checkIfReadyForHandleRequest _dataToSend was: " << dataToSendStr; + disconnect(_currentClientConnection, SIGNAL(bytesWritten(qint64)), this, + SLOT(checkIfReadyForHandleRequest())); + _readyForHandleRequest = true; + } } |
