applicationmanagement/server/src/nsmldmiapmatcher.cpp
changeset 18 7d11f9a6646f
parent 4 75a71fdb4c92
child 21 c707676bf59f
--- a/applicationmanagement/server/src/nsmldmiapmatcher.cpp	Tue Feb 02 00:03:17 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,202 +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
- *
- */
-
-#include "nsmldmiapmatcher.h"
-
-#include <utf.h>
-#include <smldmadapter.h>
-
-// -----------------------------------------------------------------------------
-// CNSmlDMIAPMatcher* CNSmlDMIAPMatcher::NewL( MSmlDmCallback* aDmCallback )
-// -----------------------------------------------------------------------------
-CNSmlDMIAPMatcher* CNSmlDMIAPMatcher::NewL(MSmlDmCallback* aDmCallback)
-    {
-    CNSmlDMIAPMatcher* self = CNSmlDMIAPMatcher::NewLC(aDmCallback);
-    CleanupStack::Pop();
-    return self;
-    }
-
-// -----------------------------------------------------------------------------
-// CNSmlDMIAPMatcher* CNSmlDMIAPMatcher::NewLC( MSmlDmCallback* aDmCallback )
-// -----------------------------------------------------------------------------
-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;
-    }
-
-// -----------------------------------------------------------------------------
-// CNSmlDMIAPMatcher::~CNSmlDMIAPMatcher()
-// -----------------------------------------------------------------------------
-CNSmlDMIAPMatcher::~CNSmlDMIAPMatcher()
-    {
-    }
-
-// -----------------------------------------------------------------------------
-// TInt CNSmlDMIAPMatcher::IAPIdFromURIL( const TDesC8& aURI )
-// -----------------------------------------------------------------------------
-TInt CNSmlDMIAPMatcher::IAPIdFromURIL(const TDesC8& aURI)
-    {
-    TInt iapId(KErrNotFound);
-
-    MSmlDmAdapter::TError status;
-    CBufBase* allIAPs = CBufFlat::NewL(16);
-    CleanupStack::PushL(allIAPs);
-    iCallback->FetchLinkL(KNSmlDMIAPUri, *allIAPs, status);
-    TPtrC8 uri = RemoveDotSlash(aURI);
-
-    if (status == MSmlDmAdapter::EOk && uri.Find(KNSmlDMIAPUri) == 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 )
-// -----------------------------------------------------------------------------
-HBufC8* CNSmlDMIAPMatcher::URIFromIAPIdL(TInt aIAPId)
-    {
-    CBufBase *allIAPs = CBufFlat::NewL(16);
-    CleanupStack::PushL(allIAPs);
-    MSmlDmAdapter::TError status;
-
-    iCallback->FetchLinkL(KNSmlDMIAPUri, *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(KNSmlDMIAPUri().Length() + 1 + uriSeg->Length() );
-
-            TPtr8 uriPtr = uri->Des();
-            uriPtr.Format(KNSmlDMIAPUri);
-            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);
-        }
-    }
-