diff -r 000000000000 -r dd21522fd290 browserutilities/feedsengine/FeedsServer/Server/inc/UpdateQueue.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/browserutilities/feedsengine/FeedsServer/Server/inc/UpdateQueue.h Mon Mar 30 12:54:55 2009 +0300 @@ -0,0 +1,133 @@ +/* +* Copyright (c) 2008 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: UpdateQueue controls the feeds to be updated. +* +*/ + + +#ifndef _UPDATEQUEUE_H_ +#define _UPDATEQUEUE_H_ + +// INCLUDES +#include +#include + +// CONSTANTS + +// MACROS + +// DATA TYPES + +// FUNCTION PROTOTYPES + +// FORWARD DECLARATIONS +class CFeedsServer; +class CUpdateQueue; +class CUpdateAllFeedsTask; + +// CLASS DECLARATION + +/** +* The feed Update Queue. +* +* \b Library: FeedsEngine.lib +* +* @since 7.1 +*/ +class CUpdateQueue : public CBase + { +public: + + /** + * + * @since 7.1 + * Two-phased constructor. + */ + static CUpdateQueue* NewL(CUpdateAllFeedsTask* aUpdateAllFeedTask, TInt aFreq); + + /** + * + * @since 7.1 + * Destructor + */ + ~CUpdateQueue(); + +public: + + /** + * This method adds the feed into RArray + * + * @since 7.1 + * @return Integer. + */ + TInt AddFeed(TInt aFeedId); + + /** + * This method delets the feed from RArray + * + * @since 7.1 + * @return Integer. + */ + TInt RemoveFeed(TInt aFeedId); + + /** + * This method decrements the timer counter + * + * @since 7.1 + * @return Integer. + */ + TInt UpdateL(TInt aMinutes); + + /** + * This method return the frequency + * + * @since 7.1 + * @return Integer. + */ + TInt GetFreq(); + + /** + * This method return the Count + * + * @since 7.1 + * @return Integer. + */ + TInt Count(); + +private: + + /** + * + * @since 7.1 + * C++ default constructor. + */ + CUpdateQueue(CUpdateAllFeedsTask* aUpdateAllFeedTask, TInt aFreq); + + /** + * + * @since 7.1 + * By default Symbian 2nd phase constructor is private. + */ + void ConstructL(); + +private: + RArray iFeedIds; + TInt iFreq; + TInt iCurrentState; + CUpdateAllFeedsTask* iUpdateAllFeedsTask; + TTime iLastAutoUpdate; + + friend class CFeedsSever; +}; +#endif //_UPDATEQUEUE_H_ \ No newline at end of file