diff -r 2e2a89493e2b -r 48dd0f169f0d imagehandlingutilities/thumbnailmanager/thumbnailserver/inc/thumbnailserversession.h --- a/imagehandlingutilities/thumbnailmanager/thumbnailserver/inc/thumbnailserversession.h Fri Sep 03 10:29:37 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,310 +0,0 @@ -/* -* Copyright (c) 2006-2007 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: Server side session for thumbnail engine - * -*/ - - -#ifndef THUMBNAILSERVERSESSION_H -#define THUMBNAILSERVERSESSION_H - -#include -#include - -#include "thumbnailmanagerconstants.h" - -// FORWARD DECLARATIONS -class CThumbnailServer; - -/** - * Server side session for thumbnail engine. - * - * @since S60 v5.0 - */ -NONSHARABLE_CLASS( CThumbnailServerSession ): public CSession2 - { -public: - - /** - * Constructor. - * - * @since S60 v5.0 - * @return New CThumbnailServerSession session. - */ - CThumbnailServerSession(); - - /** - * Destructor - * - * @since S60 v5.0 - */ - virtual ~CThumbnailServerSession(); - -public: - - /** - * Message dispatcher. - * - * @since S60 v5.0 - * @param aMessage Message to be passed. - * @return Error code. - */ - TInt DispatchMessageL( const RMessage2& aMessage ); - -public: - // Functions from base classes - - /** - * CreateL - * - * @since S60 v5.0 - */ - void CreateL(); - - /** - * From CSharableSession (pure virtual). - * Handles service request messages from clients. - * - * @since S60 v5.0 - * @param aMessage message from client. - */ - void ServiceL( const RMessage2& aMessage ); - -public: - // New functions - - /** - * Returns the server pointer. - * - * @since S60 v5.0 - * @return Server pointer. - */ - CThumbnailServer* Server(); - - /** - * Cancellation method. - * - * @since S60 v5.0 - */ - void Cancel(); - - /** - * Converts SQL error to E32 error. - * - * @since S60 v5.0 - * @param aReason Request message complete value which may be SQL error - * @return Request message complete value but not SQL error - */ - static TInt ConvertSqlErrToE32Err( TInt aReason ); - - void ResolveMimeTypeL( RFile64* aFile ); - - void ModifyThumbnailSize( TInt aSourceType ); - -private: - - /** - * RequestThumbByFileHandleAsyncL - * - * @since S60 v5.0 - * @param aMessage Message. - */ - void RequestThumbByFileHandleAsyncL( const RMessage2& aMessage ); - - /** - * RequestThumbByPathAsyncL - * - * @since S60 v5.0 - * @param aMessage Message. - */ - void RequestThumbByPathAsyncL( const RMessage2& aMessage ); - - /** - * RequestThumbByIdAsyncL - * - * @since S60 v5.0 - * @param aMessage Message. - */ - void RequestThumbByIdAsyncL( const RMessage2& aMessage ); - - /** - * RequestSetThumbnailByBufferL - * - * @since S60 v5.0 - * @param aMessage Message. - */ - void RequestSetThumbnailByBufferL( const RMessage2& aMessage ); - - /** - * RequestSetThumbnailByBitmapL - * - * @since S60 v5.0 - * @param aMessage Message. - */ - void RequestSetThumbnailByBitmapL( const RMessage2& aMessage ); - - /** - * Fetch thumbnail data from database. - * - * @since S60 v5.0 - */ - void FetchThumbnailL(); - - /** - * Create a task to generate a new thumbnail - * - * @since S60 v5.0 - * @param aFile File handle - */ - void CreateGenerateTaskFromFileHandleL( RFile64* aFile); - - /** - * Create a task to generate a new thumbnail - * - * @since S60 v5.0 - * @param aBuffer Source image buffer to be set - */ - void CreateGenerateTaskFromBufferL( TDesC8* aBuffer ); - - /** - * Process a fetched bitmap by creating scale tasks - * or by returning the bitmap as such. - * - * @since S60 v5.0 - */ - void ProcessBitmapL(); - - /** - * ReleaseBitmap() - * - * @since S60 v5.0 - * @param aMessage Message. - */ - void ReleaseBitmap( const RMessage2& aMessage ); - - /** - * Cancels pending request. - * - * @since S60 v5.0 - * @param aMessage Message. - * @return Error code. - */ - TInt CancelRequest( const RMessage2& aMessage ); - - /** - * Changes priority of pending request. - * - * @since S60 v5.0 - * @param aMessage Message. - * @return Error code. - */ - TInt ChangePriority( const RMessage2& aMessage ); - - /** - * Delete thumbnails. - * - * @since S60 v5.0 - * @param aMessage Message. - */ - void DeleteThumbnailsL( const RMessage2& aMessage ); - - /** - * Delete thumbnails by Id. - * - * @since S60 v5.0 - * @param aMessage Message. - */ - void DeleteThumbnailsByIdL( const RMessage2& aMessage ); - - /** - * Get the required size (in characters) for a buffer that contains the - * list of supported MIME types - * - * @since S60 v5.0 - * @param aMessage Message. - */ - void GetMimeTypeBufferSizeL( const RMessage2& aMessage ); - - /** - * Get the list of supported MIME types and store them in the buffer - * allocated by the client. - * - * @since S60 v5.0 - * @param aMessage Message. - */ - void GetMimeTypeListL( const RMessage2& aMessage ); - - /** - * Update thumbnails by Thumbnail ID. - * - * @since S60 v5.0 - * @param aMessage Message. - */ - void UpdateThumbnailsL( const RMessage2& aMessage ); - - /** - * Rename thumbnails. - * - * @since S60 v5.0 - * @param aMessage Message. - */ - void RenameThumbnailsL( const RMessage2& aMessage ); - - /** - * Checks if client thread is still alive and RMessage2 handle valid. - * - * @since S60 v5.0 - */ - TBool ClientThreadAlive(); - -private: - // data - /** - * Temporary store for any bitmaps fetched from the store. - * Own. - */ - CFbsBitmap* iBitmap; - - /** - * Temporary store for thumbnail request parameters as received - * from the client. - */ - TThumbnailRequestParamsPckgBuf iRequestParams; - - /** - * Message from client. This is kept in a member variable to make - * sure the message is completed if a leave occurs while handling - * the request. - */ - RMessage2 iMessage; - - /** - * Size of the original object. Only valid if a stored thumbnail - * was found when processing a request. - */ - TSize iOriginalSize; - - /** - * Temporary store for any jpegs fetched from the store. - * Own. - */ - TDesC8* iBuffer; - - TInt iBitmapHandle; - - // client thread from RMessage2 - RThread iClientThread; -}; - -#endif // THUMBNAILSERVERSESSION_H