diff -r 000000000000 -r d0791faffa3f mtpfws/mtpfw/dataproviders/dputility/src/cmtpextensionmapping.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mtpfws/mtpfw/dataproviders/dputility/src/cmtpextensionmapping.cpp Tue Feb 02 01:11:40 2010 +0200 @@ -0,0 +1,122 @@ +// Copyright (c) 2007-2009 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: +// + +#include "cmtpextensionmapping.h" + +CMTPExtensionMapping* CMTPExtensionMapping::NewL(const TDesC& aExtension, TMTPFormatCode aFormatCode) + { + CMTPExtensionMapping* self = new (ELeave) CMTPExtensionMapping(aFormatCode); + CleanupStack::PushL(self); + self->ConstructL(aExtension,KNullDesC); + CleanupStack::Pop(self); + return self; + } + +CMTPExtensionMapping* CMTPExtensionMapping::NewL(const TDesC& aExtension, TMTPFormatCode aFormatCode,const TDesC& aMIMEType) + { + CMTPExtensionMapping* self = new (ELeave) CMTPExtensionMapping(aFormatCode); + CleanupStack::PushL(self); + self->ConstructL(aExtension,aMIMEType); + CleanupStack::Pop(self); + return self; + } + +CMTPExtensionMapping::CMTPExtensionMapping(TMTPFormatCode aFormatCode) : + iFormatCode(aFormatCode) + { + } + +void CMTPExtensionMapping::ConstructL(const TDesC& aExtension,const TDesC& aMIMEType) + { + iExtension = aExtension.AllocL(); + iMIMEType = aMIMEType.AllocL(); + } + +CMTPExtensionMapping::~CMTPExtensionMapping() + { + delete iExtension; + delete iMIMEType; + } + +const TDesC& CMTPExtensionMapping::Extension() const + { + return *iExtension; + } + +const TDesC& CMTPExtensionMapping::MIMEType() const + { + return *iMIMEType; + } + +TMTPFormatCode CMTPExtensionMapping::FormatCode() const + { + return iFormatCode; + } + +TUint32 CMTPExtensionMapping::DpId() const + { + return iDpId; + } + +TUint CMTPExtensionMapping::EnumerationFlag() const + { + return iNeedFileDp; + } + +void CMTPExtensionMapping::SetExtensionL(const TDesC& aExtension) + { + delete iExtension; + iExtension = NULL; + + iExtension = aExtension.AllocL(); + } + +void CMTPExtensionMapping::SetMIMETypeL(const TDesC& aMIMEType) + { + delete iMIMEType; + iMIMEType = NULL; + + iMIMEType = aMIMEType.AllocL(); + } + +void CMTPExtensionMapping::SetDpId(const TUint32 aDpId) + { + iDpId = aDpId; + } + +void CMTPExtensionMapping::SetFormatCode(const TMTPFormatCode aFormatCode) + { + iFormatCode = aFormatCode; + } + +void CMTPExtensionMapping::SetEnumerationFlag(const TUint aNeedFileDp) + { + iNeedFileDp = aNeedFileDp; + } + +TInt CMTPExtensionMapping::Compare(const CMTPExtensionMapping& aFirst, const CMTPExtensionMapping& aSecond) + { + return (aFirst.Extension().CompareF(aSecond.Extension())); + } + +TInt CMTPExtensionMapping::ComparewithMIME(const CMTPExtensionMapping& aFirst, const CMTPExtensionMapping& aSecond) + { + TInt i = Compare(aFirst,aSecond); + if ( 0==i ) + { + return aFirst.MIMEType().CompareF(aSecond.MIMEType()); + } + return i; + }