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 { |
99 TInt fallBackValue; |
107 TInt fallBackValue; |
100 TInt fallBackTimerValue; |
108 TInt fallBackTimerValue; |
101 TBuf<KMaxStrlen> imsi; |
109 TBuf<KMaxStrlen> imsi; |
102 iRepository->Get(KSuplSettingsFallBack,fallBackValue); |
110 iRepository->Get(KSuplSettingsFallBack,fallBackValue); |
103 iRepository->Get(KSuplSettingsFallBackTimer,fallBackTimerValue); |
111 iRepository->Get(KSuplSettingsFallBackTimer,fallBackTimerValue); |
104 iRepository->Get(KSuplSettingsIMSI,imsi); |
112 iRepository->Get(KSuplSettingsIMSI,imsi); |
105 if(fallBackValue != iFallBackValue || fallBackTimerValue != iFallBackTimerValue || imsi.Compare(*iImsi)) |
113 if(fallBackValue != iFallBackValue || fallBackTimerValue != iFallBackTimerValue || imsi.Compare(*iImsi)) |
106 iObserver.HandleSuplSettingsChangeL(MSuplSettingsObserver::ESuplSettingsEventCommParameterChange); |
114 iObserver.HandleSuplSettingsChangeL(MSuplSettingsObserver::ESuplSettingsEventCommParameterChange); |
107 |
115 } |
108 } |
116 } |
109 StartListening(); |
117 StartListening(); |
110 } |
118 } |
111 |
119 |
112 // --------------------------------------------------------- |
120 // --------------------------------------------------------- |
149 // Request for notification for DB field change |
157 // Request for notification for DB field change |
150 iRepository->NotifyRequest(KSuplSettingsDBEvent, iStatus); |
158 iRepository->NotifyRequest(KSuplSettingsDBEvent, iStatus); |
151 } |
159 } |
152 else |
160 else |
153 { |
161 { |
154 |
162 TInt usage; |
155 TBuf<KMaxStrlen> imsi; |
163 TBuf<KMaxStrlen> imsi; |
156 |
164 iRepository->Get(KSuplSettingsUsage, usage); |
157 iRepository->Get(KSuplSettingsFallBack,iFallBackValue); |
165 iRepository->Get(KSuplSettingsFallBack,iFallBackValue); |
158 iRepository->Get(KSuplSettingsFallBackTimer,iFallBackTimerValue); |
166 iRepository->Get(KSuplSettingsFallBackTimer,iFallBackTimerValue); |
159 iRepository->Get(KSuplSettingsIMSI,imsi); |
167 iRepository->Get(KSuplSettingsIMSI,imsi); |
160 if(iImsi) |
168 if(iImsi) |
161 iImsi->Des() = imsi; |
169 iImsi->Des() = imsi; |
162 |
170 iUsage = (CSuplSettings::TSuplSettingsUsage) usage; |
163 |
171 |
164 // Request for notification for any field change |
172 // Request for notification for any field change |
165 iRepository->NotifyRequest(0x00000000, 0x00000000, iStatus); |
173 iRepository->NotifyRequest(0x00000000, 0x00000000, iStatus); |
166 } |
174 } |
167 |
175 |