diff -r 000000000000 -r f5a58ecadc66 servicediscoveryandcontrol/pnp/test/upnp/Server/ServicePoint/inc/upnpservicecpr.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/servicediscoveryandcontrol/pnp/test/upnp/Server/ServicePoint/inc/upnpservicecpr.h Tue Feb 02 01:12:20 2010 +0200 @@ -0,0 +1,82 @@ +// Copyright (c) 2008-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: +// @file +// @internalComponent +// +// + +#ifndef __UPNPSERVICECPR_H +#define __UPNPSERVICECPR_H + +#include +#include +#include +#include + +#include "upnpcpr.h" + +#include "upnpsppublishinfocontainer.h" + + +using namespace ESock; + +//Forward Declarations + +class CUPnPServiceConnectionProvider : public CUPnPConnectionProvider + { +public: + static CUPnPServiceConnectionProvider* NewL ( CConnectionProviderFactoryBase& aFactory ); + virtual ~CUPnPServiceConnectionProvider ( ); + + static TInt RootDeviceRepublishTimerCallbackL ( TAny* aPtr ); + inline TInt IsRootDeviceRegistered ( ); + inline void SetRootDeviceRegistered ( TBool aValue ); + void ProcessRootDeviceRegisteredL ( ); + CUPnPRootDeviceInfoContainer& GetRootDeviceInfoContainer ( ); + CStringPoolManager& StringPoolManager ( ); + inline const CUPnPDevice& RootDevice (); + +private: + CUPnPServiceConnectionProvider ( CConnectionProviderFactoryBase& aFactory, const MeshMachine::TNodeActivityMap& aActivityMap ); + void ConstructL ( ); + virtual void ReceivedL ( const Messages::TRuntimeCtxId& aSender, const Messages::TNodeId& aRecipient, Messages::TSignatureBase& aMessage ); +#ifdef SYMBIAN_NETWORKING_UPS + TInt GetProcessAndThreadId ( TProcessId& aProcessId, TThreadId& aThreadId ) const; +#endif + +private: + CUPnPRootDeviceInfoContainer* iRootDeviceInfoContainer; + CPeriodic* iRepublishTimer; + TBool iRootDeviceRegistered; + }; + +TBool CUPnPServiceConnectionProvider::IsRootDeviceRegistered ( ) + { + return iRootDeviceRegistered; + } + +void CUPnPServiceConnectionProvider::SetRootDeviceRegistered ( TBool aValue ) + { + iRootDeviceRegistered = aValue; + } + +const CUPnPDevice& CUPnPServiceConnectionProvider::RootDevice () + { + CUPnPDeviceDescription& deviceDesc = iRootDeviceInfoContainer->GetRootDeviceDesciption (); + return *deviceDesc.DeviceObject (); + } + + + +#endif // UPNPSERVICECPR_H