143 return ETrue; |
143 return ETrue; |
144 } |
144 } |
145 break; |
145 break; |
146 |
146 |
147 default: |
147 default: |
148 C_TRACE(_L("default")); |
148 C_TRACE(_L("CModemAtSession::CheckAndCompleteExistingRequest Message not supported")); |
149 _LIT( KPanicString, "AtServer"); |
149 _LIT( KApplicationName, "Modematconroller.exe"); |
150 aMessage.Panic( KPanicString, KErrNotSupported ); |
150 aMessage.Panic( KApplicationName, KErrNotSupported ); |
151 break; |
151 break; |
152 } |
152 } |
153 |
153 |
154 if( RequestAlreadyPending ) |
154 if( RequestAlreadyPending ) |
155 { |
155 { |
162 } |
162 } |
163 |
163 |
164 void CModemAtSession::DoServiceL( const RMessage2& aMessage ) |
164 void CModemAtSession::DoServiceL( const RMessage2& aMessage ) |
165 { |
165 { |
166 C_TRACE (( _T("CModemAtSession::DoServiceL() function: %d message: 0x%x handle: 0x%x"), aMessage.Function(), &aMessage, aMessage.Handle() )); |
166 C_TRACE (( _T("CModemAtSession::DoServiceL() function: %d message: 0x%x handle: 0x%x"), aMessage.Function(), &aMessage, aMessage.Handle() )); |
167 TInt err( KErrNone ); |
167 |
168 if( CheckAndCompleteExistingRequest( aMessage ) ) |
168 if( CheckAndCompleteExistingRequest( aMessage ) ) |
169 { |
169 { |
170 C_TRACE (( _T("CModemAtSession::DoServiceL() - return") )); |
170 C_TRACE (( _T("CModemAtSession::DoServiceL() - return") )); |
171 return; |
171 return; |
172 } |
172 } |
183 } |
183 } |
184 iClientName = HBufC8::New( aMessage.GetDesLength( KATModemResponseArgumentIndex )); |
184 iClientName = HBufC8::New( aMessage.GetDesLength( KATModemResponseArgumentIndex )); |
185 iClientNamePtr.Set( iClientName->Des() ); |
185 iClientNamePtr.Set( iClientName->Des() ); |
186 aMessage.Read( KATModemResponseArgumentIndex, iClientNamePtr ); |
186 aMessage.Read( KATModemResponseArgumentIndex, iClientNamePtr ); |
187 iConnectReq = aMessage; |
187 iConnectReq = aMessage; |
188 err = iServer.ConnectToModem( this ); |
188 iServer.ConnectToModem( this, iPluginType ); |
189 ModemConnected( err ); |
|
190 break; |
189 break; |
191 |
190 |
192 case EReceiveUnsolicitedResult: |
191 case EReceiveUnsolicitedResult: |
193 C_TRACE(_L("EReceiveUnsolicitedResult")); |
192 C_TRACE(_L("EReceiveUnsolicitedResult")); |
194 iUnsolicitedDataReq = aMessage; |
193 iUnsolicitedDataReq = aMessage; |
214 aMessage.Complete(KErrNone); |
213 aMessage.Complete(KErrNone); |
215 break; |
214 break; |
216 |
215 |
217 case EModemAtRemovePipe: |
216 case EModemAtRemovePipe: |
218 C_TRACE (( _T("EModemAtRemovePipe") )); |
217 C_TRACE (( _T("EModemAtRemovePipe") )); |
219 iServer.RemovePipe( iDteId ); |
218 iServer.RemovePipe(); |
220 aMessage.Complete(KErrNone); |
219 aMessage.Complete(KErrNone); |
221 break; |
220 break; |
222 |
221 |
223 case EModemATReceiveSignalIndCancel: |
222 case EModemATReceiveSignalIndCancel: |
224 C_TRACE(_L("EModemATReceiveSignalIndCancel")); |
223 C_TRACE(_L("EModemATReceiveSignalIndCancel")); |
236 { |
235 { |
237 C_TRACE(_L("EModemATHandleCommand")); |
236 C_TRACE(_L("EModemATHandleCommand")); |
238 CAtMessage* message = new CAtMessage( EAtCmd, this, aMessage ); |
237 CAtMessage* message = new CAtMessage( EAtCmd, this, aMessage ); |
239 TRACE_ASSERT( message ); |
238 TRACE_ASSERT( message ); |
240 C_TRACE(_L("iServer.AddToSendFifo EAtCmd")); |
239 C_TRACE(_L("iServer.AddToSendFifo EAtCmd")); |
241 iServer.AddToSendFifo( iDteId, iPluginType, message ); |
240 iServer.AddToSendFifo( iPluginType, message ); |
242 } |
241 } |
243 break; |
242 break; |
244 |
243 |
245 case EModemATCommandMode: |
244 case EModemATCommandMode: |
246 { |
245 { |
253 { |
252 { |
254 C_TRACE(_L("EModemATGetNvramStatus")); |
253 C_TRACE(_L("EModemATGetNvramStatus")); |
255 CAtMessage* message = new CAtMessage( EGetNvramStatus, this, aMessage ); |
254 CAtMessage* message = new CAtMessage( EGetNvramStatus, this, aMessage ); |
256 TRACE_ASSERT( message ); |
255 TRACE_ASSERT( message ); |
257 C_TRACE(_L("iServer.AddToSendFifo EGetNvramStatus")); |
256 C_TRACE(_L("iServer.AddToSendFifo EGetNvramStatus")); |
258 iServer.AddToSendFifo( iDteId, iPluginType, message ); |
257 iServer.AddToSendFifo( iPluginType, message ); |
259 break; |
258 break; |
260 } |
259 } |
261 default: |
260 default: |
262 { |
261 { |
263 C_TRACE(_L("CModemAtSession::DoServiceL message not supported")); |
262 C_TRACE(_L("CModemAtSession::DoServiceL message not supported")); |
264 aMessage.Complete( KErrNotSupported ); |
263 aMessage.Complete( KErrNotSupported ); |
265 User::Panic(_L("ATServer"),KErrNotSupported); |
264 _LIT( KApplicationName, "Modematconroller.exe"); |
|
265 aMessage.Panic( KApplicationName, KErrNotSupported ); |
266 break; |
266 break; |
267 } |
267 } |
268 } |
268 } |
269 } |
269 } |
270 |
270 |
271 CModemAtSession::CModemAtSession( CModemAtSrv& aServer, |
271 CModemAtSession::CModemAtSession( CModemAtSrv& aServer, |
272 const TVersion& aVersion ) : |
272 const TVersion& aVersion ) : |
273 iServer( aServer ), |
273 iServer( aServer ), |
274 iVersion( aVersion ), |
274 iVersion( aVersion ), |
275 iDteId( KInitialDteId ), |
|
276 iClientName( NULL ), |
275 iClientName( NULL ), |
277 iClientNamePtr( NULL, 0 ) |
276 iClientNamePtr( NULL, 0 ) |
278 { |
277 { |
279 C_TRACE (( _T("CModemAtSession::CModemAtSession()") )); |
278 C_TRACE (( _T("CModemAtSession::CModemAtSession()") )); |
280 } |
279 } |
292 { |
291 { |
293 TRACE_ASSERT_ALWAYS; |
292 TRACE_ASSERT_ALWAYS; |
294 } |
293 } |
295 } |
294 } |
296 |
295 |
297 TUint8 CModemAtSession::GetDteId() |
|
298 { |
|
299 C_TRACE (( _T("CModemAtSession::GetDteId()") )); |
|
300 return iDteId; |
|
301 } |
|
302 |
|
303 |
|
304 TATPluginInterface CModemAtSession::GetPluginType() |
296 TATPluginInterface CModemAtSession::GetPluginType() |
305 { |
297 { |
306 C_TRACE (( _T("CCModemAtSession::GetPluginType(%d)"),iPluginType )); |
298 C_TRACE (( _T("CCModemAtSession::GetPluginType(%d)"),iPluginType )); |
307 return iPluginType; |
299 return iPluginType; |
308 } |
300 } |
309 |
301 |
310 |
|
311 TDesC8& CModemAtSession::GetName() |
302 TDesC8& CModemAtSession::GetName() |
312 { |
303 { |
313 C_TRACE( _T("CModemAtSession::GetName()") ); |
304 C_TRACE( _T("CModemAtSession::GetName()") ); |
314 return *iClientName; |
305 return *iClientName; |
315 } |
|
316 |
|
317 void CModemAtSession::SetDteId( const TUint8 aDteId ) |
|
318 { |
|
319 C_TRACE(( _T("CModemAtSession::SetDteId( %d )"), aDteId )); |
|
320 iDteId = aDteId; |
|
321 } |
306 } |
322 |
307 |
323 void CModemAtSession::ModemConnected( const TInt aErr ) |
308 void CModemAtSession::ModemConnected( const TInt aErr ) |
324 { |
309 { |
325 C_TRACE(( _T("CModemAtSession::ModemConnected( %d )"), aErr )); |
310 C_TRACE(( _T("CModemAtSession::ModemConnected( %d )"), aErr )); |