diff -r 6369bfd1b60d -r 08b5eae9f9ff upnpharvester/common/cmsqlwrapper/inc/cmsqlmain.h --- a/upnpharvester/common/cmsqlwrapper/inc/cmsqlmain.h Mon Nov 01 13:44:24 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,302 +0,0 @@ -/* -* 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 "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: Main class in the SQL wrapper component -* -*/ - - - - - - -#ifndef C_CMSQLMAIN_H -#define C_CMSQLMAIN_H - -#include -#include "mcmsqlmain.h" - -// Forward declarations -class RFs; - -/** - * CCmSqlMain class ( Interface to sql wrapper ) - * Part of SQL wrapper. SQL wrapper is part of - * Content manager component. - * - * @lib cmsqlwrapper.lib - * - * @since S60 5.1 - */ -class CCmSqlMain : public CBase, - public MCmSqlMain - { - -public: - - /** - * Two-phased constructor. - * - * @since S60 5.1 - * @param aFs, ref to file server session - * @return pointer to CCmSqlMain class - */ - static CCmSqlMain* NewL( RFs& aFs ); - - /** - * Two-phased constructor. - * - * @since S60 5.1 - * @param aFs, ref to file server session - * @return pointer to CCmSqlMain class - */ - static CCmSqlMain* NewLC( RFs& aFs ); - - /** - * Destructor. - */ - virtual ~CCmSqlMain(); - - /** - * Canceling operation - * - * @since S60 5.1 - * @param None - * @return None - */ - void CancelAsyncOperation(); - - /** - * Setting media server id - * - * @since S60 5.1 - * @param aId, id to be used - * @return None - */ - void SetMsId( TUint aId ); - - /** - * Setting mmc quota - * - * @since S60 5.1 - * @param aQuota, quota to be used in unlimited fill lists - * @return None - */ - void SetQuota( TInt64 aQuota ); - - /** - * Setting dlna profile filters - * - * @since S60 5.1 - * @param aProfileIds, unsupported profile ids - * @return None - */ - void SetDlnaProfileFilters( const RArray& aProfileIds ); - - /** - * Asyncronous batch add - * - * @since S60 5.1 - * @param aItems, items to be added - * @param aStatus, request status to be completed - * @return None - */ - void AsyncBatchAdd( RPointerArray& aItems, - TRequestStatus& aStatus ); - - /** - * Asyncronous batch property value add - * - * @since S60 5.1 - * @param aItems, property items to be added - * @param aField, property identifier - * @param aStatus, request status to be completed - * @return None - */ - void AsyncBatchAddPropertyItems( - RPointerArray& aItems, TCmMetadataField aField, - TRequestStatus& aStatus ); - - /** - * Syncronous property value add - * - * @since S60 5.1 - * @param aItem, property item to be added - * @param aField, property identifier - * @return None - */ - void SyncAddPropertyItemL( CCmSqlPropertyItem& aItem, - TCmMetadataField aField ); - - /** - * Asyncronous batch delete - * - * @since S60 5.1 - * @param aItems, items to be deleted - * @param aStatus, request status to be completed - * @return None - */ - void AsyncBatchDelete( RPointerArray& aItems, - TRequestStatus& aStatus ); - - /** - * Asyncronous metadata delete - * - * @since S60 5.1 - * @param aMsIds, defines where metadata is harvested - * @param aStatus, request status to be completed - * @return None - */ - void AsyncMetadataDelete( RArray& aMsIds, - TRequestStatus& aStatus ); - - /** - * SELECT XXX oldest and delete those - * Delete defined amount of media items - * - * @since S60 5.1 - * @param aType, media type identifier - * @param aCount, amount to be deleted - * @return None - */ - void DeleteOldestMediaItemsL( TCmMediaType aType, - TInt64 aCount ); - - /** - * Deletes unused propertys - * - * @since S60 5.1 - * @param None - * @return None - */ - void DeleteUnusedPropertys( ); - - /** - * Asyncronous metadata query - * - * @since S60 5.1 - * @param aItems, result array reference - * @param aStatus, request status to be completed - * @return None - */ - void GetItemsL( RPointerArray& aItems, - TRequestStatus& aStatus ); - - /** - * Asyncronous fill list item query - * - * @since S60 5.1 - * @param aItems, result array reference - * @param aRule, fill list used as a query clause parameter - * @param aStatus, request status to be completed - * @return None - */ - void GetFillItemsL( RPointerArray& aItems, - CCmFillRule& aRule, TRequestStatus& aStatus ); - - /** - * Asyncronous metadata property values query - * - * @since S60 5.1 - * @param aItems, result array reference - * @param aStatus, request status to be completed - * @param aField, property identifier ( e.g. artist ) - * @param aMedia, media type identifier ( e.g. audio ) - * @return None - */ - void GetPropertyValuesL( - RPointerArray& aItems, TRequestStatus& aStatus, - TCmMetadataField aField, TCmMediaType aMedia = ECmAll ); - - /** - * Asyncronous metadata filtered property values query - * - * @since S60 5.1 - * @param aPropertys, result array reference - * @param aStatus, request status to be completed - * @return None - */ - void GetFilteredPropertyValuesL( - CCmSqlPropertyCollector& aPropertys, TRequestStatus& aStatus ); - - /** - * Returns amount of media items - * - * @since S60 5.1 - * @param aCount, media amount on return - * @param aType, media type - * @return None - */ - void GetMediaCountL( TInt64& aCount, TCmMediaType aType ); - - /** - * Returns ETrue if item exist in db - * - * @since S60 5.1 - * @param aItem, item - * @param aDevId, device id - * @return ETrue if exists - */ - TBool ExistsL( const CCmBaseListItem& aItem, const TInt aDevId ); - - /** - * Deletes the object - * - * @since S60 5.1 - * @param None - * @return None - */ - void Close(); - -private: - - /** - * Performs the first phase of two phase construction. - * - * @since S60 5.1 - * @param aFs, file server - * @return None - */ - CCmSqlMain( RFs& aFs ); - - /** - * Performs the second phase construction. - */ - void ConstructL(); - - -private: - - /** - * Clause format class - */ - CCmSqlDbClause* iClause; // Owned - - /** - * Database maintenance class - */ - CCmSqlDbMaintenance* iMaintenance; // Owned - - /** - * Database connection class - */ - CCmSqlConnection* iConnection; // Owned - - /** - * Reference to file server session - */ - RFs& iFs; - - }; - -#endif // C_CMSQLMAIN_H