satengine/SatServer/Commands/SendSSCmd/inc/csatsendsshandler.h
changeset 0 ff3b6d0fd310
child 12 ae8abd0db65c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/satengine/SatServer/Commands/SendSSCmd/inc/csatsendsshandler.h	Tue Feb 02 01:11:09 2010 +0200
@@ -0,0 +1,221 @@
+/*
+* Copyright (c) 2002-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:  Process forwarding procedures.
+*
+*/
+
+
+#ifndef CSATSENDSSHANDLER_H
+#define CSATSENDSSHANDLER_H
+
+#include <CPhoneGsmSsHandler.h>
+#include <nwdefs.h>
+#include <PsetCallWaiting.h>
+#include <PsetContainer.h>
+#include <PsetCallBarring.h>
+#include <PsetCallDiverting.h>
+#include <PsetCli.h>
+#include <MPsetRequestObs.h>
+
+class CSatSendSsBarringNoUiObs;
+class CSatSendSsCliNoUiObs;
+class CSatSendSsCallWaitingNoUiObs;
+class CSatSendSsDivertNoUiObs;
+
+/**
+*  Handles process forwarding procedures.
+*
+*  @lib SendSsCmd
+*  @since S60 v3.1
+*/
+class CSatSendSsHandler : public CPhoneGsmSsHandler,
+                          public MPsetRequestObserver
+    {
+
+public:
+
+    /**
+     * Destructor.
+     */
+    ~CSatSendSsHandler();
+
+    /**
+     * From CPhoneGsmSsHandler, Process forwarding procedures.
+     *
+     * If a parameter is not allowed for a procedure,
+     * then it is empty. If a parameter is not explicitly given,
+     * then it is empty. If a parameter is present, then it can
+     * be asumed to contain appropriate values.
+     *
+     * @param aAction It is action.
+     * @param aForwarding It contains forwarding procedure.
+     * @param aNumber It is directory number.
+     * @param aBasicCode It is basic service code.
+     * @param aTimer It is timer.
+     */
+    void ProcessForwardingL(
+        TAction aAction,
+        TForwardingProcedure aForwarding,
+        const TDesC& aNumber,
+        const TDesC& aBasicCode,
+        const TDesC& aTimer );
+
+    /**
+     * From CPhoneGsmSsHandler, Process barring procedures.
+     *
+     * See comments for forwarding, they apply also in here.
+     *
+     * @param aAction It is action.
+     * @param aBarring It contains barring procedure.
+     * @param aPassword It should be barring password, if required.
+     * @param aBasicCode It is basic service code.
+     */
+    void ProcessBarringL(
+        TAction aAction,
+        TBarringProcedure aBarring,
+        const TDesC& aPassword,
+        const TDesC& aBasicCode );
+
+    /**
+     * From CPhoneGsmSsHandler, Process password change
+     *
+     * @param aPassword It is password procedure.
+     * @param aOldPassword It should be old password.
+     * @param aNewPassword1 It is new password.
+     * @param aNewPassword2 It is new password.
+     */
+    void ProcessPasswordChangeL(
+        TPasswordProcedure aPassword,
+        const TDesC& aOldPassword,
+        const TDesC& aNewPassword1,
+        const TDesC& aNewPassword2 );
+
+    /**
+     * From CPhoneGsmSsHandler, Process waiting.
+     *
+     * @param aAction It is action.
+     * @param aBasicCode It is basic service code.
+     */
+    void ProcessWaitingL(
+        TAction aAction,
+        const TDesC& aBasicCode );
+
+    /**
+     * From CPhoneGsmSsHandler, Process calling line
+     * identification presentation status.
+     */
+    void ProcessClipStatusL();
+
+    /**
+     * From CPhoneGsmSsHandler, Process calling line
+     * idnetification restriction status.
+     */
+    void ProcessClirStatusL();
+
+    /**
+     * From CPhoneGsmSsHandler, Process connected line
+     * presentation status.
+     */
+    void ProcessColpStatusL();
+
+    /**
+     * From CPhoneGsmSsHandler, Process connected line
+     * restriction status.
+     */
+    void ProcessColrStatusL();
+
+    /**
+     * From CPhoneGsmSsHandler, Processes result
+     */
+    void ProcessCnapStatusL();
+
+    /**
+     * From MPsetRequestObs, called when request is completed
+     * so that also ui browsing is ended
+     */
+    void RequestComplete();
+
+    /**
+     * From MPsetRequestObs, called when request status is changed
+     * so that also ui browsing is ended
+     */
+    void RequestStatusChanged( TInt aNewStatus );
+
+    /**
+     * cancel function cancels current request
+     */
+    void Cancel();
+
+private:
+
+    /**
+     * Changes parameter to basic service code
+     */
+    TBasicServiceGroups ChangeToBsc( const TDesC& aBasicCode ) const;
+
+    /**
+     * Connects class to the phonesettings
+     */
+    void ConnectToSsEngineL();
+
+private:    // Data
+
+    /**
+     * Pointer to PhoneSettings
+     */
+    CPsetContainer* iSettings;
+
+    /**
+     * Call waiting handler in Phone Settings
+     */
+    CPsetCallWaiting* iWaiting;
+
+    /**
+     * Call waiting observer
+     */
+    CSatSendSsCallWaitingNoUiObs* iSatCwObserver;
+
+    /**
+     * Call barring handler in Phone Settings
+     */
+    CPsetCallBarring* iBarring;
+
+    /**
+     * Call barring observer
+     */
+    CSatSendSsBarringNoUiObs* iSatCbObserver;
+
+    /**
+     * Cli handler in Phone Settings
+     */
+    CPsetCli* iCli;
+
+    /**
+     * Cli observer
+     */
+    CSatSendSsCliNoUiObs* iSatCliObserver;
+
+    /**
+     * Call diverting handler in Phone Settings
+     */
+    CPsetCallDiverting* iDivert;
+
+    /**
+     * Call diverting observer
+     */
+    CSatSendSsDivertNoUiObs* iSatCfObserver;
+
+    };
+
+#endif      // CSATSENDSSHANDLER_H