mmappcomponents/mmmtpdataprovider/mmmtpdprequestprocessor/src/cgetobjectpropvalue.cpp
changeset 35 2ee890d2f7e7
parent 32 edd273b3192a
child 48 b7b49303d0c0
equal deleted inserted replaced
32:edd273b3192a 35:2ee890d2f7e7
    93             {
    93             {
    94             PRINT(_L("MM MTP <> CGetObjectPropValue::CheckRequestL, objectInfo is NULL"));
    94             PRINT(_L("MM MTP <> CGetObjectPropValue::CheckRequestL, objectInfo is NULL"));
    95             return EMTPRespCodeInvalidObjectHandle;
    95             return EMTPRespCodeInvalidObjectHandle;
    96             }
    96             }
    97 
    97 
    98         TFileName fileName = objectInfo->DesC( CMTPObjectMetaData::ESuid );
       
    99         TUint32 formatCode = objectInfo->Uint( CMTPObjectMetaData::EFormatCode );
    98         TUint32 formatCode = objectInfo->Uint( CMTPObjectMetaData::EFormatCode );
   100 
    99 
   101         PRINT3( _L( "MM MTP <> CGetObjectPropValue::CheckRequestL, handle = 0x%x, filename = %S, formatCode = 0x%x" ), objectHandle, &fileName, formatCode);
   100         PRINT3( _L( "MM MTP <> CGetObjectPropValue::CheckRequestL, handle = 0x%x, filename = %S, formatCode = 0x%x" ),
       
   101             objectHandle, 
       
   102             &( objectInfo->DesC( CMTPObjectMetaData::ESuid ) ),
       
   103             formatCode );
       
   104 
   102         const RArray<TUint>* properties = iDpConfig.GetSupportedPropertiesL( formatCode );
   105         const RArray<TUint>* properties = iDpConfig.GetSupportedPropertiesL( formatCode );
   103         TInt count = properties->Count();
   106         TInt count = properties->Count();
   104 
   107 
   105         TUint32 propCode = Request().Uint32( TMTPTypeRequest::ERequestParameter2 );
   108         TUint32 propCode = Request().Uint32( TMTPTypeRequest::ERequestParameter2 );
   106         PRINT1( _L( "MM MTP <> CGetObjectPropValue::CheckRequestL propCode = 0x%x" ), propCode );
   109         PRINT1( _L( "MM MTP <> CGetObjectPropValue::CheckRequestL propCode = 0x%x" ), propCode );
   128 //
   131 //
   129 EXPORT_C void CGetObjectPropValue::ServiceL()
   132 EXPORT_C void CGetObjectPropValue::ServiceL()
   130     {
   133     {
   131     PRINT( _L( "MM MTP => CGetObjectPropValue::ServiceL" ) );
   134     PRINT( _L( "MM MTP => CGetObjectPropValue::ServiceL" ) );
   132     
   135     
   133     MmMtpDpUtility::SetPSStatus(EMtpPSStatusActive);
   136     MmMtpDpUtility::SetPSStatus( EMtpPSStatusActive );
   134 
   137 
   135     //Get the request information
   138     //Get the request information
   136     TUint32 objectHandle = Request().Uint32( TMTPTypeRequest::ERequestParameter1 );
   139     TUint32 objectHandle = Request().Uint32( TMTPTypeRequest::ERequestParameter1 );
   137     TUint32 propCode = Request().Uint32( TMTPTypeRequest::ERequestParameter2 );
   140     TUint32 propCode = Request().Uint32( TMTPTypeRequest::ERequestParameter2 );
   138     PRINT2( _L( "MM MTP <> CGetObjectPropValue::ServiceL objectHandle = 0x%x, propCode = 0x%x" ),
   141     PRINT2( _L( "MM MTP <> CGetObjectPropValue::ServiceL objectHandle = 0x%x, propCode = 0x%x" ),
   140 
   143 
   141     // don't have the ownship of the object
   144     // don't have the ownship of the object
   142     iObjectInfo = iRequestChecker->GetObjectInfo( objectHandle );
   145     iObjectInfo = iRequestChecker->GetObjectInfo( objectHandle );
   143     TPtrC suid( iObjectInfo->DesC( CMTPObjectMetaData::ESuid ) );
   146     TPtrC suid( iObjectInfo->DesC( CMTPObjectMetaData::ESuid ) );
   144     PRINT1( _L( "MM MTP <> CGetObjectPropValue::ServiceL object file name is %S" ), &suid );
   147     PRINT1( _L( "MM MTP <> CGetObjectPropValue::ServiceL object file name is %S" ), &suid );
   145     TParsePtrC parse( suid );
       
   146 
   148 
   147     if ( iMTPTypeString != NULL )
   149     if ( iMTPTypeString != NULL )
   148         {
   150         {
   149         delete iMTPTypeString;
   151         delete iMTPTypeString;
   150         iMTPTypeString = NULL;
   152         iMTPTypeString = NULL;
   175 
   177 
   176         // ProtectionStatus
   178         // ProtectionStatus
   177         case EMTPObjectPropCodeProtectionStatus:
   179         case EMTPObjectPropCodeProtectionStatus:
   178             {
   180             {
   179             iMTPTypeUint16.Set( 0 );
   181             iMTPTypeUint16.Set( 0 );
   180             iMTPTypeUint16 = MmMtpDpUtility::GetProtectionStatusL( iFramework.Fs(),
   182             iMTPTypeUint16 = MmMtpDpUtility::GetProtectionStatusL( iFramework.Fs(), suid );
   181                 iObjectInfo->DesC( CMTPObjectMetaData::ESuid ) );
       
   182             SendDataL( iMTPTypeUint16 );
   183             SendDataL( iMTPTypeUint16 );
   183             }
   184             }
   184             break;
   185             break;
   185 
   186 
   186         // Object Size
   187         // Object Size
   187         case EMTPObjectPropCodeObjectSize:
   188         case EMTPObjectPropCodeObjectSize:
   188             {
   189             {
   189             iMTPTypeUint64.Set( 0 );
   190             iMTPTypeUint64.Set( 0 );
   190             iMTPTypeUint64 = MmMtpDpUtility::GetObjectSizeL( iFramework.Fs(),
   191             iMTPTypeUint64 = MmMtpDpUtility::GetObjectSizeL( iFramework.Fs(), suid );
   191                     iObjectInfo->DesC( CMTPObjectMetaData::ESuid ) );
       
   192             SendDataL( iMTPTypeUint64 );
   192             SendDataL( iMTPTypeUint64 );
   193             }
   193             }
   194             break;
   194             break;
   195 
   195 
   196         // Filename
   196         // Filename
   197         case EMTPObjectPropCodeObjectFileName:
   197         case EMTPObjectPropCodeObjectFileName:
   198             {
   198             {
   199             const TDesC& suid( iObjectInfo->DesC( CMTPObjectMetaData::ESuid ) );
   199             TParsePtrC parse( suid );
   200             PRINT1( _L( "MM MTP <> CGetObjectPropValue::ServiceL SUID = %S" ), &suid );
       
   201 
       
   202             TPtrC path( suid.Ptr(), suid.Length() );
       
   203             TParsePtrC parse( path );
       
   204             iMTPTypeString = CMTPTypeString::NewL( parse.NameAndExt() );
   200             iMTPTypeString = CMTPTypeString::NewL( parse.NameAndExt() );
   205             SendDataL( *iMTPTypeString );
   201             SendDataL( *iMTPTypeString );
   206             }
   202             }
   207             break;
   203             break;
   208 
   204 
   236         //lint -fallthrough
   232         //lint -fallthrough
   237         case EMTPObjectPropCodeDateCreated:
   233         case EMTPObjectPropCodeDateCreated:
   238         case EMTPObjectPropCodeDateModified:
   234         case EMTPObjectPropCodeDateModified:
   239             {
   235             {
   240             TBuf<KMtpMaxDateTimeStringLength> timeStr;
   236             TBuf<KMtpMaxDateTimeStringLength> timeStr;
   241             MmMtpDpUtility::GetObjectDateModifiedL( iFramework.Fs(),
   237             MmMtpDpUtility::GetObjectDateModifiedL( iFramework.Fs(), suid, timeStr );
   242                 iObjectInfo->DesC( CMTPObjectMetaData::ESuid ),
       
   243                 timeStr );
       
   244 
   238 
   245             PRINT1( _L( "MM MTP <> CGetObjectPropValue::ServiceL Date time %S" ), &timeStr );
   239             PRINT1( _L( "MM MTP <> CGetObjectPropValue::ServiceL Date time %S" ), &timeStr );
   246             iMTPTypeString = CMTPTypeString::NewL( timeStr );
   240             iMTPTypeString = CMTPTypeString::NewL( timeStr );
   247             SendDataL( *iMTPTypeString );
   241             SendDataL( *iMTPTypeString );
   248             }
   242             }