equal
deleted
inserted
replaced
72 |
72 |
73 // --------------------------------------------------------------------------- |
73 // --------------------------------------------------------------------------- |
74 // |
74 // |
75 // --------------------------------------------------------------------------- |
75 // --------------------------------------------------------------------------- |
76 // |
76 // |
77 TInt CUsbServiceControl::Start(TInt aPersonalityId) |
77 TInt CUsbServiceControl::StartL(TInt aPersonalityId) |
78 { |
78 { |
79 FTRACE(FPrint(_L( "[USBOTGWATCHER]\tCUsbServiceControl::Start aPersonalityId = %d" ), aPersonalityId)); |
79 FTRACE(FPrint(_L( "[USBOTGWATCHER]\tCUsbServiceControl::Start aPersonalityId = %d" ), aPersonalityId)); |
80 |
80 |
81 TUsbServiceState serviceState; |
81 TUsbServiceState serviceState; |
82 TInt err = iUsb.GetServiceState(serviceState); |
82 TInt err = iUsb.GetServiceState(serviceState); |
115 return err; |
115 return err; |
116 } |
116 } |
117 |
117 |
118 if (aPersonalityId == currentPersonality) // already started |
118 if (aPersonalityId == currentPersonality) // already started |
119 { |
119 { |
120 FLOG( _L( "[USBOTGWATCHER]\tCUsbServiceControl::Start Personality already sterted" ) ); |
120 FLOG( _L( "[USBOTGWATCHER]\tCUsbServiceControl::Start Personality already started" ) ); |
121 iObserver->UsbServiceControlReqCompletedL(KErrNone); |
121 iObserver->UsbServiceControlReqCompletedL(KErrInUse); |
122 return KErrNone; |
122 return KErrNone; |
123 } |
123 } |
124 |
124 |
125 // we need to stop current personality and start service with new personailty id |
125 // we need to stop current personality and start service with new personailty id |
126 iPersonalityId = aPersonalityId; // this will indicate that we want to start this personality after |
126 iPersonalityId = aPersonalityId; // this will indicate that we want to start this personality after |
127 |
127 |
128 Stop(); |
128 StopL(); |
129 |
129 |
130 // start new personality in RunL() when state is Idle |
130 // start new personality in RunL() when state is Idle |
131 |
131 |
132 break; |
132 break; |
133 } |
133 } |
174 |
174 |
175 // --------------------------------------------------------------------------- |
175 // --------------------------------------------------------------------------- |
176 // |
176 // |
177 // --------------------------------------------------------------------------- |
177 // --------------------------------------------------------------------------- |
178 // |
178 // |
179 TInt CUsbServiceControl::Stop() |
179 TInt CUsbServiceControl::StopL() |
180 { |
180 { |
181 FLOG( _L( "[USBOTGWATCHER]\tCUsbServiceControl::Stop" ) ); |
181 FLOG( _L( "[USBOTGWATCHER]\tCUsbServiceControl::Stop" ) ); |
182 |
182 |
183 TUsbServiceState serviceState; |
183 TUsbServiceState serviceState; |
184 TInt err = iUsb.GetServiceState(serviceState); |
184 TInt err = iUsb.GetServiceState(serviceState); |
284 if (iPersonalityId != 0) // during service stopping, requested to start it |
284 if (iPersonalityId != 0) // during service stopping, requested to start it |
285 { |
285 { |
286 FTRACE(FPrint(_L( "[USBOTGWATCHER]\tCUsbServiceControl::RunL Requested to start personality %d. Starting it." ), iPersonalityId)); |
286 FTRACE(FPrint(_L( "[USBOTGWATCHER]\tCUsbServiceControl::RunL Requested to start personality %d. Starting it." ), iPersonalityId)); |
287 TInt personalityId = iPersonalityId; |
287 TInt personalityId = iPersonalityId; |
288 iPersonalityId = 0; // reset |
288 iPersonalityId = 0; // reset |
289 err = Start(personalityId); |
289 err = StartL(personalityId); |
290 if(KErrNone != err) |
290 if(KErrNone != err) |
291 { |
291 { |
292 iObserver->UsbServiceControlReqCompletedL(err); |
292 iObserver->UsbServiceControlReqCompletedL(err); |
293 } |
293 } |
294 return; |
294 return; |
322 } |
322 } |
323 |
323 |
324 if (iPersonalityId == 0) // during service start requested to stop it |
324 if (iPersonalityId == 0) // during service start requested to stop it |
325 { |
325 { |
326 FLOG( _L( "[USBOTGWATCHER]\tCUsbServiceControl::Start Requested to stop personality. Stopping." ) ); |
326 FLOG( _L( "[USBOTGWATCHER]\tCUsbServiceControl::Start Requested to stop personality. Stopping." ) ); |
327 err = Stop(); |
327 err = StopL(); |
328 if(KErrNone != err) |
328 if(KErrNone != err) |
329 { |
329 { |
330 FTRACE(FPrint(_L( "[USBOTGWATCHER]\tCUsbServiceControl::RunL error while stopping personality err = %d" ), err)); |
330 FTRACE(FPrint(_L( "[USBOTGWATCHER]\tCUsbServiceControl::RunL error while stopping personality err = %d" ), err)); |
331 iObserver->UsbServiceControlReqCompletedL(err); |
331 iObserver->UsbServiceControlReqCompletedL(err); |
332 } |
332 } |
336 // otherwise, during service start, requested to start it with another personality |
336 // otherwise, during service start, requested to start it with another personality |
337 FTRACE(FPrint(_L( "[USBOTGWATCHER]\tCUsbServiceControl::RunL Requested to start personality %d. Starting it." ), iPersonalityId)); |
337 FTRACE(FPrint(_L( "[USBOTGWATCHER]\tCUsbServiceControl::RunL Requested to start personality %d. Starting it." ), iPersonalityId)); |
338 TInt personalityId = iPersonalityId; |
338 TInt personalityId = iPersonalityId; |
339 iPersonalityId = 0; // reset |
339 iPersonalityId = 0; // reset |
340 //User::LeaveIfError(Start(personalityId)); |
340 //User::LeaveIfError(Start(personalityId)); |
341 err = Start(personalityId); |
341 err = StartL(personalityId); |
342 if(KErrNone != err) |
342 if(KErrNone != err) |
343 { |
343 { |
344 FTRACE(FPrint(_L( "[USBOTGWATCHER]\tCUsbServiceControl::RunL error while starting personality err = %d" ), err)); |
344 FTRACE(FPrint(_L( "[USBOTGWATCHER]\tCUsbServiceControl::RunL error while starting personality err = %d" ), err)); |
345 iObserver->UsbServiceControlReqCompletedL(err); |
345 iObserver->UsbServiceControlReqCompletedL(err); |
346 } |
346 } |