locationsystemui/locationsysui/locverifier/inc/lpdverifierplugin.h
branchRCL_3
changeset 44 2b4ea9893b66
parent 42 02ba3f1733c6
child 45 6b6920c56e2f
--- a/locationsystemui/locationsysui/locverifier/inc/lpdverifierplugin.h	Thu Aug 19 10:20:18 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,325 +0,0 @@
-/*
-* Copyright (c) 2002 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:  Verifier plug-in which derives from CPosPrivacyNotifier.
-*
-*/
-
-
-// INCLUDES
-
-#include <EPos_CPosPrivacyNotifier.h>
-#include <lbs/epos_privacy.h>
-#include <lbs/epos_cposrequestor.h>
-
-
-#include "lpdrequestao.h"
-#include "lpdresulthandler.h"
-#include "lpdperiodicreqinfo.h"
-#include "lpdperiodicprocessor.h"
-
-
-#ifndef CLPDVERIFIERDLG_H
-#define CLPDVERIFIERDLG_H
-
-// SYSTEM INCLUDE
-#include <bldvariant.hrh>               // For the 3.2 Flag
-
-
-// FORWARD DECLARATIONS
-class CLpdVerifierQueryLauncher;
-class CLpdNotifierQueryLauncher;
-class CEikonEnv;
-class CLpdRequestorProcessor;
-class RPosRequestorStack;
-class CLocRequestorUtilsResolver;
-class CLpdPeriodicProcessor;
-
-
-// CLASS DECLARATION
-
-/**
-*  Verifier plug-in which derives from CPosPrivacyNotifier.
-*  Notifiers are based on RNotifier framework, and this particular
-*  notifier is used to launch a privacy query for accepting/rejecting
-*  privacy requests. It also shows informational notes and error
-*  messages, which are received as notification.
-*
-*  @lib locverifierdlg.lib
-*  @since 2.1
-*/
-class CLpdVerifierPlugin : public CPosPrivacyNotifier, public MLpdResultHandler,
-                                             public MLpdPeriodicRequestObserver
-    {
-    // To allow calls to HandleNextRequest() from active object
-    friend class CLpdRequestAO;
-    
-    private:
-
-        /**
-         * Enumeration for defining the type of Verification or notification
-         * request
-         */
-        enum TDialogType
-            {
-            EVerificationRequest,
-            ENotification,
-            ENotificationTimeout,
-            ECancelNotification,
-            ESuplPeriodicNotification,
-            };
-
-    public:  // Constructors and destructor
-        
-        /**
-        * Two-phased constructor.
-        * @return created object
-        */
-        static CLpdVerifierPlugin* NewL();
-        
-        /**
-        * Destructor.
-        */
-        virtual ~CLpdVerifierPlugin();
-
-		/**
-		* To popup a notification note for verification cancellation event.
-		*/
-		void NotifyCancellationL(
-			TPosRequestSource aSource,
-			TPosVerifyCancelReason aReason,
-			TPosRequestDecision aDecision,
-			const RPosRequestorStack& aRequestors );
-
-        /**
-        * Method for cancelling query or freeing
-        * resources after finishing query.
-        */
-        void FreeQueryResources();
-
-    public: // Functions from base classes
-
-        /**
-        * From CPosPrivacyNotifier, called when a new request arrives.
-        * @param aRequestId identifier of received request
-        */
-        void HandleNewRequestL( TPosQNRequestId aRequestId );
-
-        /**
-        * From CPosPrivacyNotifier, called when request has been cancelled
-        * @param aRequestId identifier of cancelled request
-        */
-        void HandleRequestCancelled( TPosQNRequestId aRequestId );
-
-        /**
-        * From CPosPrivacyNotifier, called when all requests are cancelled.
-        */
-        void HandleAllRequestCancelled();
-
-        /**
-        * From MLpdResultHandler, called when verification result is available.
-        * @param aResultCode
-        */        
-        void HandleVerificationResultL( TInt aResultCode );
-
-        /**
-        * From MLpdResultHandler, called when notification has been done.
-        * @param aResultCode
-        */        
-        void HandleNotificationResultL( TInt aResultCode );
-
-        /**
-        * From MLpdResultHandler, called if leave occurred in callback method
-        * @param aError code
-        */        
-        void HandleLeave( TInt aError );
-        
-      
-
-
-    protected:  // New functions
-
-        /**
-        * Non-leaving internal method for handling next pending request.
-        */
-        void HandleNextRequest();
-        
-        /**
-        * Internal method for handling next pending request.
-        */
-        void HandleNextRequestL();
-
-        /**
-        * Internal helper method used by HandleNextRequestL().
-        */
-        void HandleNextVerificationL();
-
-        /**
-        * Internal helper method used by HandleNextRequestL().
-        */
-        void HandleNextNotificationL();
-
-        /**
-          * Internal helper method used by HandleNextNotificationL().
-          */
-        void HandleNextNonPeriodicNotificationL();
-
-        /**
-        * Internal helper method used by HandleNextNotificationL().
-        */
-        void HandleNextPeriodicNotificationL();        
-
-        /**
-        * Internal helper method.
-        */
-        void NotifyCancellationL( TPosRequestSource aSource, 
-                                  TPosVerifyCancelReason aReason,
-                                  TPosRequestDecision aDecision );
-
-        /**
-        * Internal helper method.
-        * Completes current request and continues queue handling.
-        */
-        void CompleteCurrentAndContinue( TInt aResultCode );
-
-        /**
-        * Handles assert errors. Panics in debug build but leaves in release
-        * build, as this component runs in EikSrv and must never panic.
-        */
-        void HandleAssertErrorL() const;
-
-        /**
-        * Panics in debug build but does nothing in release build.
-        */
-        void HandleDebugAssertError() const;
-        
-        /**
-        * Handle the request if it is periodic.
-        */
-        void EnqueIfPeriodicL(TPosQNRequestId aRequestId);
-        
-         /**
-        * From MLperiodicRequestObserver, called if the currently
-        * displayed notifier has to be updated
-        * @param aError code
-        */        
-        void UpdateCurrentNotifierL();
-        
-        /**
-        * Gets session id of request
-        * @param aSessionId The session id
-        */  
-        void GetSessionIdL( TInt64& aSessionId );
-
-    private:
-
-        /**
-        * C++ default constructor.
-        */
-        CLpdVerifierPlugin();
-
-        /**
-        * By default Symbian 2nd phase constructor is private.
-        */
-        void ConstructL();
-    
-        /**
-         * Starts the Query dialog
-         * @param aQueryDialog Query dialog that has to be started
-         * @param aDialogType  Dialog type
-         * @param aDecision    Decision Type
-         */
-        void StartQueryDialogL( CLpdQueryLauncherBase*  aQueryDialog,
-                                TDialogType             aDialogType,
-                                TPosRequestDecision     aDecision );
-         
-        /**
-         * Packs the Requestor buffer to send across to Cover UI. The 
-         * ownership of the buffer is transferred back to the callee
-         * @return CBufFlat*    Flat buffer containing the list of requestors    
-         */
-        CBufFlat*  PackRequestorBufferL();
-                 
-        /**
-         * Determines the Cover UI command corresponding to a paricular
-         * request
-         * @param  TDialogType          Request Type
-         * @param  TPosRequestDecision  Decision Type
-         * @return TInt                 Cover UI Command ID.
-         */
-        TInt   CoverUICommandL( TDialogType         aRequestType, 
-                                TPosRequestDecision aDecision );
-        
-         /**
-          * Checks the type of request and helps to know
-          * if a given request is of SUPL periodic type
-          * @param aCurrentRequest request id
-          * @return CPosRequestor::TRequestType type of request enum
-         */
-        CPosRequestor::TRequestType CheckRequestTypeL();
-
-
-    private:    // Data
-
-        // Cancellation info needed if cancel handling is postponed
-        class TCancelInfo
-            {
-            public:
-                TBool iCancelled;
-                TPosVerifyCancelReason iReason;
-                TPosRequestDecision iDecision;
-                TPosRequestSource iSource;
-            };
-
-        // Cancellation info needed if verification query is cancelled
-        // during rule query and handling is therefore postponed
-        TCancelInfo iCancelInfo;
-
-        // Identifier of currently handled request
-        TPosQNRequestId iCurrentRequest;
-
-        // Type of the current request, valid if iCurrentRequest valid
-        TRequestType iCurrentRequestType;
-
-        // Result code of verifier query, needed if user cancels rule query
-        TInt iVerifyResult;
-
-        // Resource file needs to be explicitely added
-        // to the environment. Adding returns an offset value.
-        TInt iResourceOffset;
-
-        // Location request accept/reject query object
-        CLpdVerifierQueryLauncher* iVerifierQuery;  // owns
-
-        // Location request accept/reject query object
-        CLpdNotifierQueryLauncher* iNotifier;       // owns
-        
-        // Active object, used to let requests run to
-        // completion instead of recursive calls.
-        CLpdRequestAO* iRequestActiveObject;        // owns
-
-        CLpdRequestorProcessor* iRtorProcessor;     // owns
-        
-        CLocRequestorUtilsResolver* iUtils; // owns
-
-        CLpdPeriodicProcessor* iPeriodicProcessor;     // owns
-        
-        RArray<TLpdPeriodicReqInfo> iPeriodicNotQue; // owns
-
-        CEikonEnv* iEnv;                            // uses
-                        
-    };
-
-#endif      // CLPDVERIFIERDLG_H   
-            
-// End of File