--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/phoneengine/PhoneCntFinder/src/CPhoneRawMatchNumberExtractor.cpp Wed Sep 01 12:30:10 2010 +0100
@@ -0,0 +1,130 @@
+/*
+* 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: This class extracts phone number for comparsion.
+*
+*/
+
+
+// INCLUDES
+#include "CPhoneRawMatchNumberExtractor.h"
+#include "CPhoneCntNumberParser.h"
+#include <cntdb.h>
+
+#ifdef SYMBIAN_ENABLE_SPLIT_HEADERS
+#include <cntphonenumparser.h>
+#endif
+
+// CONSTANTS
+
+// DEPRECATED
+const TUint KPhCntExtractorExtraChar = '1'; // number makes no difference.
+
+// ============================ MEMBER FUNCTIONS ===============================
+
+// -----------------------------------------------------------------------------
+// CCntRawPhoneNumberExtractor::CCntRawPhoneNumberExtractor
+// C++ constructor can NOT contain any code, that
+// might leave.
+// -----------------------------------------------------------------------------
+//
+EXPORT_C CCntRawPhoneNumberExtractor::CCntRawPhoneNumberExtractor()
+: iKPhoneNumberExtraChar( KPhCntExtractorExtraChar )
+ {
+ }
+
+// Destructor
+CCntRawPhoneNumberExtractor::~CCntRawPhoneNumberExtractor()
+ {
+ delete iNumberParser;
+ }
+
+// -----------------------------------------------------------------------------
+// CCntRawPhoneNumberExtractor::ConstructL
+// Symbian 2nd phase constructor can leave.
+// -----------------------------------------------------------------------------
+//
+void CCntRawPhoneNumberExtractor::ConstructL()
+ {
+ iNumberParser = CCntNumberParser::NewL();
+ iParser = iNumberParser->CntPhoneNumberParser();
+ }
+
+
+// -----------------------------------------------------------------------------
+// CCntRawPhoneNumberExtractor::Release
+//
+// Releases used memory
+// -----------------------------------------------------------------------------
+//
+void CCntRawPhoneNumberExtractor::Release()
+ {
+ delete this;
+ }
+
+
+// -----------------------------------------------------------------------------
+// CCntRawPhoneNumberExtractor::ExtractRawNumber
+//
+// DEPRECATED.
+// -----------------------------------------------------------------------------
+//
+TUint CCntRawPhoneNumberExtractor::ExtractRawNumber(
+ const TDesC& /*aTextualNumber*/)
+ {
+ __ASSERT_DEBUG( EFalse , User::Invariant() );
+ return 0;
+ }
+
+
+// -----------------------------------------------------------------------------
+// CCntRawPhoneNumberExtractor::ExtractRawNumber
+//
+// Does the actual extracting
+// -----------------------------------------------------------------------------
+//
+TUint CCntRawPhoneNumberExtractor::ExtractRawNumber(
+ const TDesC& aTextualNumber,
+ TDes& aRawNumber)
+ {
+ aRawNumber.Zero();
+ iParser->ExtractRawNumber( aTextualNumber , iMatchBuffer );
+ if ( iMatchBuffer.Length() == 0 )
+ {
+ return 0;
+ }
+
+ if ( iMatchBuffer.Length() > aRawNumber.MaxLength() )
+ {
+ aRawNumber = iMatchBuffer.Right( aRawNumber.MaxLength() );
+ }
+ else
+ {
+ aRawNumber = iMatchBuffer;
+ }
+ return 0;
+ }
+
+// -----------------------------------------------------------------------------
+// CCntRawPhoneNumberExtractor::ExtraChar() const
+//
+// DEPRECATED.
+// -----------------------------------------------------------------------------
+//
+TChar CCntRawPhoneNumberExtractor::ExtraChar() const
+ {
+ __ASSERT_DEBUG( EFalse , User::Invariant() );
+ return iKPhoneNumberExtraChar;
+ }
+
+// End of file