diff -r 000000000000 -r dd21522fd290 webengine/device/inc/DeviceLiwPeer.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/webengine/device/inc/DeviceLiwPeer.h Mon Mar 30 12:54:55 2009 +0300 @@ -0,0 +1,123 @@ +/* +* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of the License "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: Liw Device Peer +* +*/ + +#ifndef __DEVICELIWPEER_H +#define __DEVICELIWPEER_H + +#include +#include +#include "DeviceBinding.h" + +namespace KJS + { + class JSValue; + class List; + class UString; + class ExecState; + class ServiceEventHandler; + class CDeviceLiwBinding; + + class DeviceLiwPeer : public MDevicePeer, public MLiwNotifyCallback + { + + public: // constructor and destructor + + /** + * Constructor + * @return none + * @since 5.0 + **/ + DeviceLiwPeer( ExecState* exec, + CDeviceLiwBinding* liwbinding, MLiwInterface* liwinterface ); + + /** + * Destructor + * @return none + * @since 5.0 + **/ + virtual ~DeviceLiwPeer(); + + public: + + /** + * Set the service name + * @return none + * @since 5.0 + **/ + void SetServiceNameL( ExecState* exec, const List& args ); + + /** + * Set the callback + * @return none + * @since 5.0 + **/ + virtual void InstallCallback( ServiceEventHandler* eventHandler ); + + /** + * toString + * @return UString + * @since 5.0 + **/ + UString toString( ExecState* exec ); + + /** + * Get the interface + * @return MLiwInterface* + * @since 5.0 + **/ + MLiwInterface* Interface() { return m_interface; } + + /** + * Get the service name + * @return const HBufC8* + * @since 5.0 + **/ + const HBufC8* ServiceName() const { return m_serviceName; } + + /** + * Is running callback function + * @return bool + * @since 5.0 + **/ + TBool IsRunningCallBack() const { return m_isRunningCallBack; } + + public: // From MLiwNotifyCallback + + /** + * Handle invoking callback function for asynchronous calls + * @return TInt error code + * @since 5.0 + **/ + TInt HandleNotifyL( + TInt cmdId, + TInt eventId, + CLiwGenericParamList& eventParamList, + const CLiwGenericParamList& inParamList ); + + private: + + ExecState* m_globalExecState; // Not owned + CDeviceLiwBinding* m_binding; // Not owned + MLiwInterface* m_interface; // Not owned, managed by LIW + HBufC8* m_serviceName; //owned + // a map to contain transaction ID, and event handler + RPointerArray* m_callbackArray; // owned + TBool m_isRunningCallBack; + }; + } + +#endif //__DEVICELIWPEER_H