phoneengine/phonemodel/src/cpeparsersshandler.cpp
changeset 78 baacf668fe89
parent 65 2a5d4ab426d3
--- a/phoneengine/phonemodel/src/cpeparsersshandler.cpp	Mon Oct 04 16:06:10 2010 +0300
+++ b/phoneengine/phonemodel/src/cpeparsersshandler.cpp	Fri Oct 15 12:58:46 2010 +0300
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2002-2007 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2002-2010 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"
@@ -39,7 +39,9 @@
 #include <psuidivertnotehandler.h>
 #include <psetcalldivertingwrapper.h>
 #include <psuiwaitingnotehandler.h>
+#include <psuiclinotehandler.h>
 #include <psetcallwaitingwrapper.h>
+#include <psetcliwrapper.h>
 
 // CONSTANTS
 const TInt KPEDefinedBasicServiceGroup = 99;
@@ -87,12 +89,12 @@
 // Destructor
 CPEParserSSHandler::~CPEParserSSHandler()
     {    
-    delete iCli;
     delete iBarring;
-    delete iWaiting;
     delete iSettings;
     
     delete iCallDivertingHandler;
+    delete iCallWaitingHandler;
+    delete iCliNoteHandler;
     delete iPsetWrapper;
     
 
@@ -964,9 +966,7 @@
 // -----------------------------------------------------------------------------
 //
 void CPEParserSSHandler::CreateCWObsL()
-    {
-    ConnectToSsEngineL();
-   
+    { 
     if ( !iPsetWrapper )
         {
         iPsetWrapper = new PSetWrapper;    
@@ -1008,7 +1008,13 @@
 //
 void CPEParserSSHandler::CreateCliObsL()
     {
-    ConnectToSsEngineL();
+    if ( !iPsetWrapper )
+        {
+        iPsetWrapper = new PSetWrapper;    
+        iCliNoteHandler = new PsUiCliNoteHandler(iPsetWrapper->cliWrapper());
+        iCli = &iPsetWrapper->cliWrapper().getCPsetCli();
+        iCli->SetRequestObserver(this);
+        }
     }   
      
 // -----------------------------------------------------------------------------
@@ -1051,8 +1057,6 @@
     delete iBarring;
     iBarring = NULL;
     
-    delete iCli;
-    iCli = NULL;
     delete iSettings;
     iSettings = NULL;
     
@@ -1064,6 +1068,10 @@
     delete iCallWaitingHandler;
     iCallWaitingHandler = NULL;
     
+    iCli = NULL;
+    delete iCliNoteHandler;
+    iCliNoteHandler = NULL;
+    
     delete iPsetWrapper;
     iPsetWrapper = NULL;
     }