cbsref/telephonyrefplugins/atltsy/atcommand/phone/src/atgetnetworkinfo.cpp
branchRCL_3
changeset 20 07a122eea281
parent 19 630d2f34d719
child 21 4814c5a49428
--- a/cbsref/telephonyrefplugins/atltsy/atcommand/phone/src/atgetnetworkinfo.cpp	Tue Aug 31 16:23:08 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,250 +0,0 @@
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// CATGetModemStatus
-// Description:
-// Basic GSM Network and Operator information Implementation file.
-// 
-// This file contains the implementation of the CATNetworkInfo, CATDetectNetwork,
-// CNotifyNetworkRegistrationStatusChange and CCurrentNetworkChangedNotify classes.
-// Find the current Network Operator in Numeric, Long and Short formats.
-// NB - Some phones do not fully support all the formats, if any. The commands are 
-// supported implement this command. Valid responses are set in the TMobilePhoneLocationAreaV1
-// and the TMobilePhoneNetworkInfoV1 structures and the Network's status is set to Current.
-
-
-
-#include <etelmm.h>
-#include "atgetnetworkinfo.h"
-#include "mslogger.h"
-
-_LIT8(KGetCurrentNetworkInfoCommand, "AT+COPS?\r");
-_LIT8(KGetCurrentNetworkInfoResponse,"+COPS:");
-/**
- * Utility function to translate the 5 digit ASCII network identification returned by the ME
- * into Mobile Country Code (aCountryCode) and a Mobile Network Code (aNetworkIdentity) strings.
- * Tbe format returned by the ME is XXXYY, where XXX represents the Mobile Country Code and YY
- * represents the Mobile Network Code.
- */
-static TInt NetworkIdL(const TDesC8& aCode,
-					   RMobilePhone::TMobilePhoneNetworkCountryCode& aCountryCode, 
-					   RMobilePhone::TMobilePhoneNetworkIdentity& aNetworkIdentity)
-	{
-	if (aCode.Length()!=5)
-		{
-		return KErrGeneral;
-		}
-	
-	aCountryCode.SetLength(3);
-	aCountryCode[0] = aCode[0];
-	aCountryCode[1] = aCode[1];
-	aCountryCode[2] = aCode[2];
-
-	aNetworkIdentity.SetLength(2);
-	aNetworkIdentity[0] = aCode[3];
-	aNetworkIdentity[1] = aCode[4];
-	return KErrNone;
-	}
-// Class CATNetworkInfo
-// ---------------------------------------------------------------------------
-// CATNetworkInfo::NewL
-// other items were commented in a header
-// ---------------------------------------------------------------------------
-CATNetworkInfo* CATNetworkInfo::NewL(CGlobalPhonemanager& aGloblePhone, 
-	                                 CCtsyDispatcherCallback& aCtsyDispatcherCallback)
-	{
-	CATNetworkInfo* self = new(ELeave) CATNetworkInfo(aGloblePhone,
-			                                          aCtsyDispatcherCallback);
-	CleanupStack::PushL(self );
-	self->ConstructL();
-	CleanupStack::Pop(self );
-	return self ;
-	}
-// ---------------------------------------------------------------------------
-// CATNetworkInfo::CATNetworkInfo
-// other items were commented in a header
-// ---------------------------------------------------------------------------
-CATNetworkInfo::CATNetworkInfo(CGlobalPhonemanager& aGloblePhone, 
-	                           CCtsyDispatcherCallback& aCtsyDispatcherCallback)
-		:CAtCommandBase(aGloblePhone,aCtsyDispatcherCallback)
-	{
-	}
-// ---------------------------------------------------------------------------
-// CATNetworkInfo::ConstructL
-// other items were commented in a header
-// ---------------------------------------------------------------------------
-void CATNetworkInfo::ConstructL()
-	{
-	CAtCommandBase::ConstructL();
-	iGetHomeNwk = EFalse;
-	iAtType = ELtsyAT_Phone_NwkInfo;
-	}
-// ---------------------------------------------------------------------------
-// CATNetworkInfo::~CATNetworkInfo
-// other items were commented in a header
-// ---------------------------------------------------------------------------
-CATNetworkInfo::~CATNetworkInfo()
-	{
-	}
-// ---------------------------------------------------------------------------
-// CATNetworkInfo::StartRequestL
-// other items were commented in a header
-// ---------------------------------------------------------------------------
-void CATNetworkInfo::StartRequest()
-	{
-	ExecuteCommand();
-	}
-// ---------------------------------------------------------------------------
-// CATNetworkInfo::ExecuteCommand
-// other items were commented in a header
-// ---------------------------------------------------------------------------
-void CATNetworkInfo::ExecuteCommand( )
-	{
-	iTxBuffer.Copy(KGetCurrentNetworkInfoCommand);
-	Write();
-	}
-// ---------------------------------------------------------------------------
-// CATNetworkInfo::GetNetWorkInfo
-// other items were commented in a header
-// ---------------------------------------------------------------------------
-RMobilePhone::TMobilePhoneNetworkInfoV5 CATNetworkInfo:: GetNetWorkInfo()
-	{
-	return iNetworkInfo;
-	}
-// ---------------------------------------------------------------------------
-// CATNetworkInfo::GetErrorValue
-// other items were commented in a header
-// ---------------------------------------------------------------------------
-TInt CATNetworkInfo::GetErrorValue()
-	{
-	return iError;
-	}
-// ---------------------------------------------------------------------------
-// CATNetworkInfo::SetToGetHomeNwk
-// other items were commented in a header
-// ---------------------------------------------------------------------------
-void CATNetworkInfo::SetToGetHomeNwk()
-	{
-	iGetHomeNwk = ETrue;
-	}
-/**
- * This method parses the modems response to the 'AT+CGREG?' command.
- * An example response is '+CGREG: 0,1' where second value denotes the
- * current registration status.
- */
-// ---------------------------------------------------------------------------
-// CATNetworkInfo::ParseResponseL
-// other items were commented in a header
-// ---------------------------------------------------------------------------
-void CATNetworkInfo::ParseResponseL(const TDesC8& /*aResponseBuf*/)
-	{
-	if (CurrentLine().Match(KLtsyOkString) != 0)
-		{
-		iError = KErrGeneral;
-		return ;
-		}
-	RArray<TPtrC8> array;
-	CleanupClosePushL(array);
-	iParser->ParseRespondedBuffer(array,PrecedingLine());
-	TInt Count = array.Count();
-	if (Count < 1)
-		{
-		CleanupStack::PopAndDestroy();
-		iError = KErrNotFound;
-		return ;
-		}
-	
-	if( array[0].MatchF(KGetCurrentNetworkInfoResponse)==KErrNotFound)
-		{
-		CleanupStack::PopAndDestroy();
-		iError = KErrNotFound;
-		return ;
-		}
-	TInt val = 0;
-	TLex8 lex(array[1]);
-	lex.Val(val);
-	iPhoneGlobals.iPhoneStatus.iLocalNetworkSel.iMethod = RMobilePhone::TMobilePhoneSelectionMethod(val);
-	if(Count > 2)
-		{
-		TLex8 lex1(array[2]);
-		lex1.Val(iNameFormat);
-		switch (iNameFormat)
-			{
-			case 0:
-				if(array[3].Length() > iNetworkInfo.iLongName.MaxLength())
-					iNetworkInfo.iLongName.Copy(array[3].Mid(0,iNetworkInfo.iLongName.MaxLength()));			
-				else
-					iNetworkInfo.iLongName.Copy(array[3]);
-				break;
-			case 1:
-				if(array[2].Length() > iNetworkInfo.iShortName.MaxLength())
-					iNetworkInfo.iShortName.Copy(array[3].Mid(0,iNetworkInfo.iShortName.MaxLength()));			
-				else 
-					iNetworkInfo.iShortName.Copy(array[3]);	
-				break;
-			case 2:
-				/*if(array[2].Length() > iNetworkInfo.iShortName.MaxLength())
-					iNetworkInfo.iShortName.Copy(array[3].Mid(0,iNetworkInfo.iShortName.MaxLength()));			
-				else 
-					iNetworkInfo.iShortName.Copy(array[3]);*/	
-				User::LeaveIfError(NetworkIdL(array[3],iNetworkInfo.iCountryCode, iNetworkInfo.iNetworkId));
-				break;
-			default:
-				User::Leave(KErrGeneral);
-				break;
-				}
-		}
-	else
-		{
-		iError = KErrGeneral;
-		}
-	iNetworkInfo.iStatus=RMobilePhone::ENetworkStatusCurrent;
-	CleanupStack::PopAndDestroy();
-	iError = KErrNone;
-	}
-// ---------------------------------------------------------------------------
-// CATNetworkInfo::EventSignal
-// other items were commented in a header
-// ---------------------------------------------------------------------------
-void CATNetworkInfo::EventSignal(TAtEventSource aEventSource, TInt aStatus)
-	{
-	if(KErrNone ==aStatus)
-		{
-		if(aEventSource == EReadCompletion)
-			{
-			aStatus = iError;
-			}
-		else
-			return;
-		}
-	iPhoneGlobals.iPhoneStatus.iCurrentNetwork = iNetworkInfo;
-	if(iGetHomeNwk)
-		{
-		iCtsyDispatcherCallback.CallbackPhoneGetHomeNetworkComp(aStatus,iNetworkInfo);
-		}
-	else
-		{
-		iCtsyDispatcherCallback.CallbackPhoneGetCurrentNetworkInfoComp(aStatus,
-								iNetworkInfo, 
-								iPhoneGlobals.iPhoneStatus.iLocationArea);
-		}
-	CAtCommandBase::Complete();
-	iPhoneGlobals.iEventSignalActive = EFalse;
-	}
-//
-// End of file
-
-
-
-
-