mmappcomponents/mmmtpdataprovider/mmmtpdpplugins/abstractmediamtpdataprovider/src/cabstractmediamtpdataprovidersetobjectpropvalue.cpp
changeset 25 d881023c13eb
parent 0 a2952bb97e68
equal deleted inserted replaced
21:a05c44bc3c61 25:d881023c13eb
    13 *
    13 *
    14 * Description:  Implement opeartion setobjectpropvalue
    14 * Description:  Implement opeartion setobjectpropvalue
    15 *
    15 *
    16 */
    16 */
    17 
    17 
       
    18 
       
    19 #include <mtp/cmtptypearray.h>
    18 
    20 
    19 #include "cabstractmediamtpdataprovidersetobjectpropvalue.h"
    21 #include "cabstractmediamtpdataprovidersetobjectpropvalue.h"
    20 #include "abstractmediamtpdataproviderconst.h"
    22 #include "abstractmediamtpdataproviderconst.h"
    21 #include "mmmtpdplogger.h"
    23 #include "mmmtpdplogger.h"
    22 #include "mmmtpdpdefs.h"
    24 #include "mmmtpdpdefs.h"
    47 // Two-phase construction method
    49 // Two-phase construction method
    48 // -----------------------------------------------------------------------------
    50 // -----------------------------------------------------------------------------
    49 //
    51 //
    50 void CAbstractMediaMtpDataProviderSetObjectPropValue::ConstructL()
    52 void CAbstractMediaMtpDataProviderSetObjectPropValue::ConstructL()
    51     {
    53     {
    52 
    54     // Do nothing
    53     }
    55     }
    54 
    56 
    55 // -----------------------------------------------------------------------------
    57 // -----------------------------------------------------------------------------
    56 // CAbstractMediaMtpDataProviderSetObjectPropValue::CAbstractMediaMtpDataProviderSetObjectPropValue
    58 // CAbstractMediaMtpDataProviderSetObjectPropValue::CAbstractMediaMtpDataProviderSetObjectPropValue
    57 // Standard c++ constructor
    59 // Standard c++ constructor
    58 // -----------------------------------------------------------------------------
    60 // -----------------------------------------------------------------------------
    59 //
    61 //
    60 CAbstractMediaMtpDataProviderSetObjectPropValue::CAbstractMediaMtpDataProviderSetObjectPropValue( MMTPDataProviderFramework& aFramework,
    62 CAbstractMediaMtpDataProviderSetObjectPropValue::CAbstractMediaMtpDataProviderSetObjectPropValue( MMTPDataProviderFramework& aFramework,
    61     MMTPConnection& aConnection,
    63     MMTPConnection& aConnection,
    62     MMmMtpDpConfig& aDpConfig ) :
    64     MMmMtpDpConfig& aDpConfig ) :
    63     CSetObjectPropValue( aFramework, aConnection, aDpConfig )
    65         CSetObjectPropValue( aFramework, aConnection, aDpConfig )
    64     {
    66     {
    65 
    67     // Do nothing
    66     }
    68     }
    67 
    69 
    68 // -----------------------------------------------------------------------------
    70 // -----------------------------------------------------------------------------
    69 // CAbstractMediaMtpDataProviderSetObjectPropValue::~CAbstractMediaMtpDataProviderSetObjectPropValue
    71 // CAbstractMediaMtpDataProviderSetObjectPropValue::~CAbstractMediaMtpDataProviderSetObjectPropValue
    70 // Destructor
    72 // Destructor
    71 // -----------------------------------------------------------------------------
    73 // -----------------------------------------------------------------------------
    72 //
    74 //
    73 CAbstractMediaMtpDataProviderSetObjectPropValue::~CAbstractMediaMtpDataProviderSetObjectPropValue()
    75 CAbstractMediaMtpDataProviderSetObjectPropValue::~CAbstractMediaMtpDataProviderSetObjectPropValue()
    74     {
    76     {
    75 
    77     // Do nothing
    76     }
    78     }
    77 
    79 
    78 // -----------------------------------------------------------------------------
    80 // -----------------------------------------------------------------------------
    79 // CAbstractMediaMtpDataProviderSetObjectPropValue::IsSpecificPropCodeReadOnly
    81 // CAbstractMediaMtpDataProviderSetObjectPropValue::IsSpecificPropCodeReadOnly
    80 // no need to do anything here, just leave, as this should never be invoked or
    82 // no need to do anything here, just leave, as this should never be invoked or
    81 // invalid propcode
    83 // invalid propcode
    82 // -----------------------------------------------------------------------------
    84 // -----------------------------------------------------------------------------
    83 //
    85 //
    84 TBool CAbstractMediaMtpDataProviderSetObjectPropValue::IsSpecificPropCodeReadOnly( TUint16 /*aPropCode*/ ) const
    86 TBool CAbstractMediaMtpDataProviderSetObjectPropValue::IsSpecificPropCodeReadOnly( TUint16 aPropCode ) const
    85     {
    87     {
    86     return EFalse;
    88     TBool ret = EFalse;
       
    89     switch ( aPropCode )
       
    90         {
       
    91         case EMTPObjectPropCodeRepresentativeSampleFormat:
       
    92         case EMTPObjectPropCodeRepresentativeSampleSize:
       
    93         case EMTPObjectPropCodeRepresentativeSampleHeight:
       
    94         case EMTPObjectPropCodeRepresentativeSampleWidth:
       
    95             ret = ETrue;
       
    96             break;
       
    97         default:
       
    98             ret = EFalse;
       
    99             break;
       
   100         }
       
   101     return ret;
    87     }
   102     }
    88 
   103 
    89 // -----------------------------------------------------------------------------
   104 // -----------------------------------------------------------------------------
    90 // CAbstractMediaMtpDataProviderSetObjectPropValue::ReceiveDataSpecificObjectPropertyL
   105 // CAbstractMediaMtpDataProviderSetObjectPropValue::ReceiveDataSpecificObjectPropertyL
    91 // no need to do anything here, just leave, as this should never be invoked or
   106 // no need to do anything here, just leave, as this should never be invoked or
    92 // invalid propcode
   107 // invalid propcode
    93 // -----------------------------------------------------------------------------
   108 // -----------------------------------------------------------------------------
    94 //
   109 //
    95 void CAbstractMediaMtpDataProviderSetObjectPropValue::ReceiveDataSpecificObjectPropertyL( TUint16 /*aPropCode*/ )
   110 void CAbstractMediaMtpDataProviderSetObjectPropValue::ReceiveDataSpecificObjectPropertyL( TUint16 aPropCode )
    96     {
   111     {
    97     PRINT( _L( "MM MTP => CAbstractMediaMtpDataProviderSetObjectPropValue::ReceiveDataSpecificObjectPropertyL leave with KErrNotSupported" ) );
   112     PRINT( _L( "MM MTP => CAbstractMediaMtpDataProviderSetObjectPropValue::ReceiveDataSpecificObjectPropertyL" ) );
    98     User::Leave( KErrNotSupported );
   113     if ( aPropCode == EMTPObjectPropCodeRepresentativeSampleData )
       
   114         {
       
   115         delete iMTPTypeArray;
       
   116         iMTPTypeArray = NULL;
       
   117 
       
   118         iMTPTypeArray = CMTPTypeArray::NewL( EMTPTypeAUINT8 );
       
   119         ReceiveDataL( *iMTPTypeArray );
       
   120         }
       
   121     else
       
   122         {
       
   123         PRINT( _L( "MM MTP => CAbstractMediaMtpDataProviderSetObjectPropValue::ReceiveDataSpecificObjectPropertyL leave with KErrNotSupported" ) );
       
   124         // Do nothing now.
       
   125         // May need add implementation here for further extension.
       
   126         User::Leave( KErrNotSupported );
       
   127         }
    99     }
   128     }
   100 
   129 
   101 // -----------------------------------------------------------------------------
   130 // -----------------------------------------------------------------------------
   102 // CAbstractMediaMtpDataProviderSetObjectPropValue::ServiceSpecificObjectPropertyL
   131 // CAbstractMediaMtpDataProviderSetObjectPropValue::ServiceSpecificObjectPropertyL
   103 // no need to do anything here, just leave, as this should never be invoked or
   132 // no need to do anything here, just leave, as this should never be invoked or
   104 // invalid propcode
   133 // invalid propcode
   105 // -----------------------------------------------------------------------------
   134 // -----------------------------------------------------------------------------
   106 //
   135 //
   107 TMTPResponseCode CAbstractMediaMtpDataProviderSetObjectPropValue::ServiceSpecificObjectPropertyL( TUint16 /*aPropCode*/ )
   136 TMTPResponseCode CAbstractMediaMtpDataProviderSetObjectPropValue::ServiceSpecificObjectPropertyL( TUint16 aPropCode )
   108     {
   137     {
   109     PRINT( _L( "MM MTP => CAbstractMediaMtpDataProviderSetObjectPropValue::ServiceSpecificObjectPropertyL leave with KErrNotSupported" ) );
   138     PRINT( _L( "MM MTP => CAbstractMediaMtpDataProviderSetObjectPropValue::ServiceSpecificObjectPropertyL" ) );
   110     User::Leave( KErrNotSupported );
   139     TMTPResponseCode responseCode = EMTPRespCodeOK;
   111 
   140 
   112     return EMTPRespCodeOK;
   141     if ( aPropCode == EMTPObjectPropCodeRepresentativeSampleData )
       
   142         {
       
   143         responseCode = ServiceMetaDataToWrapperL( aPropCode,
       
   144             *iMTPTypeArray,
       
   145             *iObjectInfo );
       
   146         }
       
   147     else
       
   148         {
       
   149         PRINT( _L( "MM MTP => CAbstractMediaMtpDataProviderSetObjectPropValue::ServiceSpecificObjectPropertyL leave with KErrNotSupported" ) );
       
   150         // Do nothing now.
       
   151         // May need add implementation here for further extension.
       
   152         User::Leave( KErrNotSupported );
       
   153         }
       
   154     PRINT( _L( "MM MTP <= CAbstractMediaMtpDataProviderSetObjectPropValue::ServiceSpecificObjectPropertyL" ) );
       
   155     return responseCode;
   113     }
   156     }
   114 
   157 
   115 // end of file
   158 // end of file