. v5backport
authorKashif.sayed
Thu, 25 Mar 2010 23:48:15 +0530
branchv5backport
changeset 25 1161e0025932
parent 22 512eb1a5d851
child 26 bef183758dfa
.
dependencies/uncategorized/ABLD.BAT
dependencies/uncategorized/AiwCommon.hrh
dependencies/uncategorized/aiwdialdata.h
dependencies/uncategorized/bld.inf
dependencies/uncategorized/ccontentmap.h
dependencies/uncategorized/cpdebug.h
dependencies/uncategorized/cpglobals.h
dependencies/uncategorized/cpliwmap.h
dependencies/uncategorized/cpluginvalidator.h
dependencies/uncategorized/cpserverdef.h
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/uncategorized/ABLD.BAT	Thu Mar 25 23:48:15 2010 +0530
@@ -0,0 +1,15 @@
+@ECHO OFF
+
+REM Bldmake-generated batch file - ABLD.BAT
+REM ** DO NOT EDIT **
+
+perl -S ABLD.PL "\S60\devices\S60_5th_Edition_SDK_v1.0\homescreensrv\dependencies\uncategorized\\" %1 %2 %3 %4 %5 %6 %7 %8 %9
+if errorlevel==1 goto CheckPerl
+goto End
+
+:CheckPerl
+perl -v >NUL
+if errorlevel==1 echo Is Perl, version 5.003_07 or later, installed?
+goto End
+
+:End
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/uncategorized/AiwCommon.hrh	Thu Mar 25 23:48:15 2010 +0530
@@ -0,0 +1,419 @@
+/*
+* Copyright (c) 2003-2005 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:     Declares common constants to be used in both resources and
+*                C++ code of consumers and providers.
+*
+*/
+
+
+
+
+
+#ifndef AIW_COMMON_HRH
+#define AIW_COMMON_HRH
+
+// DATA TYPES
+
+// CONSTANTS
+
+/**
+* Predefined service commands (UIDs).
+*/
+enum TAiwServiceCommands
+    {
+    /** Null value. */
+    KAiwCmdNone = 0,
+
+    /** Create new content. */
+    KAiwCmdNew = 0x101F864C,
+        
+    /** Edit existing content. */
+    KAiwCmdEdit = 0x101F864D,
+        
+    /** Select content. */
+    KAiwCmdSelect = 0x101F864E,
+    
+    /** View content. */
+    KAiwCmdView = 0x101F864F,
+
+    /** Create call. */
+    KAiwCmdCall = 0x101F86B0,
+
+    /** Send content. */
+    KAiwCmdSend = 0x101F86B3,
+
+    /** Print content. */
+    KAiwCmdPrint = 0x101F8666,
+
+    /** Assign content. */
+    KAiwCmdAssign = 0x101F8716,
+
+    /** Share content. */
+    KAiwCmdShare = 0x101F871E,
+
+    /** Synchronize content. */
+    KAiwCmdSynchronize = 0x101F8724,
+
+    /** Synchronize selected. */
+    KAiwCmdSynchronizeSelected = 0x1020720C,
+
+    /** Search content. */
+    KAiwCmdSearch = 0x101F87DF,
+
+    /** Copy content. */
+    KAiwCmdCopy = 0x101F87DE,
+
+    /** Show print preview. */
+    KAiwCmdPrintPreview = 0x101FD656,
+    
+    /** Push to talk. */
+    KAiwCmdPoC = 0x101FD657,
+    
+    /** View content in online store. */
+    KAiwCmdViewOnline = 0x102072EA,
+    
+    /** Upload content. */
+    KAiwCmdUpload = 0x102072EB,
+    
+    /** Transfer a range of media files to a remote storage device. */
+    KAiwCmdXpressTransfer = 0x10207430,
+    
+    /** UPnP copy content. */
+    KAiwCmdUPnPCopy = 0x10207431,
+           
+    /** UPnP move content. */          
+    KAiwCmdUPnPMove = 0x10207432,
+
+    /** UPnP play content. */
+    KAiwCmdUPnPPlay = 0x10207433,
+
+    /** UPnP open content. */
+    KAiwCmdUPnPOpen = 0x10207434,
+    
+    /** UPnP enable external. */
+    KAiwCmdUPnPEnableExternal = 0x10207435,
+    
+    /** Show help content. */
+    KAiwCmdHelp = 0x10275075,
+    
+    /** Add or remove items from intent. (Should be used as a menu service command). */
+    KAiwCmdIntent = 0x10275114,
+    
+    /** Add items to intent. (Should be used as a base service command). */
+    KAiwCmdAddToIntent = 0x10275115,
+    
+    /** Remove items from intent. (Should be used as a base service command). */
+    KAiwCmdRemoveFromIntent = 0x10275116,
+    
+    /** Client can request that map should be displayed on screen. */ 
+    KAiwCmdMnShowMap = 0x10206904,
+    
+    /** Allows to start navigation to desired destination. */
+    KAiwCmdMnNavigateTo = 0x10206905,
+    
+    /** Starts reverse geocoding request: finding address for given coordinate. */
+    KAiwCmdMnAddrByCoord = 0x10206906,
+    
+    /** Starts geocoding request: finding coordinate by given address. */
+    KAiwCmdMnCoordByAddr = 0x10206907,    
+    
+    /** Allows client to request that user shall select a location from map. */
+    KAiwCmdMnSelectFromMap = 0x10206908,
+    
+    /** Send via Bluetooth. */
+    KAiwCmdSendViaBT = 0x10281894,   
+	
+    /** Send via Irda. */
+    KAiwCmdSendViaIR = 0x10281895,
+    
+    /** Enterprise telephony. */
+    KAiwCmdEnterpriseTel = 0x20001FC6,  
+
+    /** Rotate image etc. */
+    KAiwCmdRotate = 0x10281F96,
+    
+    /** Rotate device screen. */
+    KAiwCmdRotateScreen = 0x10281F97,
+    
+    /** Set call image. */
+    KAiwCmdCallImage = 0x1028245E,
+    
+    /** Give different objects to another device using Near Field Communications. */
+    KAiwCmdNFCGive = 0x1028245F,
+    
+    /** Start listening secondary bearer (e.g. Bluetooth) setup events via Near Field Communication. */
+    KAiwCmdNFCEasySetup = 0x2001FE32,
+    
+    /** SettingWizard Email view activation. */
+    KAiwCmdSettingWizardEmailView = 0x10281C95,
+    
+    /** In-device search. */
+    KAiwCmdContentSearch = 0x10282844,
+    
+	/** A special service command enabling consumer to attach for all relevant 
+	AIW services for a certain object. */
+	KAiwCmdAnyCmdForObject = 0x102823F1,
+	
+	/** To support VoIP settings provisioning with plugins **/
+	KAiwCmdEasyVoIPProvisioning = 0x10283099,
+	
+	/** Assign Screensaver*/
+    KAiwCmdAssignScreenSaver = 0x1028309A,      
+	
+	/*Location Trail*/ 
+	KAiwCmdLocationTrail=0x10282845
+/*<branchInfo originator="gronoff" since="08-04-18" category="new_feature" error=”none”>
+<pf_5250_OFF_CYCLE_SW_INT>
+</branchInfo>*/
+// BRANCH 08-04-18 : gronoff
+        ,
+	/** Converged service plugin and UI extension plugin*/
+	KAiwCmdCSCServicePlugins = 0x1020E56F,
+	KAiwCmdCSCUiExtensionPlugins = 0x10282EF7,
+	KAiwCmdSaveToCalendar = 0x2002A507
+// BRANCH_END 08-04-18 : gronoff
+    };
+
+
+// Service command strings. These strings are used in service provider's
+// opaque data field to specify what service command(s) the provider implements.
+
+#define KAiwCmdNoneStr                    "00000000"
+#define KAiwCmdNewStr                     "101F864C"
+#define KAiwCmdEditStr                    "101F864D"
+#define KAiwCmdSelectStr                  "101F864E"
+#define KAiwCmdViewStr                    "101F864F"
+#define KAiwCmdPrintStr                   "101F8666"
+#define KAiwCmdCallStr                    "101F86B0"
+#define KAiwCmdSendStr                    "101F86B3"
+#define KAiwCmdAssignStr                  "101F8716"
+#define KAiwCmdShareStr                   "101F871E"
+#define KAiwCmdSynchronizeStr             "101F8724"
+#define KAiwCmdSearchStr                  "101F87DF"
+#define KAiwCmdCopy                       "101F87DE"
+#define KAiwCmdPrintPreviewStr            "101FD656"
+#define KAiwCmdPoCStr                     "101FD657" 
+#define KAiwCmdSynchronizeSelectedStr     "1020720C"
+#define KAiwCmdViewOnlineStr              "102072EA" 
+#define KAiwCmdUploadStr                  "102072EB"
+#define KAiwCmdXpressTransferStr          "10207430"
+#define KAiwCmdUPnPCopyStr                "10207431"
+#define KAiwCmdUPnPMoveStr                "10207432"
+#define KAiwCmdUPnPPlayStr                "10207433"
+#define KAiwCmdUPnPOpenStr                "10207434"
+#define KAiwCmdUPnPEnableExternalStr      "10207435"
+#define KAiwCmdHelpStr                    "10275075"
+#define KAiwCmdIntentStr                  "10275114"
+#define KAiwCmdAddToIntentStr             "10275115"
+#define KAiwCmdRemoveFromIntentStr        "10275116"
+#define KAiwCmdMnShowMapStr               "10206904"
+#define KAiwCmdMnNavigateToStr            "10206905"
+#define KAiwCmdMnAddrByCoordStr           "10206906"
+#define KAiwCmdMnCoordByAddrStr           "10206907"
+#define KAiwCmdMnSelectFromMapStr         "10206908"
+#define KAiwCmdSendViaBTStr               "10281894"
+#define KAiwCmdSendViaIRStr               "10281895"
+#define KAiwCmdEnterpriseTelStr           "20001FC6"
+#define KAiwCmdRotateStr                  "10281F96"
+#define KAiwCmdRotateScreenStr            "10281F97"
+#define KAiwCmdCallImageStr               "1028245E"
+#define KAiwCmdNFCGiveStr                 "1028245F"
+#define KAiwCmdNFCEasySetupStr            "2001FE32"
+#define KAiwCmdSettingWizardEmailViewStr  "10281C95"
+#define KAiwCmdContentSearchStr           "10282844"
+#define KAiwCmdAnyCmdForObjectStr         "102823F1"
+#define KAiwCmdEasyVoIPProvisioningStr    "10283099"
+#define KAiwCmdAssignScreenSaverStr       "1028309A"
+#define KAiwCmdLocationTrail              "10282845"
+/*<branchInfo originator="gronoff" since="08-04-18" category="new_feature" error=”none”>
+<pf_5250_OFF_CYCLE_SW_INT>
+</branchInfo>*/
+// BRANCH 08-04-18 : gronoff
+#define	KAiwCmdCSCServicePluginsStr  	  "1020E56F"
+#define	KAiwCmdCSCUiExtensionPluginsStr   "10282EF7"
+#define KAiwCmdSaveToCalendarStr          "2002A507"
+// BRANCH_END 08-04-18 : gronoff
+
+/**
+* Service command options (bits) to alter command handling behaviour.
+*/
+enum TAiwServiceCmdOptions
+    {
+    /**
+    * Consumer wants asynchronous command handling.
+    * The default is synchronous command handling.
+    * In asynchronous case consumer needs to pass a callback to provider.
+    */
+    KAiwOptASyncronous = 0x0001,
+
+    /**
+    * Consumer wants provider to make a callback to check coming output
+    * parameters prior returning from service command handling.
+    * Consumer needs to pass a callback to provider.
+    */
+    KAiwOptOutParamCheck = 0x0002,
+
+    /**
+    * Consumer tells provider that it is prepared to handle
+    * callback events for possibly incomplete/wrong parameter list. 
+    */
+    KAiwOptInParamCheck = 0x0004,
+    
+    /**
+    * Consumer wants to cancel an asynchronous AIW service. 
+    * When a consumer wants to cancel the asynchronous service that a provider
+    * is executing, it should call ExecuteMenuCmdL() or ExecuteServiceCmdL() 
+    * with the same parameters as when requesting the service, but set this 
+    * cancel bit on. The cancel operation itself is synchronous, i.e. the 
+    * provider must call the consumer's callback with KAiwEventCanceled before 
+    * the Execute*CmdL() returns.
+    */
+    KAiwOptCancel = 0x0008
+    };
+
+
+/**
+* Service classes (UID). Technically these are same as service interface UIDs.
+*/
+enum TAiwServiceClass
+    {
+    /** 
+    * None. 
+    */
+    KAiwClassNone = 0x0,
+
+    /**
+    * Base service (no UI expected). 
+    * Every other class must implement this always!
+    */
+    KAiwClassBase = 0x101F8650,
+
+    /** 
+    * Filter service class. 
+    */
+    KAiwClassFilter = 0x101F8651,
+
+    /** 
+    * Menu service class (offers menu based services).
+    */
+    KAiwClassMenu = 0x101F8652,
+
+    /** 
+    * Stub service class.
+    */
+    KAiwClassStub = 0x101F8653,
+       
+    /** 
+    * View service class (offers view based services).
+    */
+    KAiwClassView = 0x101F8654,
+
+    /** 
+    * This class is for R&D purposes.  
+    */
+    KAiwClassDebug = 0x101F866B
+    };
+
+
+/**
+* Event codes. To be used with HandleNotifyL method.
+*/
+enum
+    {
+    /**
+    * Asynchronous service informs consumer to prepare itself for 
+    * action. 
+    */
+    KAiwEventStarted = 1,
+
+    /**
+    * Asynchronous service request completed.
+    */
+    KAiwEventCompleted = 2,
+
+    /**
+    * Asynchronous service request canceled.
+    */
+    KAiwEventCanceled = 3,
+    
+    /**
+    * Error during asynchronous service request.
+    */
+    KAiwEventError = 4,
+    
+    /**
+    * Relates to KAiwOptOutParamCheck.
+    */
+    KAiwEventOutParamCheck = 5,
+    
+    /**
+    * Relates to KAiwOptInParamCheck.
+    */
+    KAiwEventInParamCheck = 6,
+    
+    /**
+    * Provider informs consumer that service is no longer available or 
+    * has stopped.
+    */
+    KAiwEventStopped = 7,
+    
+    /**
+    * Provider asks consumer whether Exit can be done (needed at least in 
+    * embedded use cases where server application offers Exit possibility 
+    * to end user, but consumer can not allow Exit due to fact that for
+    * example network connections owned by consumer are open and they need 
+    * to be kept alive).    
+    */
+    KAiwEventQueryExit = 8
+    };
+    
+// ============================================================================
+// Menu item flags for AIW consumers.   
+// ============================================================================ 
+/** 
+ * Always keep the provider menu items in a submenu. 
+ */
+#define AIW_CASCADE_ID               0x01010001
+
+/** 
+ * Menu item is placed intelligently either to the main level or a submenu. 
+ */
+#define AIW_INTELLIGENT_CASCADE_ID   0x01010010
+
+/** 
+ * Consumer defines the menu title. 
+ */
+#define AIW_LOCK_SUBMENU_TITLE       0x00000020
+
+// ============================================================================
+// Criteria item flags for AIW consumers.    
+// ============================================================================
+/** 
+ * Criteria item loadOptions bit, only providers in ROM are accepted. 
+ */
+#define AIW_OPTIONS_ROM_ONLY         0x01
+
+// ============================================================================
+// Menu item flags for AIW providers.
+// ============================================================================
+/** 
+ * For providers only: Provider suggests the submenu title. 
+ */
+#define AIW_SUBMENU_TITLE            0x0ff11012
+
+#endif // AIW_COMMON_HRH
+
+// End of file
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/uncategorized/aiwdialdata.h	Thu Mar 25 23:48:15 2010 +0530
@@ -0,0 +1,213 @@
+/*
+* Copyright (c) 2005-2006 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:  Dial data used with AIW for making calls.
+*
+*/
+
+
+#ifndef CAIWDIALDATA_H
+#define CAIWDIALDATA_H
+
+//  INCLUDES
+#include <e32base.h>
+                        
+// FORWARD DECLARATIONS
+class CAiwGenericParamList;
+class CAiwInternalDialData;
+
+/** Constant used by aiwdialdata interface. */ 
+namespace AIWDialData
+    {
+    /** Maximum phone number length same as used by phone. */ 
+    const TInt KMaximumPhoneNumberLength = 100;
+    
+    /** Default windowgroup value */ 
+    const TInt KAiwGoToIdle(0);
+    }
+
+// CLASS DECLARATION
+
+/**
+*   Creating call using CAiwDialData API. 
+*
+*   @code
+*
+*   - Client must be Service Handler client. For more information see
+*     service handler desing document.
+*
+*   - Client creates intance of CAiwDialData:
+*
+*   CAiwDialData* dialData = CAiwDialData::NewLC();
+*
+*   - Define call parameters(phone number is compulsory parameter ):
+*   
+*   dialData->SetCallType( CAiwDialData::EAIWVoice );
+*   _LIT(phoneNumber, "050123456");
+*   dialData->SetPhoneNumberL( phoneNumber );
+*   dialData->SetWindowGroup( AIWDialData::KAiwGoToIdle );
+*   
+*   - Client creates reference to CAiwGenericParamList and fills paramlist:
+*
+*   CAiwGenericParamList& paramList = iServiceHandler->InParamListL();
+*   dialData->FillInParamListL( paramList );
+*
+*  - Now client can give execute command to service handler.
+*
+*  iServiceHandler->ExecuteServiceCmdL( KAiwCmdCall, paramList,
+*                                 iServiceHandler->OutParamListL(),
+*                                 0, NULL );
+*  @endcode
+*  
+*  Dial data for SDK applications.
+* 
+*  @lib aiwdialdata.lib
+*  @since S60 3.2
+*/
+NONSHARABLE_CLASS( CAiwDialData ): public CBase
+    {
+    public:  // Enum.
+    
+        /**  Different type of calls. */ 
+        enum TCallType
+            {
+            /* Voice call. If there is a VoIP service that is registered and set as preferred, the 
+             * call is created as VoIP call, otherwise CS call. */
+            EAIWVoice           = 0,
+            /** Video call.             */
+            EAIWVideo           = 1,
+            /** Forced video call, creates video call directly without
+             *  queries.                */
+            EAIWForcedVideo     = 2, 
+            /** Voip call.              */
+            EAIWVoiP            = 3,
+            /* Forced voice call, creates always CS voice call. Use this value if the call type is
+             * not allowed to be changed */
+            EAIWForcedCS        = 4
+            };
+            
+    public:  // Constructors and destructor
+    
+        /**
+        * Two-phased constructor for implementation class. 
+        * Use this method for creating a instance with null items.
+        *
+        * @since S60 3.2
+        * @return A pointer to the new object.
+        */
+        IMPORT_C static CAiwDialData* NewL();
+        
+        /**
+        * Two-phased constructor for implementation class. Leaves the 
+        * pointer to the cleanup stack.
+        * Use this method for creating a instance with null items.
+        *
+        * @since S60 3.2
+        * @return A pointer to the new object.
+        */
+        IMPORT_C static CAiwDialData* NewLC();
+        
+        /**
+        * Destructor.
+        */
+        virtual ~CAiwDialData();
+        
+    public: // New
+    
+        /**
+        * Composes data set package and inserts data to aInParamList.
+        *
+        * @since S60 3.2
+        * @param aInParamList In parameter used with CAiwService.
+        */
+        IMPORT_C void FillInParamListL( CAiwGenericParamList& aInParamList );
+
+    public: // Access - Setters
+        
+        /**
+        * Sets the phone number.
+        * 
+        * @since S60 3.2
+        * @param aPhoneNumber Phone number, which maximum length is
+        *        KMaximumPhoneNumberLength. 
+        *        Default: empty.
+        * @leaves KErrArgument if aPhoneNumber length is over 
+        *        KMaximumPhoneNumberLength.
+        */
+        IMPORT_C void SetPhoneNumberL( const TDesC& aPhoneNumber );
+        
+        /**
+        * Sets call type.
+        *
+        * @since S60 3.2
+        * @param aCallType defines the call type.
+        *        Default: EAIWVoice.
+        */
+        IMPORT_C void SetCallType( TCallType aCallType );
+   
+        /**
+        * Sets the window group identifier. When call is ended, 
+        * set window group is actived.
+        *
+        * @since S60 3.2
+        * @param aWindowGroup Window group id.
+        *        Default: KAiwGoToIdle.
+        */
+        IMPORT_C void SetWindowGroup( TInt aWindowGroup );
+        
+     public: // Access - Getters
+ 
+        /**
+        * Phone number.
+        *
+        * @since S60 3.2
+        * @return Phone number.
+        */
+        IMPORT_C const TDesC& PhoneNumber() const;
+        
+        /**
+        * Call type.
+        *
+        * @since S60 3.2
+        * @return Current call type.
+        */
+        IMPORT_C TCallType CallType() const;      
+          
+        /**
+        * Window group id.
+        *
+        * @since S60 3.2
+        * @return Window group id. 
+        */     
+        IMPORT_C TInt WindowGroup() const;
+
+    private:
+
+        /**
+        * C++ default constructor.
+        */
+        CAiwDialData();
+        
+        /**
+        * By default Symbian 2nd phase constructor is private.
+        */
+        void ConstructL();
+    
+    private:
+        
+        CAiwInternalDialData* iInternalDialData;   
+    };
+
+#endif      // CAIWDIALDATA_H   
+            
+// End of File
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/uncategorized/bld.inf	Thu Mar 25 23:48:15 2010 +0530
@@ -0,0 +1,10 @@
+#include <platform_paths.hrh>
+PRJ_EXPORTS
+ccontentmap.h		ccontentmap.h
+cpliwmap.h			cpliwmap.h
+cpserverdef.h		cpserverdef.h
+cpdebug.h			cpdebug.h
+cpglobals.h			cpglobals.h
+aiwdialdata.h		aiwdialdata.h
+AiwCommon.hrh		AiwCommon.hrh
+cpluginvalidator.h	cpluginvalidator.h
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/uncategorized/ccontentmap.h	Thu Mar 25 23:48:15 2010 +0530
@@ -0,0 +1,215 @@
+/*
+* 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:  CContentMap - class used in Content Publisher
+ *
+*/
+
+#ifndef C_CONTENTMAP_H
+#define C_CONTENTMAP_H
+
+#include "cpliwmap.h"
+
+// CLASS DECLARATION
+/**
+ *  Map which contains ids and serialized data stored by 
+ * 	Content Publisher
+ *
+ *  @lib cputils.dll
+ *  @since S60 v5.0
+ */
+NONSHARABLE_CLASS( CContentMap ): public CCPLiwMap
+    {
+public:
+
+    /**
+     * Two-phased constructor.
+     */
+    IMPORT_C static CContentMap* NewL( );
+
+    /**
+     * Two-phased constructor.
+     */
+    IMPORT_C static CContentMap* NewLC( );
+
+    /**
+     * Destructor.
+     */
+    virtual ~CContentMap();
+
+        
+private:
+
+    /**
+     * Adds to database current content
+     *  
+     * @param aSqlDb handle to database
+     * @param aNotificationList list of notifications to fill in when 
+     *        something was actually changed in dataabse
+     *
+     * @return id of added entry
+     */
+	TInt32 AddL( RSqlDatabase aSqlDb,
+            CLiwDefaultList* aNotificationList = NULL ) const;
+
+    /**
+     * Fetches entries from database
+     *  
+     * @param aSqlDb handle to database
+     * @param aList target list for enntries
+     * @param aItemsToDelete ids of entries for removal - 
+     *        they were found to be expired
+     *
+     * @return number of fetched entries
+     */
+    TUint GetListL( RSqlDatabase aSqlDb,
+            CLiwGenericParamList* aList,
+            RArray<TInt32>& aItemsToDelete ) const;
+
+    /**
+     * Removes entries from database
+     *  
+     * @param aSqlDb handle to database
+     * @param aNotificationList list of notifications to fill in when 
+     *        something was actually changed in dataabse
+     */
+    void RemoveL( RSqlDatabase aSqlDb ,
+            CLiwDefaultList* aNotificationList = 0 ) const;
+    
+    /**
+     * Saves results from query to SQLite Server
+     *  
+     * @param aStmt handle to SQL statement
+     * @param aList target list for enntries
+     * @param aItemsToDelete ids of entries for removal - 
+     *        they were found to be expired
+     */
+    void SaveQueryResultsL( RSqlStatement& aStmt ,
+            CLiwGenericParamList& aList,
+            RArray<TInt32>& aItemsToDelete ) const;
+    
+    /**
+     * Prepares SQL query for Add operation
+     *
+     * @param aSqlDb handle to database  
+     * @param aStmt handle to SQL statement
+     * @param aQuery SQL query
+     *
+     */
+    void PrepareStmtforAddL(RSqlDatabase aSqlDb,
+            RSqlStatement& aStmt ,
+            const TDesC& aQuery ) const;
+
+    /**
+     * Prepares SQL query for Update operation
+     *
+     * @param aSqlDb handle to database  
+     * @param aStmt handle to SQL statement
+     * @param aId id of entry to update
+     *
+     */
+    void PrepareStmtforUpdateL( RSqlDatabase aSqlDb,
+            RSqlStatement& aStmt,
+            TInt32 aId ) const;
+    
+    /**
+     * Updates entry in database
+     *  
+     * @param aSqlDb handle to database
+     * @param aId id entry to update
+     * @param aNotificationList list of notifications to fill in when 
+     *        something was actually changed in dataabse
+     */
+    void UpdateL( RSqlDatabase aSqlDb, TInt32 aId,
+            CLiwDefaultList* aNotificationList ) const;
+
+    /**
+     * Performs actuall add operation
+     *  
+     * @param aSqlDb handle to database
+     * @param aNotificationList list of notifications to fill in when 
+     *        something was actually changed in dataabse
+     *
+     * @return id of added entry
+     */
+    TInt32 AddToDbL( RSqlDatabase aSqlDb,
+            CLiwDefaultList* aNotificationList ) const;
+
+    /**
+     * Appends sorting criteria as strings to SQL query according to aSort
+     *
+     * @param aQuery SQL query
+     * @param aSort sort filter as TInt
+     */
+    void AppendSortL( RBuf& aQuery, const TCPSortOrder& aSort ) const;
+
+    /**
+     * Checks expiration time
+     * @param aExpirationTime time to checking with current time
+     * @return true if aExpirationTime is correct
+     */
+    TBool IsOutdated( const TTime aExpirationTime ) const;
+
+    /**
+     * Check if data map is set
+     *
+     * @return ETrue if ContentType was set, EFalse if not
+     */
+    void IsDataMapL() const;
+    
+    /**
+     * Gets expiration time from own data
+     * @param aResult expiration date
+     * @return ETrue if expiration date is find, EFalse if not 
+     */
+    TBool GetExpirationDateL( TTime& aResult ) const;
+
+    /**
+     * Check if IDs are valid for Delete operation
+     *
+     */
+    void IsValidForDeleteL() const;
+    
+    /**
+     * Check if IDs are valid for GetList operation
+     */
+    void IsValidForGetListL() const ;    
+
+    /**
+     *
+     * @return ETrue if supported, EFalse if not
+     */
+    TBool ActivateActionSupport( ) const;      
+    
+	/**
+     *
+     * @return ETrue if activate flag is set, EFalse if not
+     */
+	TBool GetActivateInfo( ) const;
+	
+	                                              
+private:
+
+    /**
+     * C++ default constructor.
+     */    
+    CContentMap();
+
+    /**
+     * Perform the second phase construction of a CContentMap object.
+     */        
+    void ConstructL();
+    
+    };
+
+#endif // C_CONTENTMAP_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/uncategorized/cpdebug.h	Thu Mar 25 23:48:15 2010 +0530
@@ -0,0 +1,107 @@
+/*
+* Copyright (c) 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:  Debug printing to a log file
+ *
+*/
+
+#ifndef C_CP_DEBUG_H
+#define C_CP_DEBUG_H
+
+// INCLUDES
+
+#include <e32base.h>
+#ifdef CONTENT_PUBLISHER_DEBUG
+#include <f32file.h>
+
+_LIT(KCPDebugDirName, "contentpublisher" );
+_LIT(KCPDebugFileName, "c:\\contentpublisher.txt" );
+_LIT(KCPDebugFileName2, "c:\\server.txt" );
+
+/**
+ *  Content publisher debug
+ *
+ *
+ *  @lib cpdebug.lib
+ *  @since  S60 v3.2
+ */
+NONSHARABLE_CLASS( CCPDebug ): public CBase
+    {
+public:
+
+    IMPORT_C static CCPDebug* NewLC( const TDesC& aFile );
+
+    IMPORT_C static CCPDebug* NewL( const TDesC& aFile );
+
+    virtual ~CCPDebug();
+
+    /**
+     * Determines whether CCPDebug is exist .		
+     */
+    IMPORT_C static TBool Enable();
+
+    /**
+     * Enables or disables Printf message logging to a file.		
+     * @param aEnable Set to true to enable logging, false to disable.
+     */
+    IMPORT_C static void EnableLogging(TBool aEnable);
+
+    /**
+     * Print debug text to the file (c:\\contentpublisher.txt). 
+     *
+     */
+    IMPORT_C static void Printf(TRefByValue<const TDesC8> aFormat, ...);
+
+private:
+
+    CCPDebug();
+
+    void ConstructL( const TDesC& aFile );
+
+    /**
+     * Returns a pointer to the thread-local data struct.
+     */
+    IMPORT_C static struct DebugData* Data();
+
+private: // data
+
+    /**
+     * Thread local storage for this DLL, as we cannot declare static
+     * global variables in Symbian.
+     */
+    struct DebugData* iData;
+    
+    };
+
+#define CP_DEBUG(s)    CCPDebug::Printf(s)
+
+/**
+ * Thread local storage space. Writable static data is not supported in
+ * Symbian, so static data is stored in this struct.
+ */
+struct DebugData
+    {
+    RFile iLogFile;
+    RFs iFs;
+    TBool iLogEnabled;
+    TTime iFirstUpdateTime;
+    RBuf iFileName;
+    };
+
+#else
+
+#define CP_DEBUG(s) 
+
+#endif
+
+#endif // C_CP_DEBUG_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/uncategorized/cpglobals.h	Thu Mar 25 23:48:15 2010 +0530
@@ -0,0 +1,140 @@
+/*
+* 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:  Global definitions
+ *
+*/
+
+
+#ifndef CPCLIENTGLOBALS_H
+#define CPCLIENTGLOBALS_H
+
+/** Data types for CP content */
+enum TDataTypes
+    {
+    ECPHardcodedText = 1, // 0001
+    ECPResourceText = 2, // 0010
+    ECPFilepathImage = 4, // 0100 
+    ECPResourceIcon = 8 // 1000
+    };
+
+enum TCPGetListOrder
+    {
+    ECPRecent = 1, // 0001
+    ECPPublisher = 2, // 0010
+    ECPContent = 4, // 0100 
+    ECPContentId = 8 // 1000 
+    };
+
+enum TFlag
+    {
+    EActivate = 1, // 0001
+    };
+    
+const TInt KNameArgumentsLimit = 5;
+const TInt KThreadNameLimit = 64;
+const TUint KDisablePersist = 0x1000;
+
+_LIT( KService, "CP Service" );
+
+_LIT8( KCPInterface, "IDataSource" );
+_LIT8( KCPContentInterface, "IContentPublishing" );
+_LIT8( KCPService, "Service.ContentPublishing" );
+_LIT8( KCommand, "cmd" );
+
+//Supported Commands
+_LIT8( KGetList, "GetList" );
+_LIT8( KAdd, "Add" );
+_LIT8( KDelete, "Delete" );
+_LIT8( KRequestNotification, "RequestNotification" );
+_LIT8( KExecuteAction, "ExecuteAction" );
+_LIT8( KCmdCancel, "Cancel" );
+_LIT8( KActivate, "Activate" );
+_LIT8( KActivateTrigger, "activate" );
+_LIT8( KDeactivateTrigger, "deactivate" );
+
+// Input arguments
+_LIT8( KType, "type" );
+_LIT8( KAction, "action" );
+_LIT8( KItem, "item" );
+_LIT8( KFilter, "filter" );
+_LIT8( KData, "data" );
+_LIT8( KSortOrder, "sort_order" );
+_LIT8( KItemId, "item_id" );
+_LIT8( KByPublisher, "by_publisher" );
+_LIT8( KByEntryIds, "by_entryids" );
+_LIT8( KPublisherId, "publisher" );
+_LIT8( KContentType, "content_type" );
+_LIT8( KContentId, "content_id" );
+_LIT8( KExpirationDate, "expiration_date" );
+_LIT8( KActivatePublisher, "activate" );
+_LIT8( KIds, "ids" );
+_LIT8( KId, "id" );
+_LIT8( KFlag, "flag");
+_LIT8( KAccessList, "ACL" );
+_LIT8( KACLRead, "read");
+_LIT8( KACLWrite, "write");
+_LIT8( KACLDelete, "delete");
+_LIT8( KUIDs, "UID" );
+_LIT8( KCapability, "Capability" );
+_LIT( KAll, "all");
+_LIT( KSortPublisher, "publisher");
+_LIT( KSortContentType, "content_type");
+_LIT( KSortContentId, "content_id");
+_LIT( KSortRecent, "recent");
+_LIT( KOperationAdd, "add" );
+_LIT( KOperationUpdate, "update" );
+_LIT( KOperationDelete, "delete" );
+_LIT( KOperationExecute, "execute" );
+_LIT8( KDataType, "data_type" );
+_LIT8( KOperation, "operation" );
+_LIT8( KActionTrigger, "action_trigger" );
+_LIT8( KActionTrigger16, "action_trigger16" );
+_LIT8( KHardcodedText, "harcoded_text" );
+_LIT8( KResourceText, "resource_text" );
+_LIT8( KFilepathImage, "filepath_image" );
+_LIT8( KIdMask, "id_mask" );
+_LIT8( KResourceIcon, "resource_icon" );
+_LIT8( KIdIcon, "id_icon" );
+_LIT8( KIdText, "id_text" );
+_LIT( KCpData, "cp_data" );
+_LIT( KPublisher, "publisher" );
+_LIT8( KChangeInfo, "change_info" );
+
+_LIT8( KPublisher_Uid, "publisher_Uid" );
+
+// Argument in Action
+_LIT8( KActionHandlerInterface, "IDataAction" );
+_LIT8( KActionHandlerService, "Service.ActionHandler" );
+_LIT8( KCmdExecute, "Execute" );
+_LIT8( KPluginUid, "plugin_id" );
+_LIT8( KDataForActionHandler, "data" );
+
+_LIT8( KLaunchMethod, "launch_method" );
+_LIT8( KApplicationUid, "application_uid" );
+_LIT8( KDocumentName, "document_name" );
+_LIT8( KViewId, "view_id" );
+_LIT8( KMessageUid, "message_uid" );
+
+// Output
+_LIT8( KResults, "results" );
+_LIT8( KListMap, "list_map" );
+_LIT8( KStatus, "status" );
+_LIT8( KDataMap, "data_map" );
+_LIT8( KActionMap, "action_map" );
+_LIT8( KKey, "key" );
+
+_LIT8( KTransactionID, "TransactionID" );
+_LIT8( KErrorCode, "ErrorCode" );
+
+#endif /*CPCLIENTGLOBALS_H*/
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/uncategorized/cpliwmap.h	Thu Mar 25 23:48:15 2010 +0530
@@ -0,0 +1,620 @@
+/*
+* 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:   CCPLiwMap - class used in Content Publisher
+ *
+*/
+
+#ifndef C_CPLIWIDSMAP_H
+#define C_CPLIWIDSMAP_H
+
+#include <liwvariant.h>
+#include <sqldb.h>
+#include "cpglobals.h"
+
+class RDesReadStream;
+class CCPSecurityPolicy;
+
+// CLASS DECLARATION
+/**
+ *  Base Map class for Publisher Registry and Content
+ *
+ *  @lib cputils.dll
+ *  @since S60 v5.0
+ */
+class CCPLiwMap : public CLiwMap
+    {
+
+protected:
+    
+    /**
+     * Enum defining the properties of filter.
+     */
+    enum TCPProperties
+        {
+        EPublisher = 1,
+        EContentType = 2,
+        EContentId = 4,
+        EFlag = 8,
+        };
+
+    /**
+     * Enum defining the sort ordering.
+     */    
+	enum TCPSortOrder
+        {
+        ECPRecent = 1, // 0001
+        ECPPublisher  = 2, // 0010
+        ECPContent = 4, // 0100 
+        ECPContentId = 8 // 1000 
+        };   
+
+public:
+
+    friend class CCpStorageEngine;
+
+    /**
+     * Two-phased constructor.
+     */    
+    IMPORT_C static CCPLiwMap* NewL( RDesReadStream& aStream );
+
+    /**
+     * Two-phased constructor.
+     */    
+    IMPORT_C static CCPLiwMap* NewL( const CLiwGenericParamList& aList );
+
+    /**
+     * Used by client to serialize this object 
+     *
+     * @return object serialized to binary
+     */
+    IMPORT_C HBufC8* PackForServerLC() const;
+    
+    /**
+     * Reset map
+     */
+    IMPORT_C void Reset( ) const;
+    
+    /**
+     * Leaves when Add data operation is not possible due
+     * to missing of some parameter
+     */
+    virtual void IsValidForAddL( ) const;
+
+    /**
+     * Leaves when Execute Action operation is not possible due
+     * to missing of some parameter
+     */
+    IMPORT_C void IsValidForActionL( ) const;
+    
+    /**
+     * Leaves when RequestNotification operation is not possible due
+     * to missing of some parameter
+     */
+    IMPORT_C void IsValidForNotificationL( ) const;
+    
+    /**
+     * Fetches value for property(key) from internal map
+     *
+     * @param aProperty name of the property ( key ) 
+     * @param aResult target descriptor for fetching operation
+     * @return ETrue is property found or EFalse if not
+     */
+    IMPORT_C TBool GetPropertyL( const TDesC8& aProperty,
+             RBuf& aResult ) const;
+
+    /**
+     * Fetches value for property(key) from internal map
+     *
+     * @param aProperty name of the property ( key ) 
+     * @param aResult target binary for fetching operation
+     * @return ETrue is property found or EFalse if not
+     */
+    IMPORT_C TBool GetPropertyL( const TDesC8& aProperty,
+            RBuf8& aResult ) const;
+    
+    /**
+     * Fetches value for property(key) from internal map
+     *
+     * @param aProperty name of the property ( key ) 
+     * @param aResult target integer for fetching operation
+     * @return ETrue is property found or EFalse if not
+     */
+    IMPORT_C TBool GetProperty( const TDesC8& aProperty,
+    		TInt32& aResult ) const;
+
+    
+    /**
+     * Setter for security policy 
+     *
+     * @param aPolicy security policy
+     */
+    IMPORT_C void SetSecurityL( const RMessage2& aMessage );
+    
+    /**
+     * Destructor.
+     */
+    virtual ~CCPLiwMap();
+
+    /**
+     * Check if IDs are valid for Delete operation
+     */
+    virtual void IsValidForDeleteL() const =0;
+    
+    /**
+     * Check if IDs are valid for GetList operation
+     */
+    virtual void IsValidForGetListL() const =0;    
+
+	/**
+     *
+     * @return ETrue if supported, EFalse if not
+     */
+	virtual TBool ActivateActionSupport( ) const = 0;
+
+	/**
+     *
+     * @return ETrue if activate flag is set, EFalse if not
+     */
+	virtual TBool GetActivateInfo( ) const = 0;
+
+	
+public:
+
+    // from base class CLiwMap
+    /**
+     * Inserts a key-value pair element to the map collection. If
+     * the specified key already exists, it will be removed from
+     * the collection and the new key-value pair will be added to the
+     * map.
+     *  
+     * @param aKey the key to be stored
+     * @param aValue the value associated with the key to be stored
+     */
+    void InsertL( const TDesC8& aKey, const TLiwVariant& aValue );
+
+    /**
+     * Finds a value stored in the map collection based on the key.
+     *  
+     * @param aKey the key to be searched
+     * @param aFndValue the value associated with the found key
+     * @return false if there is no key stored; true otherwise
+     */
+    TBool FindL( const TDesC8& aKey, TLiwVariant& aValue ) const;
+
+    /**
+     * Returns the number of key-value pair stored in the map collection.
+     *  
+     * @return the number of key-value pair stored in the map collection
+     */
+    TInt Count() const;
+
+    /**
+     * Returns the key stored at a specified index. 
+     *  
+     * @param aIndex the index of the key to be found
+     * @param aFndKey the key found at the passed index
+     *
+     * @return true if a key-value entry is found at the passed index;
+     * false otherwise
+     */
+    TBool AtL( TInt aIndex, TDes8& aFndKey ) const;
+
+    /**
+     * Removes a key from the map collection.
+     *  
+     * @param aKey the key to be removed from the map
+     */
+    void Remove( const TDesC8& aKey );
+
+    /**
+     * Returns the size of the collection. The size is 
+     * calculated based on the total numer of key-value elements
+     * and the size of each pair in the collection
+     *  
+     * @return the size of the collection
+     */
+    TInt Size() const;
+
+    /**
+     * The container managed data values can be serialized to an output
+     * stream. 
+     * 
+     * @param aOutputStream the output stream to which the data will be streamed
+     */
+    void ExternalizeL( RWriteStream& aOutputStream ) const;
+
+protected:
+
+    /**
+     * Adds to database current content
+     *  
+     * @param aSqlDb handle to database
+     * @param aNotificationList list of notifications to fill in when 
+     *        something was actually changed in dataabse
+     *
+     * @return id of added entry
+     */
+    virtual TInt32 AddL( RSqlDatabase aSqlDb,
+        CLiwDefaultList* aNotificationList = 0 ) const= 0;
+
+    /**
+     * Fetches entries from database
+     *  
+     * @param aSqlDb handle to database
+     * @param aList target list for enntries
+     * @param aItemsToDelete ids of entries for removal - 
+     *        they were found to be expired
+     *
+     * @return number of fetched entries
+     */
+    virtual TUint GetListL( RSqlDatabase aSqlDb, CLiwGenericParamList* aList,
+        RArray<TInt32>& aItemsToDelete ) const = 0;
+
+    /**
+     * Removes entries from database
+     *  
+     * @param aSqlDb handle to database
+     * @param aNotificationList list of notifications to fill in when 
+     *        something was actually changed in dataabse
+     */
+    virtual void RemoveL( RSqlDatabase aSqlDb,
+        CLiwDefaultList* aNotificationList = 0 ) const = 0;
+
+    /**
+     * Saves results from query to SQLite Server
+     *  
+     * @param aStmt handle to SQL statement
+     * @param aList target list for enntries
+     * @param aItemsToDelete ids of entries for removal - 
+     *        they were found to be expired
+     */
+    virtual void SaveQueryResultsL( RSqlStatement& aStmt,
+        CLiwGenericParamList& aList, RArray<TInt32>& aItemsToDelete ) const = 0;
+
+    /**
+     * Updates entry in database
+     *  
+     * @param aSqlDb handle to database
+     * @param aNotificationList list of notifications to fill in when 
+     *        something was actually changed in dataabse
+     */
+    virtual void UpdateL( RSqlDatabase aSqlDb, TInt32 aId,
+        CLiwDefaultList* aNotificationList = 0 ) const = 0;
+
+    /**
+     * Performs actuall add operation
+     *  
+     * @param aSqlDb handle to database
+     * @param aNotificationList list of notifications to fill in when 
+     *        something was actually changed in dataabse
+     *
+     * @return id of added entry
+     */
+    virtual TInt32 AddToDbL( RSqlDatabase aSqlDb,
+        CLiwDefaultList* aNotificationList = 0 ) const = 0;
+
+    /**
+     * Checks if operation value is proper
+     *  
+     * @param aValue contains operation value
+     */    
+    void IsProperOperationL( const TLiwVariant& aValue ) const;
+    
+    
+    /**
+     * Appends GetList filter as strings to SQL query according to aFilter
+     *  
+     * @param aQuery SQL query
+     * @param aFilter as enum
+     *
+     */
+    void AppendGetListFilterL( RBuf& aQuery, TUint& aFilter ) const;
+    
+    /**
+     * Appends Remove filter as strings to SQL query according to aFilter
+     *  
+     * @param aQuery SQL query
+     * @param aFilter as enum
+     *
+     */
+    void AppendRemoveFilterL( RBuf& aQuery, TUint& aFilter ) const;
+    
+    
+    /**
+     * Appends filter as strings to SQL query according to aFilter
+     *  
+     * @param aQuery SQL query
+     * @param aFilter as enum
+     *
+     */
+    virtual void AppendFilterL( RBuf& aQuery, TUint& aFilter ) const;
+
+    /**
+     * Prepares SQL query for Add operation
+     *
+     * @param aSqlDb handle to database  
+     * @param aStmt handle to SQL statement
+     * @param aQuery SQL query
+     *
+     */
+    virtual void PrepareStmtforAddL( RSqlDatabase aSqlDb,
+        RSqlStatement& aStmt, const TDesC& aQuery ) const;
+    /**
+     * Appends sorting criteria as strings to SQL query according to aSort
+     *
+     * @param aQuery SQL query
+     * @param aSort sort filter as TInt
+     *
+     */
+    virtual void AppendSortL( RBuf& aQuery, 
+        const TCPSortOrder& aSort ) const = 0;
+
+    /**
+      * Fills change info map with proper values
+      *aStmt
+      * @param aStmt handle to SQL statement
+      * @param aChangeInfoMap map that will be filed
+      *
+      */
+    virtual void FillChangeInfoMapL( RSqlStatement& aStmt, 
+			CLiwDefaultMap* aMap ) const;
+
+protected:
+
+    /**
+     * Sets all parameters according to provided list
+     * @param aItemMap map with parameters
+     */
+    void SetL( const CLiwGenericParamList& aInParamList );
+
+    /**
+     * Check Get properties
+     *
+     * @return logical sum of TCPProperties of the object
+     */
+    TUint GetFilterL() const;
+
+    /**
+     * Check and return sort order
+     *
+     * @return Sort Criteria
+     */
+    TCPSortOrder GetSortL() const;
+
+    /**
+     * Check if Publisher name is set
+     *
+     * @return ETrue if Publisher name was set, EFalse if not
+     */
+    TBool IsPublisherNameL() const;
+
+    /**
+     * Check if ContentType is set
+     *
+     * @return ETrue if ContentType was set, EFalse if not
+     */
+    TBool IsContentTypeL() const;
+
+    /**
+     * Check if ContentId is set
+     *
+     * @return ETrue if ContentId was set, EFalse if not
+     */
+    TBool IsContentIdL() const;
+
+    /**
+     * Check if ActionTrigger is set
+     *
+     * @return ETrue if ActionTrigger was set, EFalse if not
+     */
+    TBool IsTriggerL( ) const;
+
+    /**
+     * Check if Flag is present
+     *
+     * @return ETrue if ContentId was set, EFalse if not
+     */
+    TBool IsFlag( ) const;
+    	
+    /**
+     * Checks if Id property is present in internal map
+     *
+     */
+    TBool IsId() const;
+
+    /**
+     * Checks if property(key) is present in internal map 
+     *
+     */
+    TBool PropertyExists( const TDesC8& aProperty ) const;
+
+    
+    /**
+     * Fetches entries from database
+     *  
+     * @param aSqlDb handle to database
+     * @param aQuery aQuery SQL query
+     * @param aList target list for enntries
+     * @param aItemsToDelete ids of entries for removal - 
+     *        they were found to be expired
+     *
+     * @return number of fetched entries
+     */
+    TUint GetListL( RSqlDatabase aSqlDb, const TDesC& aQuery,
+        CLiwGenericParamList* aList, RArray<TInt32>& aItemsToDelete ) const;
+
+    /**
+     * Removes entries from database
+     *  
+     * @param aSqlDb handle to database
+     * @param aQuery SQL query
+     * 
+     */
+    void RemoveL( RSqlDatabase aSqlDb, const TDesC& aQuery ) const;
+
+    /**
+     * Fetches Ids (Publisher, ContentType, ContentId) from database
+     * 
+     * @param aId id entry in database
+     * @param aQuery SQL query
+     * @param aMap map to insert Ids
+     * @param aSqlDb handle to database  
+     * 
+     */
+    void FetchIdsL( TInt32 aId, const TDesC& aQuery, CLiwDefaultMap* aMap,
+        RSqlDatabase aSqlDb ) const;
+
+    /**
+     * Fetches Id from database
+     * 
+     * @param aSqlDb handle to database
+     * @param aQuery SQL query
+     * @param aId id entry from database
+     * 
+     */
+    void FetchIdL( RSqlDatabase aSqlDb,
+        const TDesC& aQuery, TInt32& aId ) const;
+
+    /**
+     * Gets Ids (Id, Publisher, ContentType, ContentId) 
+     *      of removed entries from database
+     *  
+     * @param aSqlDb handle to database
+     * @param aQuery SQL query
+     * @param aList List with ids
+     * 
+     */
+    void GetIdsOfRemovedEntriesL( RSqlDatabase aSqlDb, const TDesC& aQuery,
+        CLiwDefaultList* aList ) const;
+
+    /**
+     * Saves Ids (Id, Publisher, ContentType, ContentId) from database
+     * 
+     * @param aSqlDb handle to database
+     * @param aList List with ids
+     * 
+     */
+    void SaveQueryResultsIdsL( RSqlStatement& aStmt,
+        CLiwDefaultList* aList ) const;    
+
+    /**
+     * Contructs SQL query to select entry
+     * @param aQuery SQL query
+     * 
+     */
+    void ConstructSelectIdL( RBuf& aQuery ) const;
+
+    /**
+     * Contructs SQL query to select entries for GetList
+     * @param aQuery SQL query
+     * 
+     */
+    void ConstructGetListSelectL( RBuf& aQuery, TBool aGet = ETrue ) const;
+
+    /**
+     * Contructs SQL query to select entries for Remove
+     * @param aQuery SQL query
+     * 
+     */
+    void ConstructRemoveSelectL( RBuf& aQuery, TBool aGet = ETrue ) const;
+    
+    /**
+     * Binds value to query
+     * @param aQuery SQL query
+     * @param aSqlDb handle to database
+     * 
+     */
+    void BindValueL( const RBuf& aQuery, RSqlStatement& aStmt ) const;
+
+    /**
+     * Checks if GetList for all items should be done
+     * @param aFilter flag describing which ids are set
+     * @return ETrue if getlist for all items shold be done, EFalse if not
+     */
+    TBool IsGetListAllL( TUint aFilter ) const;
+    
+    /**
+     * Removes attributes with "All" value from map
+     * @param aFilter filter bit will be reset if any attribute == "all"
+     */    
+    void RemoveAllAttributeL( TUint& aFilter ) const;
+    
+    /**
+     * Leaves if publisher, content type od content_id is not descriptor type. 
+     */    
+    void CheckIdentifiersL() const;
+    
+    /**
+     * Leaves if aParameterIndex is negative-error value 
+     * or in case of binding error. 
+     */    
+    void BindTextL(RSqlStatement& aStmt, TInt aParameterIndex,
+        const TDesC& aParameterText) const;
+    
+    /**
+     * Leaves if aParameterIndex is negative-error value 
+     * or in case of binding error. 
+     */ 
+    void BindBinaryL(RSqlStatement& aStmt, TInt aParameterIndex,
+        const TDesC8& aParameterText) const;
+    
+    /**
+     * Leaves if aParameterIndex is negative-error value 
+     * or in case of binding error. 
+     */ 
+    void BindInt64L(RSqlStatement& aStmt, TInt aParameterIndex,
+        TInt64 aParameterValue) const;
+
+    /**
+     * Leaves if aParameterIndex is negative-error value 
+     * or in case of binding error. 
+     */ 
+    void BindIntL(RSqlStatement& aStmt, TInt aParameterIndex,
+        TInt aParameterValue) const;
+    
+    /**
+     * Leaves if column index return value is negative.
+     * @return result of RSqlStatement::ColumnIndex
+     */ 
+    TInt ColumnIndexL( RSqlStatement& aStmt, const TDesC& aColumnName )	const;
+protected:
+
+    /**
+     * C++ default constructor.
+     */     
+    CCPLiwMap();
+
+    /**
+     * Perform the second phase construction of a CCPLiwMap object.
+     */       
+    void ConstructL();
+
+protected:
+    // data
+
+    /*
+     * The underlying generic parameter list
+     * Own.
+     */
+    CLiwGenericParamList* iMap;
+    
+    /*
+     * Class used for security 
+     *Own.
+     */
+    const CCPSecurityPolicy* iPolicy;
+
+    };
+
+#endif // C_CPLIWIDSMAP_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/uncategorized/cpluginvalidator.h	Thu Mar 25 23:48:15 2010 +0530
@@ -0,0 +1,195 @@
+/*
+* Copyright (c) 2006-2006 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:  
+ *
+*/
+
+
+#ifndef CPLUGINVALIDATOR_H
+#define CPLUGINVALIDATOR_H
+
+// INCLUDES
+#include <e32base.h>
+#include <e32hashtab.h>
+#include <ecom/implementationinformation.h>
+
+// FORWARD DECLARATIONS
+class REComSession;
+
+/**
+ *  Class containing information regarding a plugin
+ *
+ * 
+ *  @lib cpclient.dll
+ *  @since S60 v 5.0
+ */
+NONSHARABLE_CLASS( TPluginInfo )
+	{
+public:
+	TAny* iPlugin; // not own
+	TUid iImplementationUid;
+	TInt iVersion;
+	TUid iDtor_ID_Key;
+	};
+
+/**
+ *  Class used to maintain required ECOM plugins implementations
+ *
+ * 
+ *  @lib cpclient.dll
+ *  @since S60 v 5.0
+ */
+NONSHARABLE_CLASS( CPluginValidator ): public CActive
+    {
+public:
+
+    /**
+     * Two-phased constructor.
+     * 
+     */     
+    IMPORT_C static CPluginValidator* NewL( TUid aUid, 
+                                            TAny *aParameter = NULL );
+
+    /**
+     * Two-phased constructor.
+     * 
+     */     
+    IMPORT_C static CPluginValidator* NewLC( TUid aUid,
+                                             TAny *aParameter = NULL );
+
+    /**
+     * Gets plugin with provided UID
+     *
+     * @param aUid required plugin
+     * @return pointer to plugin implementation
+     */   
+    IMPORT_C TAny* GetImplementation( TUid aUid );
+
+    /**
+     * Gets plugin with provided index
+     *
+     * @param aIndex index of plugin
+     * @return pointer to plugin implementation
+     */   
+    IMPORT_C TAny* GetImplementation( TInt aIndex );
+    
+    /**
+     * Gets number of plugins
+     *
+     * @return number of plugins
+     */    
+    IMPORT_C TInt GetCount();
+    
+    /**
+     * Desctructor.
+     */     
+    virtual ~CPluginValidator();
+
+protected:
+
+    /**
+     * From CActive, RunL.
+     * Handles the active object’s request completion event
+     */
+    void RunL();
+
+    /**
+     * From CActive, DoCancel.
+     * Implements cancellation of an outstanding request.
+     */
+    void DoCancel();
+
+    /**
+     * From CActive, RunError.
+     * Method called when leave occured in RunL
+     */
+    TInt RunError( TInt aError );
+
+protected:
+
+    /**
+     * C++ default constructor.
+     */    
+    CPluginValidator( TUid aUid, TAny *aParameter );
+
+    /**
+     * Perform the second phase construction of a CPluginValidator object.
+     */    
+    void ConstructL();
+    
+    /*
+     * Checks if plugin is present in an array
+     */
+    TBool PresentInArrayL( TPluginInfo aPluginInfo, 
+    		const RImplInfoPtrArray& aInfoArray );
+
+    /*
+     * 
+     */
+    void DestroyPlugin( TInt aIndex );    
+    
+    /**
+     * Cleans plugins table;
+     */    
+    void CleanPluginsTable();
+    
+    /**
+     * Loads or destroys plugins
+     */    
+    virtual void ManagePluginsL();    
+
+    /**
+     * Loads ECOM plugins
+     */    
+    virtual void LoadPluginL( TPluginInfo& aPluginInfo );    
+    
+protected:
+    
+    /**
+     * ECOM handler
+     * Own.
+     */
+    REComSession* iSession;
+    
+    /**
+     * Array containing plugins
+     * Own.
+     */
+    RArray<TPluginInfo> iPluginArray;
+    
+    /**
+     * UID of the interface
+     */
+    const TUid iUid;
+        
+    /**
+     * Parameter to pass to the object creation method.
+     */
+    TAny* iParameter;
+     };
+
+// ==================== LOCAL FUNCTIONS ====================
+
+/**
+* Identity function to search in an array of TPluginInfo.
+* @param aLeft Search term.
+* @param aRight Array item.
+* @return ETrue if ID-s match.
+*/
+LOCAL_C TBool UidMatch( const TPluginInfo& aLeft, const TPluginInfo& aRight )
+    {
+    return aLeft.iImplementationUid == aRight.iImplementationUid;
+    }
+
+#endif // CPLUGINVALIDATOR_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/uncategorized/cpserverdef.h	Thu Mar 25 23:48:15 2010 +0530
@@ -0,0 +1,90 @@
+/*
+* 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:  Globals for Content Publisher  server
+ *
+*/
+
+
+#ifndef C_CPSERVERDEF_H
+#define C_CPSERVERDEF_H
+
+// CONSTANTS
+const TUint KCPServerMajorVersionNumber = 0;
+const TUint KCPServerMinorVersionNumber = 1;
+const TUint KCPServerBuildVersionNumber = 1;
+
+// ENUMERATIONS
+// Opcodes used in message passing between client and server
+enum TCpServerRqst
+    {
+    ECpServerAddData = 1,
+    ECpServerRemoveData = 2,
+    ECpServerAddDataNonPersistent = 3,
+    ECpServerGetListSize = 10,
+    ECpServerGetListData = 11,
+    ECpServerRegisterObserver = 20,
+    ECpServerUnRegisterObserver = 21,
+    ECpServerGetChangeInfoData = 22,
+    ECpServerAddObserver = 23,
+    ECpServerRemoveObserver = 24,
+    ECpServerExecuteAction = 30,
+    ECpServerInternal = 100
+    };
+
+_LIT( KCPServerThreadName, "cpserver_MainThread" );
+_LIT( KCPServerName, "cpserver" );
+_LIT( KCPServerFilename, "cpserver" );
+_LIT( KActiveDes, "1" );
+_LIT( KInActiveDes, "0" );
+_LIT( KColon, ":" );
+_LIT( KSemiColon, ";" );
+
+_LIT( KCPServerPluginThreadName, "CPS plugin command execution thread %d" );
+const TInt KCPServerPluginThreadMinHeapSize = 0x400; // 1kB
+const TInt KCPServerPluginThreadMaxHeapSize = 0x100000; // 1MB
+
+const TUid KServerUid3 =
+    {
+    0x20016B7B
+    };
+
+/** Panic Category */
+
+/** Active Data Server panic codes */
+enum TCPServerPanic
+    {
+    ECPServerBadRequest = 1,
+    ECPServerBadDescriptor = 2,
+    ECPServerSrvCreateServer = 3
+    };
+
+const TUint KDescriptorPosition( 0);
+const TUint KReturnPosition( 1);
+const TUint KInfoPosition( 2);
+const TUint KTransactionPosition( 3);
+const TBool KActive( ETrue );
+const TBool KInActive( EFalse );
+
+// Uid of CP Server
+const TUid KServerUid 			= { 0x20016B7B };
+// Uid of cpstorage
+const TUint32 KCPStorageUid 	= { 0x20016B7C };
+//Values of KSQLDBStateKey key
+const TInt KSQLDBStateNormal 	= 0x00000001;
+const TInt KSQLDBStateRestored	= 0x00000002;//KSQLDBStateNormal << 1
+// const ITnt NextState = LastState << 1;
+
+
+
+#endif // C_CPSERVERDEF_H