diff -r a05c44bc3c61 -r d881023c13eb mmappcomponents/mmmtpdataprovider/mmmtpdpplugins/mediamtpdataprovider/src/cmediamtpdataprovidercopyobject.cpp --- a/mmappcomponents/mmmtpdataprovider/mmmtpdpplugins/mediamtpdataprovider/src/cmediamtpdataprovidercopyobject.cpp Fri Apr 16 15:28:14 2010 +0300 +++ b/mmappcomponents/mmmtpdataprovider/mmmtpdpplugins/mediamtpdataprovider/src/cmediamtpdataprovidercopyobject.cpp Mon May 03 12:58:40 2010 +0300 @@ -16,7 +16,6 @@ */ -#include #include #include #include @@ -65,7 +64,7 @@ // CMediaMtpDataProviderCopyObject::~CMediaMtpDataProviderCopyObject() { - + // Do nothing } // ----------------------------------------------------------------------------- @@ -78,7 +77,7 @@ MMmMtpDpConfig& aDpConfig ) : CCopyObject( aFramework, aConnection, aDpConfig ) { - + // Do nothing } // ----------------------------------------------------------------------------- @@ -124,10 +123,6 @@ { iPropertyElement = &(iPropertyList->ReservePropElemL(aHandle, aPropCode)); iPropertyElement->SetStringL( CMTPTypeObjectPropListElement::EValue, textData->StringChars()); - -// iPropertyElement = CMTPTypeObjectPropListElement::NewL( aHandle, -// aPropCode, -// *textData ); } CleanupStack::PopAndDestroy( textData ); // - textData @@ -148,10 +143,6 @@ { iPropertyElement = &(iPropertyList->ReservePropElemL(aHandle, aPropCode)); iPropertyElement->SetArrayL( CMTPTypeObjectPropListElement::EValue, *desData); - -// iPropertyElement = CMTPTypeObjectPropListElement::NewL( aHandle, -// aPropCode, -// *desData ); } CleanupStack::PopAndDestroy( desData ); // - desData @@ -173,19 +164,13 @@ { iPropertyElement = &(iPropertyList->ReservePropElemL(aHandle, aPropCode)); iPropertyElement->SetUint16L( CMTPTypeObjectPropListElement::EValue, uint16.Value()); - -// iPropertyElement = CMTPTypeObjectPropListElement::NewL( aHandle, -// aPropCode, -// uint16 ); } - } break; case EMTPObjectPropCodeWidth: case EMTPObjectPropCodeHeight: case EMTPObjectPropCodeDuration: - case EMTPObjectPropCodeUseCount: case EMTPObjectPropCodeSampleRate: case EMTPObjectPropCodeAudioWAVECodec: case EMTPObjectPropCodeAudioBitRate: @@ -204,9 +189,6 @@ { iPropertyElement = &(iPropertyList->ReservePropElemL(aHandle, aPropCode)); iPropertyElement->SetUint32L( CMTPTypeObjectPropListElement::EValue, uint32.Value()); -// iPropertyElement = CMTPTypeObjectPropListElement::NewL( aHandle, -// aPropCode, -// uint32 ); } } break; @@ -220,14 +202,9 @@ if ( drmStatus == EMTPDrmStatusProtected ) result.Set( 1 ); - iPropertyElement = &(iPropertyList->ReservePropElemL(aHandle, aPropCode)); - iPropertyElement->SetUint16L( CMTPTypeObjectPropListElement::EDatatype, EMTPTypeUINT8); + iPropertyElement = &( iPropertyList->ReservePropElemL( aHandle, aPropCode ) ); + iPropertyElement->SetUint16L( CMTPTypeObjectPropListElement::EDatatype, EMTPTypeUINT8 ); iPropertyElement->SetUint8L( CMTPTypeObjectPropListElement::EValue, result.Value()); - -// iPropertyElement = CMTPTypeObjectPropListElement::NewL( aHandle, -// aPropCode, -// EMTPTypeUINT8, -// result ); } break; @@ -239,12 +216,9 @@ } // centralize logic to handle error, doing so, that's on need to trap the - // leave for KErrNotSupported in base class like previous version. - if ( ( err == KErrNotFound ) - || ( ( err == KErrNotSupported ) - && ( ( aObject.Uint( CMTPObjectMetaData::EFormatCode ) == EMTPFormatCodeASF ) - || ( aObject.Uint( CMTPObjectMetaData::EFormatCode ) == EMTPFormatCodeMP4Container ) - || ( aObject.Uint( CMTPObjectMetaData::EFormatCode ) == EMTPFormatCode3GPContainer ) ) ) ) + // Ignore all errors came from mpx db. + // It's enough that only file copied successfully no matter metadata got whatever failure. + if ( err != KErrNone ) { iPropertyElement = NULL; } @@ -255,121 +229,4 @@ PRINT( _L( "MM MTP <= CMediaMtpDataProviderCopyObject::ServiceSpecificObjectPropertyL" ) ); } -// ----------------------------------------------------------------------------- -// CMediaMtpDataProviderCopyObject::ServiceSetSpecificObjectPropertyL -// -// ----------------------------------------------------------------------------- -// -TMTPResponseCode CMediaMtpDataProviderCopyObject::ServiceSetSpecificObjectPropertyL( TUint16 aPropCode, const CMTPObjectMetaData& aObject, - const CMTPTypeObjectPropListElement& aElement ) - { - PRINT( _L( "MM MTP => CMediaMtpDataProviderCopyObject::ServiceSetSpecificObjectPropertyL" ) ); - TMTPResponseCode responseCode( EMTPRespCodeOK ); - - switch ( aPropCode ) - { - case EMTPObjectPropCodeArtist: - case EMTPObjectPropCodeGenre: - case EMTPObjectPropCodeComposer: - case EMTPObjectPropCodeOriginalReleaseDate: - case EMTPObjectPropCodeAlbumName: - case EMTPObjectPropCodeParentalRating: - case EMTPObjectPropCodeEncodingProfile: - { - CMTPTypeString* stringData = - CMTPTypeString::NewLC( aElement.StringL( CMTPTypeObjectPropListElement::EValue ) );// + stringData - - responseCode = ServiceMetaDataToWrapper( aPropCode, - *stringData, - aObject ); - - CleanupStack::PopAndDestroy( stringData ); // - stringData - } - break; - - case EMTPObjectPropCodeVideoBitRate: - { - responseCode = EMTPRespCodeAccessDenied; - } - break; - - case EMTPObjectPropCodeDescription: - { - CMTPTypeArray* desData = CMTPTypeArray::NewLC( EMTPTypeAUINT16 ); // + desData -// aElement.GetL( CMTPTypeObjectPropListElement::EValue, *desData ); - desData->SetByDesL(aElement.ArrayL(CMTPTypeObjectPropListElement::EValue)); - //desData(aElement.ArrayL(CMTPTypeObjectPropListElement::EValue)); - - responseCode = ServiceMetaDataToWrapper( aPropCode, - *desData, - aObject ); - CleanupStack::PopAndDestroy( desData ); // - desData - } - break; - - case EMTPObjectPropCodeWidth: - case EMTPObjectPropCodeHeight: - case EMTPObjectPropCodeDuration: - case EMTPObjectPropCodeUseCount: - case EMTPObjectPropCodeSampleRate: - case EMTPObjectPropCodeAudioWAVECodec: - case EMTPObjectPropCodeAudioBitRate: - case EMTPObjectPropCodeVideoFourCCCodec: - case EMTPObjectPropCodeFramesPerThousandSeconds: - case EMTPObjectPropCodeKeyFrameDistance: - { - TMTPTypeUint32 uint32( aElement.Uint32L( CMTPTypeObjectPropListElement::EValue ) ); - responseCode = ServiceMetaDataToWrapper( aPropCode, - uint32, - aObject ); - } - break; - - case EMTPObjectPropCodeTrack: - case EMTPObjectPropCodeNumberOfChannels: - case EMTPObjectPropCodeScanType: - case EMTPObjectPropCodeDRMStatus: - { - TMTPTypeUint16 uint16( aElement.Uint16L( CMTPTypeObjectPropListElement::EValue )); - responseCode = ServiceMetaDataToWrapper( aPropCode, - uint16, - aObject ); - } - break; - - case EMTPExtObjectPropCodeOmaDrmStatus: - { - TInt drmStatus = MmMtpDpUtility::GetDrmStatus( aObject.DesC( CMTPObjectMetaData::ESuid ) ); - - if (drmStatus == EMTPDrmStatusUnknown) - { - responseCode = EMTPRespCodeAccessDenied; - } - else - { - TMTPTypeUint8 newValue( aElement.Uint8L( CMTPTypeObjectPropListElement::EValue ) ); - - // there's no DB field to remember the value, so return an error - // if there's a mismatch to CAF protection status - if ( ( ( drmStatus == EMTPDrmStatusProtected) && ( newValue.Value() == 0 ) ) || - ( ( drmStatus == EMTPDrmStatusNotProtected ) && ( newValue.Value() == 1 ) ) ) - { - responseCode = EMTPRespCodeAccessDenied; - } - } - } - break; - - default: - { - User::Leave( KErrNotSupported ); - } - break; - } - - PRINT( _L( "MM MTP <= CMediaMtpDataProviderCopyObject::ServiceSetSpecificObjectPropertyL" ) ); - - return responseCode; - } - // end of file