telutils/phoneparser/src/CPhoneGsmSimControlParser.cpp
changeset 46 2fa1fa551b0b
parent 42 35488577e233
child 48 78df25012fda
--- a/telutils/phoneparser/src/CPhoneGsmSimControlParser.cpp	Mon Aug 23 15:50:31 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,369 +0,0 @@
-/*
-* Copyright (c) 2002 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:  Parser for SIM control procedures.
-*
-*/
-
-
-// INCLUDE FILES
-#include    "cphonegsmsimcontrolparser.h" 
-#include    "cphonegsmparserresult.h" 
-#include    "cphonegsmoptioncontainer.h" 
-
-// CONSTANTS
-_LIT( KPhoneSimControlPinChangeCode, "04" );
-_LIT( KPhoneSimControlPin2ChangeCode, "042" );
-_LIT( KPhoneSimControlPinUnblockCode, "05" );
-_LIT( KPhoneSimControlPin2UnblockCode, "052" );
-
-const TInt KPhoneSimControlPinMinLength = 4;
-const TInt KPhoneSimControlPinMaxLength = 8;
-const TInt KPhoneSimControlPukLength = 8;
-
-const TInt KPhoneSimControlAsterisk = '*';
-const TInt KPhoneSimControlHash = '#';
-
-// ============================ MEMBER FUNCTIONS ===============================
-
-// -----------------------------------------------------------------------------
-// CPhoneGsmSimControlParser::CPhoneGsmSimControlParser
-// -----------------------------------------------------------------------------
-//
-CPhoneGsmSimControlParser::CPhoneGsmSimControlParser()
-    {
-    }
-
-// -----------------------------------------------------------------------------
-// CPhoneGsmSimControlParser::NewLC
-// -----------------------------------------------------------------------------
-//
-CPhoneGsmSimControlParser* CPhoneGsmSimControlParser::NewLC()
-    {
-    CPhoneGsmSimControlParser* self = 
-        new ( ELeave ) CPhoneGsmSimControlParser;
-    
-    CleanupStack::PushL( self );
-    
-    return self;
-    }
-
-// -----------------------------------------------------------------------------
-// CPhoneGsmSimControlParser::ParseL
-// 
-// Parse sim control procedures.
-// -----------------------------------------------------------------------------
-//
-TBool CPhoneGsmSimControlParser::ParseL( 
-        const TDesC& aString,
-        CPhoneGsmParserResult& aResult,
-        CPhoneGsmOptionContainerBase& aOptions )
-    {
-    aResult.ClearL();    
-    
-    TBool sendOperation = aOptions.FindOptionStatus( KPhoneOptionSend );
-    TBool incall = aOptions.FindOptionStatus( KPhoneOptionInCall );
-
-    TBool result = DoParseL( aString, aResult, sendOperation, incall );
-
-    if ( !result )
-        {
-        aResult.ClearL();
-        }
-
-    return result;
-    }
-
-// -----------------------------------------------------------------------------
-// CPhoneGsmSimControlParser::DoParseL
-// 
-// Parse sim control procedures.
-// -----------------------------------------------------------------------------
-//
-TBool CPhoneGsmSimControlParser::DoParseL(
-        const TDesC& aString,
-        CPhoneGsmParserResult& aResult,
-        TBool aSendOperation,
-        TBool /*aInCall*/ )
-    {
-    TBool result = EFalse;
-    aResult.ClearL();
-
-    TLex input( aString );
-
-    if ( !aSendOperation )
-        {
-        result = HandlePinOperationsL( input, aResult );
-        }
-
-    return result;
-    }  
-
-// -----------------------------------------------------------------------------
-// CPhoneGsmSimControlParser::HandlePinOperationsL
-// -----------------------------------------------------------------------------
-//
-TBool CPhoneGsmSimControlParser::HandlePinOperationsL( 
-        TLex& aInput, 
-        CPhoneGsmParserResult& aResult )
-    {
-    TBool result = EFalse;
-    TLexMark start;
-    aInput.Mark( start );
-
-    if ( HandlePinPrefix( aInput, aResult ) )
-        {
-        TPtrC number( NextNumber( aInput ) );
-
-        if ( number == KPhoneSimControlPinChangeCode )
-            {
-            aResult.SetUid( KPhoneUidPinChange );
-            result = HandlePinChangeL( aInput, aResult );
-            }
-        else if ( number == KPhoneSimControlPin2ChangeCode )
-            {
-            aResult.SetUid( KPhoneUidPin2Change );
-            result = HandlePinChangeL( aInput, aResult );
-            }
-        else if ( number == KPhoneSimControlPinUnblockCode )
-            {
-            aResult.SetUid( KPhoneUidPinUnblock );
-            result = HandlePinUnblockL( aInput, aResult );
-            }
-        else if ( number == KPhoneSimControlPin2UnblockCode )
-            {
-            aResult.SetUid( KPhoneUidPin2Unblock );
-            result = HandlePinUnblockL( aInput, aResult );
-            }
-        }
-
-    if ( !result )
-        {
-        aResult.ClearL();
-        aInput.UnGetToMark( start );
-        }
-
-    return result;
-    }
-
-// -----------------------------------------------------------------------------
-// CPhoneGsmSimControlParser::HandlePinPrefix
-// -----------------------------------------------------------------------------
-//
-TBool CPhoneGsmSimControlParser::HandlePinPrefix( 
-        TLex& aInput,
-        CPhoneGsmParserResult& /*aResult*/ )
-    {
-    TBool result = ETrue;
-
-    TLexMark start;
-    aInput.Mark( start );
-
-    if ( aInput.Peek() != KPhoneSimControlAsterisk )
-        {
-        result = EFalse;
-        }
-    else
-        {
-        aInput.Inc();
-
-        if ( aInput.Peek() != KPhoneSimControlAsterisk )
-            {
-            result = EFalse;
-            }
-        else
-            {
-            aInput.Inc();
-            }
-        }
-
-    if ( !result )
-        {
-        aInput.UnGetToMark( start );
-        }
-
-    return result;
-    }
-
-// -----------------------------------------------------------------------------
-// CPhoneGsmSimControlParser::HandlePinChangeL
-// -----------------------------------------------------------------------------
-//
-TBool CPhoneGsmSimControlParser::HandlePinChangeL(
-        TLex& aInput,
-        CPhoneGsmParserResult& aResult )
-    {
-    TBool result = EFalse;
-    TLexMark start;
-    aInput.Mark( start );
-
-    result = HandlePinL( aInput, aResult );
-    result = result && HandlePinL( aInput, aResult );
-    result = result && HandlePinL( aInput, aResult );
-    result = result && HandleNoParameters( aInput, aResult );
-
-    if ( !result )
-        {
-        aInput.UnGetToMark( start );
-        }
-
-    return result;
-    }
-
-// -----------------------------------------------------------------------------
-// CPhoneGsmSimControlParser::HandlePinUnblockL
-// -----------------------------------------------------------------------------
-//
-TBool CPhoneGsmSimControlParser::HandlePinUnblockL(
-        TLex& aInput,
-        CPhoneGsmParserResult& aResult )
-    {
-    TBool result = EFalse;
-    TLexMark start;
-    aInput.Mark( start );
-
-    result = HandlePukL( aInput, aResult );
-    result = result && HandlePinL( aInput, aResult );
-    result = result && HandlePinL( aInput, aResult );
-    result = result && HandleNoParameters( aInput, aResult );
-
-    if ( !result )
-        {
-        aInput.UnGetToMark( start );
-        }
-
-    return result;
-    }
-
-// -----------------------------------------------------------------------------
-// CPhoneGsmSimControlParser::HandleNoParameters
-// -----------------------------------------------------------------------------
-//
-TBool CPhoneGsmSimControlParser::HandleNoParameters(
-        TLex& aInput,
-        CPhoneGsmParserResult& /*aResult*/ )
-    {
-    TBool result = EFalse;
-
-    if ( aInput.Remainder().Length() == 1 &&    // single character
-         aInput.Peek() == KPhoneSimControlHash )
-        {
-        result = ETrue;
-        aInput.Inc();
-        }
-
-    return result;
-    }
-
-// -----------------------------------------------------------------------------
-// CPhoneGsmSimControlParser::HandlePinL
-// -----------------------------------------------------------------------------
-//
-TBool CPhoneGsmSimControlParser::HandlePinL(
-        TLex& aInput,
-        CPhoneGsmParserResult& aResult )
-    {
-    return HandleParameterL(
-        aInput,
-        aResult,
-        CPhoneGsmSimControlParser::ValidatePin );
-    }
-
-// -----------------------------------------------------------------------------
-// CPhoneGsmSimControlParser::HandlePukL
-// -----------------------------------------------------------------------------
-//
-TBool CPhoneGsmSimControlParser::HandlePukL(
-        TLex& aInput, 
-        CPhoneGsmParserResult& aResult )
-    {
-    return HandleParameterL( 
-        aInput, 
-        aResult,
-        CPhoneGsmSimControlParser::ValidatePuk );
-    }
-
-// -----------------------------------------------------------------------------
-// CPhoneGsmSimControlParser::HandleParameterL
-// -----------------------------------------------------------------------------
-//
-TBool CPhoneGsmSimControlParser::HandleParameterL( 
-        TLex& aInput,
-        CPhoneGsmParserResult& aResult,
-        TParameterValidationFunction aFunc )
-    {
-    TBool result = EFalse;
-
-    TLexMark start;
-    aInput.Mark( start );
-
-    if ( aInput.Peek() == KPhoneSimControlAsterisk )
-        {
-        aInput.Inc();
-
-        TPtrC password( NextNumber( aInput ) );
-        
-        if ( aFunc( password ) )
-            {
-            aResult.AddParameterL( password );
-            result = ETrue;
-            }
-        }
-
-    if ( !result )
-        {
-        aInput.UnGetToMark( start );
-        }
-
-    return result;
-    }
-
-
-// -----------------------------------------------------------------------------
-// CPhoneGsmSimControlParser::NextNumber
-// -----------------------------------------------------------------------------
-//
-TPtrC CPhoneGsmSimControlParser::NextNumber( 
-        TLex& aInput )
-    {
-    TLexMark start;
-    aInput.Mark( start );
-    
-    while ( aInput.Peek().IsDigit() )
-        {
-        aInput.Inc();
-        }
-
-    return aInput.MarkedToken( start );
-    }
-
-// -----------------------------------------------------------------------------
-// CPhoneGsmSimControlParser::ValidatePin
-// -----------------------------------------------------------------------------
-//
-TBool CPhoneGsmSimControlParser::ValidatePin( const TDesC& aParam )
-    {
-    return ( aParam.Length() >= KPhoneSimControlPinMinLength ) &&
-           ( aParam.Length() <= KPhoneSimControlPinMaxLength );
-    }
-
-// -----------------------------------------------------------------------------
-// CPhoneGsmSimControlParser::ValidatePuk
-// -----------------------------------------------------------------------------
-//
-TBool CPhoneGsmSimControlParser::ValidatePuk( const TDesC& aParam )
-    {
-    return ( aParam.Length() == KPhoneSimControlPukLength );
-    }
-
-//  End of File