28 #include <comms-infras/ss_nodemessages_legacy.h> |
28 #include <comms-infras/ss_nodemessages_legacy.h> |
29 #include <elements/nm_messages_errorrecovery.h> |
29 #include <elements/nm_messages_errorrecovery.h> |
30 |
30 |
31 #include "s60mcpr.h" |
31 #include "s60mcpr.h" |
32 #include "s60mpmrequests.h" |
32 #include "s60mpmrequests.h" |
|
33 #include "s60mcpractivityids.h" |
33 |
34 |
34 /** |
35 /** |
35 * S60McprState namespace packages all S60 specific state, forks and |
36 * S60McprState namespace packages all S60 specific state, forks and |
36 * transitions which can be utilized from all S60MCPR activities. |
37 * transitions which can be utilized from all S60MCPR activities. |
37 */ |
38 */ |
56 const TInt KInformMigrationAvailable = 11052; |
57 const TInt KInformMigrationAvailable = 11052; |
57 const TInt KSendInitialApplicationReject = 11053; |
58 const TInt KSendInitialApplicationReject = 11053; |
58 const TInt KConsumeRejectedMsg = 11054; |
59 const TInt KConsumeRejectedMsg = 11054; |
59 const TInt KInformMigrationCompleted = 11055; |
60 const TInt KInformMigrationCompleted = 11055; |
60 const TInt KRequestReConnectToCurrentSP = 11056; |
61 const TInt KRequestReConnectToCurrentSP = 11056; |
|
62 const TInt KStopActivityNotRunning = 11057; |
61 |
63 |
62 /** |
64 /** |
63 * Execution context |
65 * Execution context |
64 */ |
66 */ |
65 typedef MeshMachine::TNodeContext<CS60MetaConnectionProvider, MobilityMCprStates::TContext> TContext; |
67 typedef MeshMachine::TNodeContext<CS60MetaConnectionProvider, MobilityMCprStates::TContext> TContext; |
115 MeshMachine::TStateTransition<TContext>, |
117 MeshMachine::TStateTransition<TContext>, |
116 NetStateMachine::MStateTransition, |
118 NetStateMachine::MStateTransition, |
117 TContext ) |
119 TContext ) |
118 virtual void DoL(); |
120 virtual void DoL(); |
119 DECLARE_SMELEMENT_FOOTER( TProcessError ) |
121 DECLARE_SMELEMENT_FOOTER( TProcessError ) |
|
122 |
|
123 /** |
|
124 * TRANSITION/ACTION: Error no bearer request while in gone down recovery. |
|
125 */ |
|
126 DECLARE_SMELEMENT_HEADER( THandleNoBearerDuringGoneDownRecovery, |
|
127 MeshMachine::TStateTransition<TContext>, |
|
128 NetStateMachine::MStateTransition, |
|
129 TContext ) |
|
130 virtual void DoL(); |
|
131 DECLARE_SMELEMENT_FOOTER( THandleNoBearerDuringGoneDownRecovery ) |
|
132 |
120 |
133 |
121 /** |
134 /** |
122 * STATE: Waits for valid select or error message. |
135 * STATE: Waits for valid select or error message. |
123 * @return ETrue if message is accepted or error is observed. |
136 * @return ETrue if message is accepted or error is observed. |
124 */ |
137 */ |
161 TContext ) |
174 TContext ) |
162 virtual TBool Accept(); |
175 virtual TBool Accept(); |
163 DECLARE_SMELEMENT_FOOTER( TAwaitingServiceIdRequest ) |
176 DECLARE_SMELEMENT_FOOTER( TAwaitingServiceIdRequest ) |
164 |
177 |
165 /** |
178 /** |
|
179 * STATE: Waits for NoBearer request while in gone down recovery. |
|
180 * @return ETrue if message is accepted. |
|
181 */ |
|
182 DECLARE_SMELEMENT_HEADER( TAwaitingNoBearerInGoneDownRecovery, |
|
183 MeshMachine::TState<TContext>, |
|
184 NetStateMachine::MState, |
|
185 TContext ) |
|
186 virtual TBool Accept(); |
|
187 DECLARE_SMELEMENT_FOOTER( TAwaitingNoBearerInGoneDownRecovery ) |
|
188 |
|
189 |
|
190 /** |
166 * TRANSITION/ACTION: Retrieve ServiceId. |
191 * TRANSITION/ACTION: Retrieve ServiceId. |
167 */ |
192 */ |
168 DECLARE_SMELEMENT_HEADER( TRetrieveServiceId, |
193 DECLARE_SMELEMENT_HEADER( TRetrieveServiceId, |
169 MeshMachine::TStateTransition<TContext>, |
194 MeshMachine::TStateTransition<TContext>, |
170 NetStateMachine::MStateTransition, |
195 NetStateMachine::MStateTransition, |
202 MeshMachine::TState<TContext>, |
227 MeshMachine::TState<TContext>, |
203 NetStateMachine::MState, |
228 NetStateMachine::MState, |
204 TContext ) |
229 TContext ) |
205 virtual TBool Accept(); |
230 virtual TBool Accept(); |
206 DECLARE_SMELEMENT_FOOTER( TAwaitingStoppedOrError ) |
231 DECLARE_SMELEMENT_FOOTER( TAwaitingStoppedOrError ) |
|
232 |
|
233 |
|
234 /** |
|
235 * STATE: Waits for TIdle |
|
236 */ |
|
237 DECLARE_SMELEMENT_HEADER( TAwaitingDataClientIdle, |
|
238 MeshMachine::TState<TContext>, |
|
239 NetStateMachine::MState, |
|
240 TContext ) |
|
241 virtual TBool Accept(); |
|
242 DECLARE_SMELEMENT_FOOTER( TAwaitingDataClientIdle ) |
|
243 |
|
244 /** |
|
245 * STATE: Waits for TDataClientStatusChange |
|
246 */ |
|
247 DECLARE_SMELEMENT_HEADER( TAwaitingDataClientStatusChange, |
|
248 MeshMachine::TState<TContext>, |
|
249 NetStateMachine::MState, |
|
250 TContext ) |
|
251 virtual TBool Accept(); |
|
252 DECLARE_SMELEMENT_FOOTER( TAwaitingDataClientStatusChange ) |
|
253 |
|
254 |
|
255 /** |
|
256 * FORK/MUTEX: Waits for StopIAPActivity to complete |
|
257 */ |
|
258 DECLARE_SERIALIZABLE_STATE( TStopActivityNotRunning, |
|
259 MeshMachine::TActivityIdMutex<ECFActivityS60McprStopIAP>, |
|
260 MeshMachine::TTag<S60MCprStates::KStopActivityNotRunning> ) |
207 |
261 |
208 class CS60ErrorRecoveryActivity : public MeshMachine::CNodeRetryActivity |
262 class CS60ErrorRecoveryActivity : public MeshMachine::CNodeRetryActivity |
209 { |
263 { |
210 public: |
264 public: |
211 CS60ErrorRecoveryActivity( const MeshMachine::TNodeActivity& aActivitySig, |
265 CS60ErrorRecoveryActivity( const MeshMachine::TNodeActivity& aActivitySig, |