diff -r 7259cf1302ad -r 169364e7e4b4 hti/PC_Tools/HTIGateway/HtiGateway/inc/HtiDispatcher.h --- a/hti/PC_Tools/HTIGateway/HtiGateway/inc/HtiDispatcher.h Tue Jul 06 16:05:13 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,84 +0,0 @@ -/* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: -* This file contains headers of HtiDispatcher class. -*/ - -#ifndef __HTI_DISPATCHER_H__ -#define __HTI_DISPATCHER_H__ - -#include -#include -#include - -#include "safequeue.h" -#include "thread.h" - -//forward declarations -struct soap; -class SoapHandler; -class HtiMessage; -class Data; - -typedef map htiSoapActionHashMap; -typedef map htiUIDHashMap; - -using namespace std; -//********************************************************************************** -// Class HtiDispatcher -// -// This class -// -forwards Soap requests and Hti messages to correct SOAPHandlers -// -Is used to initiate SOAPHandlers by reading them from dll's and start them -//********************************************************************************** -class HtiDispatcher : public Thread -{ -public: - HtiDispatcher(SafeQueue* qIn, SafeQueue* qOut); - ~HtiDispatcher(); - void Run(); - void Stop(); - bool IsRunning(); - - bool DispatchSoapServe(struct soap* soapEnv); - //pass m_IncomingHtiMessage to available handlers - void DispatchToSoapHandlers(); - - void SendHtiMessage(HtiMessage* msg); - -private: - /** - * read dll plugins and load handlers - */ - void InitHandlers(); - void StartHandlers(); - //void ProcessIncomingDataMessage(); - -private: - //incoming queue from PC side, outgoing to CommChannelPlugin side - SafeQueue* m_QueueIn; - //outgoing queue to PC side, incoming from CommChannelPlugin side - SafeQueue* m_QueueOut; - - //handlers hash map divided by soap action, it owns handlers - htiSoapActionHashMap m_SoapHandlers; - //the same as above but of service UID; doesn't own handlers!!! - htiUIDHashMap m_HanlersUidMap; - - HtiMessage* m_IncomingHtiMessage; - - bool m_Running; -}; - -#endif // __HTI_DISPATCHER_H__ \ No newline at end of file