diff -r ce1c7ad1f18b -r bcb43dc84c44 photosgallery/viewframework/commandhandlers/commoncommandhandlers/inc/glxuploadcenrepwatcher.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/photosgallery/viewframework/commandhandlers/commoncommandhandlers/inc/glxuploadcenrepwatcher.h Wed Mar 31 21:31:03 2010 +0300 @@ -0,0 +1,103 @@ +/* +* 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: Upload cenrep watcher +* +*/ + +#ifndef __GLXUPLOADCENREPWATCHER_H__ +#define __GLXUPLOADCENREPWATCHER_H__ + + +class CGlxCommandHandlerUpload; + +/** + * CGlxUploadCenRepWatcher + * CGlxCommandHandlerUpload containted class for observing changes in central + * repository values + */ +NONSHARABLE_CLASS( CGlxUploadCenRepWatcher ) : public CActive + { + public: // Constructors and destructor + + /** + * Symbian Constructor. + * @param aObserver obersver - only supplied when the owner is + * interested in changes in key value + * @param aRepositoryUid uid of Central Repository file + * @param aId id of the Central Repository key + * @return contructed object + */ + static CGlxUploadCenRepWatcher* NewL(MGlxUploadIconObserver& aUploadIconObserver, + const TUid& aRepositoryUid, + TUint32 aId ); + /** + * Destructor. + */ + ~CGlxUploadCenRepWatcher(); + + public: // API + + /** + * Get current value as 16 bit descriptor. + * @param return value of the key in the descriptor + */ + void KeyValueL(TDes& aKeyValue) const; + + private: // Implementation + + /** + * C++ constructor. + * @param aObserver obersver + * @param aRepositoryUid uid of CenRep file + * @param aId id of the key + * @return contructed object + */ + CGlxUploadCenRepWatcher(MGlxUploadIconObserver& aUploadIconObserver, + const TUid& aRepositoryUid, TUint32 aId ); + + /** + * 2nd phase constructor + */ + void ConstructL(); + + protected: // from CActive + + /** + * @ref CActive::RunL + */ + void RunL(); + + /** + * @ref CActive::DoCancel + */ + void DoCancel(); + + /** + * @ref CActive::RunError + */ + TInt RunError( TInt aError ); + + private: // Implementation + // Not Owned: the upload icon observer + MGlxUploadIconObserver& iUploadIconObserver; + // Own: the central repository API + CRepository* iRepository; + // the central repository identifier + TUid iRepositoryUid; + // the key id + TUint32 iId; + + }; + +#endif //__GLXUPLOADCENREPWATCHER_H__