diff -r 000000000000 -r f5a58ecadc66 upnp/upnpstack/serviceframework/inc/upnpnonmoderatedeventqueuemanager.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/upnp/upnpstack/serviceframework/inc/upnpnonmoderatedeventqueuemanager.h Tue Feb 02 01:12:20 2010 +0200 @@ -0,0 +1,109 @@ +/** @file +* Copyright (c) 2008-2008 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: Implements algoritms for modereted events +* +*/ + + +#ifndef C_CUPNPNONMODERATEDEVENTQUEUEMANAGER_H +#define C_CUPNPNONMODERATEDEVENTQUEUEMANAGER_H + +// INCLUDES +#include +#include + +#include "upnphttptransaction.h" +#include "upnpserviceimplementation.h" +#include "upnpeventcontroller.h" +#include "upnpeventqueuemanagerbase.h" +#include "upnpsubscriberlibrary.h" + + +// CLASS DECLARATION + +/** +* Implements algoritms for serving nonmoderated events +* +*/ +NONSHARABLE_CLASS( CUpnpNonModeratedEventQueueManager ): public CUpnpEventQueueManagerBase + { +public: + // Constructors and destructor + + /** + * Destructor. + */ + ~CUpnpNonModeratedEventQueueManager(); + + /** + * Two-phased constructor. + */ + static CUpnpNonModeratedEventQueueManager* NewL( CUpnpServiceImplementation& aServiceImpl, + CUpnpEventController& aEventController, + CUpnpSubscriberLibrary* aSubscriberLibrary ); + + /** + * Two-phased constructor. + */ + static CUpnpNonModeratedEventQueueManager* NewLC( CUpnpServiceImplementation& aServiceImpl, + CUpnpEventController& aEventController, + CUpnpSubscriberLibrary* aSubscriberLibrary ); + +private: + + /** + * algoritm implemetation + */ + void SendEvent(); + + /** + * algoritm implemetation + * @param aEvent buffer for message body + * @param aVariableList list of evented variables + * @return number of evented variables + */ + TInt FillEventBodyL( TDes8& aEvent, const RPointerArray& aVariableList ); + + /** + * Creates event message + * @param aMessage will be encapsulete into http transaction + * @return Http transcaction with event message + */ + CUpnpHttpTransaction* CreateTransactionL( CUpnpHttpMessage* aMessage ); + + /** + * + */ + void SendEventL(); + +private: + + /** + * Constructor for performing 1st stage construction + */ + CUpnpNonModeratedEventQueueManager( CUpnpServiceImplementation& iServiceImpl, + CUpnpEventController& iEventController, + CUpnpSubscriberLibrary* aSubscriberLibrary ); + + /** + * Constructor for performing 2st stage construction + */ + void ConstructL(); + +private: + + }; + +#endif // C_CUPNPNONMODERATEDEVENTQUEUEMANAGER_H +//end of file \ No newline at end of file