customization/DMUtils/src/nsmldmiapmatcher.cpp
changeset 18 7d11f9a6646f
parent 4 75a71fdb4c92
child 21 c707676bf59f
--- a/customization/DMUtils/src/nsmldmiapmatcher.cpp	Tue Feb 02 00:03:17 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,235 +0,0 @@
-/*
-* Copyright (c) 2005 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:  DM Tree module
-*
-*/
-
-
-// ------------------------------------------------------------------------------------------------
-// Includes
-// ------------------------------------------------------------------------------------------------
-
-#include <utf.h>
-#include "nsmldmiapmatcher.h"
-#include <smldmadapter.h>
-#include <featmgr.h>
-
-// ------------------------------------------------------------------------------------------------
-// CNSmlDMIAPMatcher* CNSmlDMIAPMatcher::NewL( MSmlDmCallback* aDmCallback )
-// ------------------------------------------------------------------------------------------------
-NSMLDMURI_EXPORT_C CNSmlDMIAPMatcher* CNSmlDMIAPMatcher::NewL( 
-	MSmlDmCallback* aDmCallback )
-    {
-    CNSmlDMIAPMatcher* self = CNSmlDMIAPMatcher::NewLC( aDmCallback );	
-    CleanupStack::Pop();
-    return self;
-    }
-
-// ------------------------------------------------------------------------------------------------
-// CNSmlDMIAPMatcher* CNSmlDMIAPMatcher::NewLC( MSmlDmCallback* aDmCallback )
-// ------------------------------------------------------------------------------------------------
-NSMLDMURI_EXPORT_C CNSmlDMIAPMatcher* CNSmlDMIAPMatcher::NewLC(
-	MSmlDmCallback* aDmCallback )
-    {
-    CNSmlDMIAPMatcher* self = new( ELeave ) CNSmlDMIAPMatcher;
-    CleanupStack::PushL( self );
-    self->ConstructL( aDmCallback );
-    return self;
-    }
-
-// ------------------------------------------------------------------------------------------------
-// void CNSmlDMIAPMatcher::ConstructL( MSmlDmCallback* aDmCallback )
-// ------------------------------------------------------------------------------------------------
-void CNSmlDMIAPMatcher::ConstructL( MSmlDmCallback* aDmCallback )
-    {
-    iCallback = aDmCallback;
-    FeatureManager::InitializeLibL();
-    iFeatMgrInitialized = ETrue;
-    }
-
-// ------------------------------------------------------------------------------------------------
-// CNSmlDMIAPMatcher::~CNSmlDMIAPMatcher()
-// ------------------------------------------------------------------------------------------------
-CNSmlDMIAPMatcher::~CNSmlDMIAPMatcher()
-    {
-    	if(iFeatMgrInitialized)
-    		{
-    			FeatureManager::UnInitializeLib();
-    		}
-    }
-
-// ------------------------------------------------------------------------------------------------
-// TInt CNSmlDMIAPMatcher::IAPIdFromURIL( const TDesC8& aURI )
-// ------------------------------------------------------------------------------------------------
-NSMLDMURI_EXPORT_C TInt CNSmlDMIAPMatcher::IAPIdFromURIL( const TDesC8& aURI )
-    {
-    TInt iapId(KErrNotFound);
-
-	MSmlDmAdapter::TError status;
-	CBufBase* allIAPs = CBufFlat::NewL(16);
-	CleanupStack::PushL(allIAPs);
-	iCallback->FetchLinkL( GetConRef(), *allIAPs, status );
-	TPtrC8 uri = RemoveDotSlash(aURI);
-
-    if( status == MSmlDmAdapter::EOk &&
-        uri.Find(GetConRef()) == 0 &&
-        allIAPs->Ptr(0).Find(LastURISeg(uri))>=0)
-        {
-        HBufC8* luid = iCallback->GetLuidAllocL( uri ); 
-
-        if ( luid->Length() )
-            {
-            iapId = DesToInt(*luid);
-            } 
-        delete luid;
-        }
-
-    CleanupStack::PopAndDestroy(allIAPs);
-    
-    return iapId;
-    }
-
-// ------------------------------------------------------------------------------------------------
-// HBufC8* CNSmlDMIAPMatcher::URIFromIAPIdL( TInt aIAPId )
-// ------------------------------------------------------------------------------------------------
-NSMLDMURI_EXPORT_C HBufC8* CNSmlDMIAPMatcher::URIFromIAPIdL( TInt aIAPId )
-    {
-    CBufBase *allIAPs = CBufFlat::NewL(16);
-	CleanupStack::PushL(allIAPs);
-    MSmlDmAdapter::TError status;
-
-    iCallback->FetchLinkL( GetConRef(), *allIAPs, status );
-
-    if ( status == MSmlDmAdapter::EOk )
-        {   
-        TInt index(0);
-        TInt segStart(0);
-
-        while ( index != KErrNotFound)
-            {                
-            TPtrC8 allIAPsptr = allIAPs->Ptr(segStart).Mid(0);
-            index = allIAPsptr.Locate('/');
-            HBufC8* uriSeg = 0;
-
-            if ( index == KErrNotFound )
-                {
-                TPtrC8 uriSeg8Ptr = allIAPs->Ptr(segStart);
-                uriSeg = uriSeg8Ptr.AllocLC();
-                }
-            else
-                {
-                TPtrC8 uriSeg8Ptr = allIAPs->Ptr(segStart).Mid( 0, index );
-                uriSeg = uriSeg8Ptr.AllocLC();
-                }
-
-            HBufC8* uri = HBufC8::NewLC( GetConRef().Length() + 1 +
-            	uriSeg->Length() );
-            	
-			TPtr8 uriPtr = uri->Des();
-			uriPtr.Format( GetConRef());
-			uriPtr.Append( KNSmlDMSeparator8 );
-			uriPtr.Append( *uriSeg );
-			HBufC8* luid = iCallback->GetLuidAllocL( uriPtr );
-			CleanupStack::PushL(luid);
-
-			if ( luid->Length() > 0 )
-				{				
-				TInt iapId = DesToInt(luid->Des());
-				if ( iapId == aIAPId )
-					{
-		            CleanupStack::PopAndDestroy();  //luid
-		            CleanupStack::Pop();  //uri
-		            CleanupStack::PopAndDestroy(2);  //uriSeg, allIAPs
-		            return uri;
-					}
-				}
-            CleanupStack::PopAndDestroy(3); // luid, uri, uriSeg
-
-            segStart += index + 1;
-            }        
-        }
-
-    CleanupStack::PopAndDestroy(); // allIAPs
-
-    return 0;
-    }
-
-// ------------------------------------------------------------------------------------------------
-// TInt CNSmlDMIAPMatcher::DesToInt(const TDesC& aLuid)
-// ------------------------------------------------------------------------------------------------
-TInt CNSmlDMIAPMatcher::DesToInt(const TDesC8& aLuid) const
-	{
-	TLex8 lex(aLuid);
-	TInt value = 0;
-	lex.Val(value);
-	return value;
-	}
-
-// ------------------------------------------------------------------------------------------------
-// TPtrC8 CNSmlDMIAPMatcher::RemoveDotSlash(const TDesC8& aURI) const
-// ------------------------------------------------------------------------------------------------
-TPtrC8 CNSmlDMIAPMatcher::RemoveDotSlash(const TDesC8& aURI) const
-	{
-	if(aURI.Find(KNSmlDMIAPUriDotSlash)==0)
-		{
-		return aURI.Right( aURI.Length()-KNSmlDMIAPUriDotSlash().Length() );
-		}
-	else
-		{
-		return aURI;
-		}
-	}
-
-// ------------------------------------------------------------------------------------------------
-// CNSmlDMIAPMatcher::TPtrC8 LastURISeg(const TDesC8& aURI)
-// Returns only the last uri segemnt
-// ------------------------------------------------------------------------------------------------
-TPtrC8 CNSmlDMIAPMatcher::LastURISeg(const TDesC8& aURI) const
-	{
-	TInt i;
-	for(i=aURI.Length()-1;i>=0;i--)
-		{
-		if(aURI[i]==KNSmlDMSlash)
-			{
-			break;
-			}
-		}
-	if(i==0)
-		{
-		return aURI;
-		}
-	else
-		{
-		return aURI.Mid(i+1);
-		}
-	}
-	
-// ------------------------------------------------------------------------------------------------
-// CNSmlDMIAPMatcher::const TDesC8& GetConRef()
-// Returns the connection reference
-// ------------------------------------------------------------------------------------------------
-const TDesC8& CNSmlDMIAPMatcher::GetConRef()
-	{
-	if(FeatureManager::FeatureSupported(KFeatureIdFfDmConnmoAdapter))
-		{
-			return KNSmlDMConnMOIAPUri();
-		}
-	else
-		{
-			return KNSmlDMIAPUri();
-		}	
-  }	
-	
-
-