diff -r 000000000000 -r d0791faffa3f mtpfws/mtpfw/dataproviders/devdp/src/cmtpgetdevicepropvalue.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mtpfws/mtpfw/dataproviders/devdp/src/cmtpgetdevicepropvalue.cpp Tue Feb 02 01:11:40 2010 +0200 @@ -0,0 +1,253 @@ +// Copyright (c) 2006-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 +#include +#include +#include +#include +#include +#include "cmtpdevicedatastore.h" +#include "cmtpgetdevicepropvalue.h" +#include "mtpdevicedpconst.h" +#include "mtpdevdppanic.h" + +// Class constants. +__FLOG_STMT(_LIT8(KComponent,"GetDevicePropValue");) + +/** +Two-phase constructor. +@param aPlugin The data provider plugin +@param aFramework The data provider framework +@param aConnection The connection from which the request comes +@return a pointer to the created request processor object. +*/ +MMTPRequestProcessor* CMTPGetDevicePropValue::NewL(MMTPDataProviderFramework& aFramework, MMTPConnection& aConnection) + { + CMTPGetDevicePropValue* self = new (ELeave) CMTPGetDevicePropValue(aFramework, aConnection); + CleanupStack::PushL(self); + self->ConstructL(); + CleanupStack::Pop(self); + return self; + } + +/** +Destructor. +should not delete iMtpArray(ownership is belong to devicedatastore) +*/ +CMTPGetDevicePropValue::~CMTPGetDevicePropValue() + { + __FLOG(_L8("~CMTPGetDevicePropValue - Entry")); + delete iString; + delete iData; + //ownership of the iMtpArray pointer is belongs to devicedatastore so it should not + //deleted. + __FLOG(_L8("~CMTPGetDevicePropValue - Exit")); + __FLOG_CLOSE; + } + +/** +Constructor. +*/ +CMTPGetDevicePropValue::CMTPGetDevicePropValue(MMTPDataProviderFramework& aFramework, MMTPConnection& aConnection) : + CMTPGetDevicePropDesc(aFramework, aConnection) + { + + } + +/** +Second-phase constructor. +*/ +void CMTPGetDevicePropValue::ConstructL() + { + __FLOG_OPEN(KMTPSubsystem, KComponent); + __FLOG(_L8("ConstructL - Entry")); + CMTPGetDevicePropDesc::ConstructL(); + iString = CMTPTypeString::NewL(); + __FLOG(_L8("ConstructL - Exit")); + } + +/** +Services the battery level property. +*/ +void CMTPGetDevicePropValue::ServiceBatteryLevelL() + { + __FLOG(_L8("ServiceBatteryLevelL - Entry")); + iBatteryLevel.Set(iBatteryLevelValue); + SendDataL(iBatteryLevel); + __FLOG(_L8("ServiceBatteryLevelL - Exit")); + } + +/** +Services the device friendly name property. +*/ +void CMTPGetDevicePropValue::ServiceDeviceFriendlyNameL() + { + __FLOG(_L8("ServiceDeviceFriendlyNameL - Entry")); + iString->SetL(iDpSingletons.DeviceDataStore().DeviceFriendlyName()); + SendDataL(*iString); + __FLOG(_L8("ServiceDeviceFriendlyNameL - Exit")); + } + +/** +Services the synchronisation partner property. +*/ +void CMTPGetDevicePropValue::ServiceSynchronisationPartnerL() + { + __FLOG(_L8("ServiceSynchronisationPartnerL - Entry")); + iString->SetL(iDpSingletons.DeviceDataStore().SynchronisationPartner()); + SendDataL(*iString); + __FLOG(_L8("ServiceSynchronisationPartnerL - Exit")); + } + +/** +Services the ServiceSessionInitiatorVersionInfo property. +*/ +void CMTPGetDevicePropValue::ServiceSessionInitiatorVersionInfoL() + { + __FLOG(_L8("ServiceSessionInitiatorVersionInfo - Entry")); + iString->SetL(iDpSingletons.DeviceDataStore().SessionInitiatorVersionInfo()); + SendDataL(*iString); + __FLOG(_L8("ServiceSessionInitiatorVersionInfo - Exit")); + } + +/** +Services the ServicePerceivedDeviceType property. +*/ +void CMTPGetDevicePropValue::ServicePerceivedDeviceTypeL() + { + __FLOG(_L8("ServiceSessionInitiatorVersionInfo - Entry")); + iUint32.Set(iDpSingletons.DeviceDataStore().PerceivedDeviceType()); + SendDataL(iUint32); + __FLOG(_L8("ServiceSessionInitiatorVersionInfo - Exit")); + } + +/** +Services the Date time device property. +*/ +void CMTPGetDevicePropValue::ServiceDateTimeL() + { + __FLOG(_L8("ServiceDateTime - Entry")); + iString->SetL(iDpSingletons.DeviceDataStore().DateTimeL()); + SendDataL(*iString); + __FLOG(_L8("ServiceDateTime - Exit")); + } + +/** +Services the DiviceIcon property. +*/ +void CMTPGetDevicePropValue::ServiceDeviceIconL() + { + __FLOG(_L8("DeviceIcon - Entry")); + //iMtpArray is not owned by this class DO NOT DELET IT. + iMtpArray = &(iDpSingletons.DeviceDataStore().DeviceIcon()); + SendDataL(*iMtpArray); + __FLOG(_L8("DeviceIcon - Exit")); + } + +/** +Services the ServicePerceivedDeviceType property. +*/ +void CMTPGetDevicePropValue::ServiceSupportedFormatsOrderedL() + { + __FLOG(_L8("ServiceSessionInitiatorVersionInfo - Entry")); + iUint8.Set(GetFormatOrdered()); + SendDataL(iUint8); + __FLOG(_L8("ServiceSessionInitiatorVersionInfo - Exit")); + } + + void CMTPGetDevicePropValue::HandleExtnServiceL(TInt aPropCode, MExtnDevicePropDp* aExtnDevplugin) + { + MMTPType* mtptype = NULL; + aExtnDevplugin->GetDevPropertyL((TMTPDevicePropertyCode)aPropCode, &mtptype); + + if(NULL != mtptype) + { + SendDataL(*mtptype); + } + else + { + SendResponseL(EMTPRespCodeDevicePropNotSupported); + } + } + + /* + *Service Supported FuntionalID. + */ + void CMTPGetDevicePropValue::ServiceFunctionalIDL() + { + __FLOG(_L8("ServiceFuntionalIDL - Entry")); + + delete iData; + iData = GetGUIDL(MMTPFrameworkConfig::EDeviceCurrentFuncationalID); + + SendDataL(*iData); + __FLOG(_L8("ServiceFuntionalIDL - Exit")); + } + + /* + *Service Supported ModelID. + */ + void CMTPGetDevicePropValue::ServiceModelIDL() + { + __FLOG(_L8("ServiceModelIDL - Entry")); + + delete iData; + iData = GetGUIDL(MMTPFrameworkConfig::EDeviceCurrentModelID); + + SendDataL(*iData); + __FLOG(_L8("ServiceModelIDL - Exit")); + } + + /* + *Service Supported UseDeviceStage. + */ + void CMTPGetDevicePropValue::ServiceUseDeviceStageL() + { + __FLOG(_L8("ServiceUseDeviceStageL - Entry")); + iUint8.Set(1); + SendDataL(iUint8); + __FLOG(_L8("ServiceUseDeviceStageL - Exit")); + } + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +