telephonyserverplugins/attestltsy/atcommand/pktservice/src/atgprsntwkregstatus.cpp
author Tom Pritchard <tomp@symbian.org>
Tue, 09 Feb 2010 12:31:43 +0000
branchAT_Test_LTSY
changeset 1 4047d69ee0e4
permissions -rw-r--r--
Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
     1
// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
     2
// All rights reserved.
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
     3
// This component and the accompanying materials are made available
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
     4
// under the terms of "Eclipse Public License v1.0"
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
     5
// which accompanies this distribution, and is available
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
     6
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
     7
//
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
     8
// Initial Contributors:
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
     9
// Nokia Corporation - initial contribution.
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    10
//
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    11
// Contributors:
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    12
//
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    13
// Description:
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    14
// The set command controls the presentation of an unsolicited result code +CGREG:
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    15
// <stat> when <n>=1 and there is a change in the MT's GPRS network registration
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    16
// status, or code +CGREG: <stat>[,<lac>,<ci>] when <n>=2 and there is a change of the
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    17
// network cell.
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    18
// The read command returns the status of result code presentation and an integer <stat>
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    19
// which shows whether the network has currently indicated the registration of the MT.
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    20
// Location information elements <lac> and <ci> are returned only when <n>=2 and MT
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    21
// is registered in the network.
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    22
// Defined values
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    23
// <n>:
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    24
//  0 disable network registration unsolicited result code
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    25
//  1 enable network registration unsolicited result code +CGREG: <stat>
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    26
//  2 enable network registration and location information unsolicited result code
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    27
// +CGREG: <stat>[,<lac>,<ci>]
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    28
// <stat>:
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    29
//  0 not registered, ME is not currently searching a new operator to register to
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    30
//  1 registered, home network
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    31
//  2 not registered, but ME is currently searching a new operator to register to
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    32
//  3 registration denied
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    33
//  4 unknown
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    34
//  5 registered, roaming
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    35
// <lac>:
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    36
//  string type; two byte location area code in hexadecimal format.
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    37
// <ci>:
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    38
//  string type; two byte cell ID in hexadecimal format
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    39
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    40
#include "atgprsntwkregstatus.h"		// Header file for this source file
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    41
#include "mslogger.h"				// For LOGTEXT macros
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    42
#include "atgprsntwkregstatuschange.h"	
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    43
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    44
_LIT8(KATGprsNtwkRegStatusCommand, "AT+CGREG?\r");
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    45
_LIT8(KATGetGprsNetworkRegResponse,"+CGREG:");
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    46
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    47
// ---------------------------------------------------------------------------
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    48
// CATGprsNtwkRegStatus::NewL
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    49
// other items were commented in a header
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    50
// ---------------------------------------------------------------------------
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    51
CATGprsNtwkRegStatus* CATGprsNtwkRegStatus::NewL(CGlobalPhonemanager& aGloblePhone, 
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    52
                                                 CCtsyDispatcherCallback& aCtsyDispatcherCallback,
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    53
                                                 CATGprsNtwkRegStatusChange& aNtwkRegStatusChange)
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    54
	{
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    55
	CATGprsNtwkRegStatus* self = new(ELeave) CATGprsNtwkRegStatus(aGloblePhone,
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    56
			                                                      aCtsyDispatcherCallback,
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    57
			                                                      aNtwkRegStatusChange);
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    58
	CleanupStack::PushL(self );
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    59
	self->ConstructL();
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    60
	CleanupStack::Pop(self );
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    61
	return self ;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    62
	}
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    63
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    64
// ---------------------------------------------------------------------------
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    65
// CATGprsNtwkRegStatus::CATGprsNtwkRegStatus
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    66
// other items were commented in a header
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    67
// ---------------------------------------------------------------------------
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    68
CATGprsNtwkRegStatus::CATGprsNtwkRegStatus(CGlobalPhonemanager& aGloblePhone, 
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    69
                                           CCtsyDispatcherCallback& aCtsyDispatcherCallback,
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    70
                                           CATGprsNtwkRegStatusChange& aNtwkRegStatusChange)
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    71
		:CAtCommandBase(aGloblePhone,aCtsyDispatcherCallback),
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    72
		iNtwkRegStatusChange(aNtwkRegStatusChange)
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    73
	{
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    74
	}
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    75
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    76
// ---------------------------------------------------------------------------
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    77
// CATGprsNtwkRegStatus::ConstructL
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    78
// other items were commented in a header
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    79
// ---------------------------------------------------------------------------
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    80
void CATGprsNtwkRegStatus::ConstructL()
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    81
	{
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    82
	CAtCommandBase::ConstructL();
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    83
	}
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    84
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    85
// ---------------------------------------------------------------------------
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    86
// CATGprsNtwkRegStatus::~CATGprsNtwkRegStatus
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    87
// other items were commented in a header
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    88
// ---------------------------------------------------------------------------
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    89
CATGprsNtwkRegStatus::~CATGprsNtwkRegStatus()
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    90
	{
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    91
	}
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    92
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    93
// ---------------------------------------------------------------------------
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    94
// CATGprsNtwkRegStatus::StartRequestL
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    95
// other items were commented in a header
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    96
// ---------------------------------------------------------------------------
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    97
void CATGprsNtwkRegStatus::StartRequest()
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    98
	{
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
    99
	iNtwkRegStatusChange.Disable();
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   100
	ExecuteCommand();
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   101
	}
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   102
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   103
// ---------------------------------------------------------------------------
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   104
// CATGprsNtwkRegStatus::ExecuteCommand
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   105
// other items were commented in a header
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   106
// ---------------------------------------------------------------------------
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   107
void CATGprsNtwkRegStatus::ExecuteCommand()
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   108
	{
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   109
	iTxBuffer.Copy(KATGprsNtwkRegStatusCommand);
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   110
	Write();
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   111
	}
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   112
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   113
// ---------------------------------------------------------------------------
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   114
// CATGprsNtwkRegStatus::ParseResponseL
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   115
// other items were commented in a header
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   116
//
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   117
// ---------------------------------------------------------------------------
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   118
void CATGprsNtwkRegStatus::ParseResponseL(const TDesC8& /*aResponseBuf*/)
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   119
	{
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   120
	if (CurrentLine().Match(KLtsyOkString) != 0)
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   121
		{
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   122
		iError = KErrGeneral;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   123
		return;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   124
		}
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   125
	RArray<TPtrC8> array;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   126
	CleanupClosePushL(array);
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   127
	iParser->ParseRespondedBuffer(array,PrecedingLine());
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   128
	TInt Count = array.Count();
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   129
	if (Count < 1)
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   130
		{
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   131
		CleanupStack::PopAndDestroy();
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   132
		iError = KErrGeneral;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   133
		return ;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   134
		}
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   135
	if( array[0].MatchF(KATGetGprsNetworkRegResponse)==KErrNotFound)
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   136
		{
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   137
		CleanupStack::PopAndDestroy();
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   138
		iError = KErrGeneral;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   139
		return ;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   140
		}
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   141
	
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   142
	// Skip over one parameter
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   143
	TInt val = 0;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   144
	TLex8 lex(array[2]);
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   145
	lex.Val(val);
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   146
	// Convert scond value to equivalent EtelMM enum
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   147
	switch(val)
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   148
		{
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   149
	case 0:		// ETSI value as defined in ETSI 07.07 section 10.1.14
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   150
		iGprsRegistrationStatus = RPacketService::ENotRegisteredNotSearching;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   151
		break;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   152
	case 1:		// ETSI value as defined in ETSI 07.07 section 10.1.14
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   153
		iGprsRegistrationStatus=RPacketService::ERegisteredOnHomeNetwork;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   154
		break;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   155
	case 2:		// ETSI value as defined in ETSI 07.07 section 10.1.14
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   156
		iGprsRegistrationStatus=RPacketService::ENotRegisteredSearching;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   157
		break;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   158
	case 3:		// ETSI value as defined in ETSI 07.07 section 10.1.14
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   159
		iGprsRegistrationStatus=RPacketService::ERegistrationDenied;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   160
		break;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   161
	case 4:		// ETSI value as defined in ETSI 07.07 section 10.1.14
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   162
		iGprsRegistrationStatus=RPacketService::EUnknown;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   163
		break;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   164
	case 5:		// ETSI value as defined in ETSI 07.07 section 10.1.14
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   165
		iGprsRegistrationStatus=RPacketService::ERegisteredRoaming;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   166
		break;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   167
	default:
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   168
		iGprsRegistrationStatus = RPacketService::EUnknown;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   169
		break;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   170
		}
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   171
	CleanupStack::PopAndDestroy(&array);
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   172
	iError = KErrNone;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   173
	} //ParseResponseL
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   174
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   175
// ---------------------------------------------------------------------------
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   176
// CATGprsNtwkRegStatus::EventSignal
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   177
// other items were commented in a header
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   178
// ---------------------------------------------------------------------------
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   179
void CATGprsNtwkRegStatus::EventSignal(TAtEventSource aEventSource, TInt aStatus)
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   180
	{
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   181
	if(KErrNone ==aStatus)
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   182
		{
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   183
		if(aEventSource == EReadCompletion)
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   184
			{
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   185
			aStatus = iError;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   186
			}
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   187
		else
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   188
			return;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   189
		}
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   190
	iCtsyDispatcherCallback.CallbackPacketServicesGetPacketNetworkRegistrationStatusComp(aStatus,
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   191
					        iGprsRegistrationStatus);
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   192
	iNtwkRegStatusChange.Enable();
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   193
	CAtCommandBase::Complete();
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   194
	iPhoneGlobals.iEventSignalActive = EFalse;
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   195
	}
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   196
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   197
// End of file
4047d69ee0e4 Initial upload of Nokia's AT based test LTSY which uses the dispatcher
Tom Pritchard <tomp@symbian.org>
parents:
diff changeset
   198