qthighway/xqserviceipc/xqserviceipcserver/xqserviceipcserverprivate.h
branchRCL_3
changeset 9 5d007b20cfd0
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/qthighway/xqserviceipc/xqserviceipcserver/xqserviceipcserverprivate.h	Tue Aug 31 16:02:37 2010 +0300
@@ -0,0 +1,74 @@
+/*
+* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+*
+* This program is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation, version 2.1 of the License.
+* 
+* 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 Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, 
+* see "http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html/".
+*
+* Description:  Service Framework IPC Private implementation
+*
+*/
+
+#ifndef XQ_SERVICE_FRAMEWORK_IPC_PRIVATE_SERVER_H
+#define XQ_SERVICE_FRAMEWORK_IPC_PRIVATE_SERVER_H
+
+#include <QtCore>
+#include <QtCore\Private\qobject_p.h>
+#include "xqserviceipcserverprivate.h"
+#include "xqserviceipcserver.h"
+
+namespace QtService {
+
+    class ServiceFwIPCServer;
+    class ServiceIPCSession;
+    class MServiceIPCObserver;
+
+    /*!
+        \class ServiceFwIPCServerPrivate
+        \brief Private implementation interface for service framework server
+        
+        This class is the abstract interface for all server backends.
+    */
+    class ServiceFwIPCServerPrivate : public QObjectPrivate
+        {
+    protected:
+        Q_DECLARE_PUBLIC(ServiceFwIPCServer);
+
+    public:
+
+        /*!
+            Start listening for new service requests.
+            \param aServerName Name of the server.
+            \return true if listen was successful.
+        */
+        virtual bool listen( const QString& aServerName ) = 0;
+
+        /*!
+            Shutdown the server and stop serving clients.
+        */
+        virtual void disconnect() = 0;
+
+    protected:
+
+        /*!
+            Get the server observer.
+            \return MServiceIPCObserver* observer to this server.
+        */
+        inline MServiceIPCObserver* Observer() { Q_Q(ServiceFwIPCServer); return q->iObserver; };
+
+    protected:
+        QList<ServiceIPCSession*> iSessions;
+        };
+
+}
+#endif // XQ_SERVICE_FRAMEWORK_IPC_PRIVATE_SERVER_H