93 |
93 |
94 MSuplSettingsObserver::TSuplSettingsEventType eventType = (MSuplSettingsObserver::TSuplSettingsEventType)event; |
94 MSuplSettingsObserver::TSuplSettingsEventType eventType = (MSuplSettingsObserver::TSuplSettingsEventType)event; |
95 iObserver.HandleSuplSettingsChangeL(eventType,slpID); |
95 iObserver.HandleSuplSettingsChangeL(eventType,slpID); |
96 } |
96 } |
97 else |
97 else |
98 { |
98 { |
99 TInt usage; |
|
100 |
|
101 iRepository->Get(KSuplSettingsUsage, usage); |
|
102 |
|
103 if (iUsage != usage) //check if there was a change in the Supl usage value in the cen rep |
|
104 iObserver.HandleSuplSettingsChangeL(MSuplSettingsObserver::ESuplSettingsEventSuplUsageChange); |
|
105 else //else check if any of the other config parameters changed |
|
106 { |
|
107 TInt fallBackValue; |
99 TInt fallBackValue; |
108 TInt fallBackTimerValue; |
100 TInt fallBackTimerValue; |
109 TBuf<KMaxStrlen> imsi; |
101 TBuf<KMaxStrlen> imsi; |
110 iRepository->Get(KSuplSettingsFallBack,fallBackValue); |
102 iRepository->Get(KSuplSettingsFallBack,fallBackValue); |
111 iRepository->Get(KSuplSettingsFallBackTimer,fallBackTimerValue); |
103 iRepository->Get(KSuplSettingsFallBackTimer,fallBackTimerValue); |
112 iRepository->Get(KSuplSettingsIMSI,imsi); |
104 iRepository->Get(KSuplSettingsIMSI,imsi); |
113 if(fallBackValue != iFallBackValue || fallBackTimerValue != iFallBackTimerValue || imsi.Compare(*iImsi)) |
105 if(fallBackValue != iFallBackValue || fallBackTimerValue != iFallBackTimerValue || imsi.Compare(*iImsi)) |
114 iObserver.HandleSuplSettingsChangeL(MSuplSettingsObserver::ESuplSettingsEventCommParameterChange); |
106 iObserver.HandleSuplSettingsChangeL(MSuplSettingsObserver::ESuplSettingsEventCommParameterChange); |
115 } |
107 |
116 } |
108 } |
117 StartListening(); |
109 StartListening(); |
118 } |
110 } |
119 |
111 |
120 // --------------------------------------------------------- |
112 // --------------------------------------------------------- |
157 // Request for notification for DB field change |
149 // Request for notification for DB field change |
158 iRepository->NotifyRequest(KSuplSettingsDBEvent, iStatus); |
150 iRepository->NotifyRequest(KSuplSettingsDBEvent, iStatus); |
159 } |
151 } |
160 else |
152 else |
161 { |
153 { |
162 TInt usage; |
154 |
163 TBuf<KMaxStrlen> imsi; |
155 TBuf<KMaxStrlen> imsi; |
164 iRepository->Get(KSuplSettingsUsage, usage); |
156 |
165 iRepository->Get(KSuplSettingsFallBack,iFallBackValue); |
157 iRepository->Get(KSuplSettingsFallBack,iFallBackValue); |
166 iRepository->Get(KSuplSettingsFallBackTimer,iFallBackTimerValue); |
158 iRepository->Get(KSuplSettingsFallBackTimer,iFallBackTimerValue); |
167 iRepository->Get(KSuplSettingsIMSI,imsi); |
159 iRepository->Get(KSuplSettingsIMSI,imsi); |
168 if(iImsi) |
160 if(iImsi) |
169 iImsi->Des() = imsi; |
161 iImsi->Des() = imsi; |
170 iUsage = (CSuplSettings::TSuplSettingsUsage) usage; |
162 |
171 |
163 |
172 // Request for notification for any field change |
164 // Request for notification for any field change |
173 iRepository->NotifyRequest(0x00000000, 0x00000000, iStatus); |
165 iRepository->NotifyRequest(0x00000000, 0x00000000, iStatus); |
174 } |
166 } |
175 |
167 |