summaryrefslogtreecommitdiff
path: root/src/unite/fqterm_mini_server.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/unite/fqterm_mini_server.cpp')
-rw-r--r--src/unite/fqterm_mini_server.cpp71
1 files changed, 71 insertions, 0 deletions
diff --git a/src/unite/fqterm_mini_server.cpp b/src/unite/fqterm_mini_server.cpp
new file mode 100644
index 0000000..2b18faf
--- /dev/null
+++ b/src/unite/fqterm_mini_server.cpp
@@ -0,0 +1,71 @@
+/***************************************************************************
+* fqterm, a terminal emulator for both BBS and *nix. *
+* Copyright (C) 2008 fqterm development group. *
+* *
+* This program 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 of the License, or *
+* (at your option) any later version. *
+* *
+* This program is distributed 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 this program; if not, write to the *
+* Free Software Foundation, Inc., *
+* 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. *
+***************************************************************************/
+
+#include "fqterm_mini_server.h"
+#include "fqterm_trace.h"
+#include "fqterm_path.h"
+#include "fqterm.h"
+#include <QByteArray>
+#include <QTimer>
+#include <QFile>
+#include <QtGui/QApplication>
+#include <queue>
+namespace FQTerm {
+
+
+void FQTermMiniServerThread::run()
+{
+ setTerminationEnabled();
+ FQTermMiniServer miniServer;
+ //miniServer.setMaxPendingConnections(1);
+ miniServer.listen(QHostAddress::LocalHost, 35172);
+ exec();
+ miniServer.close();
+ miniServer.finalizeMiniServer();
+}
+
+FQTermMiniServer::FQTermMiniServer(QObject * parent)
+ : QTcpServer(parent) {
+}
+
+
+FQTermMiniServer::~FQTermMiniServer() {
+}
+
+void FQTermMiniServer::incomingConnection( int socketDescriptor ) {
+ FQTermUniteSession* session = new FQTermUniteSession(socketDescriptor);
+ FQ_VERIFY(connect(this, SIGNAL(quit()), session, SLOT(quit()), Qt::QueuedConnection));
+ session->start();
+}
+
+void FQTermMiniServer::finalizeMiniServer() {
+ emit quit();
+}
+
+
+
+
+
+
+
+
+} //namespace FQTerm
+
+#include "fqterm_mini_server.moc"