mtpfws/mtpfw/dataproviders/dputility/src/cmtpgetformatcapabilities.cpp
branchRCL_3
changeset 18 453dfc402455
parent 0 d0791faffa3f
equal deleted inserted replaced
17:dbd1c5e08735 18:453dfc402455
    93     {
    93     {
    94     CMTPTypeInterdependentPropDesc*  interDesc = CMTPTypeInterdependentPropDesc::NewLC();
    94     CMTPTypeInterdependentPropDesc*  interDesc = CMTPTypeInterdependentPropDesc::NewLC();
    95     CMTPTypeFormatCapability* frmCap = CMTPTypeFormatCapability::NewLC( EMTPFormatCodeAssociation ,interDesc );
    95     CMTPTypeFormatCapability* frmCap = CMTPTypeFormatCapability::NewLC( EMTPFormatCodeAssociation ,interDesc );
    96     
    96     
    97     //EMTPObjectPropCodeStorageID
    97     //EMTPObjectPropCodeStorageID
    98     frmCap->AppendL( CMTPTypeObjectPropDesc::NewL(EMTPObjectPropCodeStorageID) );
    98     CMTPTypeObjectPropDesc* storageId = CMTPTypeObjectPropDesc::NewLC(EMTPObjectPropCodeStorageID);
       
    99     frmCap->AppendL(storageId);
       
   100     CleanupStack::Pop(storageId);
    99     
   101     
   100     //EMTPObjectPropCodeObjectFormat
   102     //EMTPObjectPropCodeObjectFormat
   101     frmCap->AppendL( CMTPTypeObjectPropDesc::NewL(EMTPObjectPropCodeObjectFormat) );
   103     CMTPTypeObjectPropDesc* objFormat = CMTPTypeObjectPropDesc::NewLC(EMTPObjectPropCodeObjectFormat);
       
   104     frmCap->AppendL(objFormat);
       
   105     CleanupStack::Pop(objFormat);
   102     
   106     
   103     //EMTPObjectPropCodeProtectionStatus
   107     //EMTPObjectPropCodeProtectionStatus
   104     frmCap->AppendL( ServiceProtectionStatusL() );
   108     CMTPTypeObjectPropDesc* protectionStatus = ServiceProtectionStatusL();
       
   109     CleanupStack::PushL(protectionStatus);
       
   110     frmCap->AppendL(protectionStatus);
       
   111     CleanupStack::Pop(protectionStatus);
   105     
   112     
   106     //EMTPObjectPropCodeAssociationType
   113     //EMTPObjectPropCodeAssociationType
   107     frmCap->AppendL( ServiceAssociationTypeL() );
   114     CMTPTypeObjectPropDesc* associationType = ServiceAssociationTypeL();
       
   115     CleanupStack::PushL(associationType);
       
   116     frmCap->AppendL(associationType);
       
   117     CleanupStack::Pop(associationType);
   108     
   118     
   109     //EMTPObjectPropCodeAssociationDesc
   119     //EMTPObjectPropCodeAssociationDesc
   110     frmCap->AppendL( CMTPTypeObjectPropDesc::NewL(EMTPObjectPropCodeAssociationDesc) );
   120     CMTPTypeObjectPropDesc* associationDesc = CMTPTypeObjectPropDesc::NewLC(EMTPObjectPropCodeAssociationDesc);
       
   121     frmCap->AppendL(associationDesc);
       
   122     CleanupStack::Pop(associationDesc);
   111     
   123     
   112     //EMTPObjectPropCodeObjectSize
   124     //EMTPObjectPropCodeObjectSize
   113     frmCap->AppendL( CMTPTypeObjectPropDesc::NewL(EMTPObjectPropCodeObjectSize) );
   125     CMTPTypeObjectPropDesc* objSize = CMTPTypeObjectPropDesc::NewLC(EMTPObjectPropCodeObjectSize);
       
   126     frmCap->AppendL(objSize);
       
   127     CleanupStack::Pop(objSize);
   114     
   128     
   115     //EMTPObjectPropCodeObjectFileName
   129     //EMTPObjectPropCodeObjectFileName
   116     _LIT(KMtpObjDescObjFileName, "[a-zA-Z!#\\$%&'\\(\\)\\-0-9@\\^_\\`\\{\\}\\~][a-zA-Z!#\\$%&'\\(\\)\\-0-9@\\^_\\`\\{\\}\\~ ]{0, 7}\\.[[a-zA-Z!#\\$%&'\\(\\)\\-0-9@\\^_\\`\\{\\}\\~][a-zA-Z!#\\$%&'\\(\\)\\-0-9@\\^_\\`\\{\\}\\~ ]{0, 2}]?");
   130     _LIT(KMtpObjDescObjFileName, "[a-zA-Z!#\\$%&'\\(\\)\\-0-9@\\^_\\`\\{\\}\\~][a-zA-Z!#\\$%&'\\(\\)\\-0-9@\\^_\\`\\{\\}\\~ ]{0, 7}\\.[[a-zA-Z!#\\$%&'\\(\\)\\-0-9@\\^_\\`\\{\\}\\~][a-zA-Z!#\\$%&'\\(\\)\\-0-9@\\^_\\`\\{\\}\\~ ]{0, 2}]?");
   117     CMTPTypeString* form = CMTPTypeString::NewLC( KMtpObjDescObjFileName );   
   131     CMTPTypeString* form = CMTPTypeString::NewLC( KMtpObjDescObjFileName ); 
   118     frmCap->AppendL(CMTPTypeObjectPropDesc::NewL( EMTPObjectPropCodeObjectFileName,
   132     CMTPTypeObjectPropDesc* objFileName = CMTPTypeObjectPropDesc::NewLC( EMTPObjectPropCodeObjectFileName,
   119             CMTPTypeObjectPropDesc::ERegularExpressionForm, form));
   133                 CMTPTypeObjectPropDesc::ERegularExpressionForm, form);
       
   134     frmCap->AppendL(objFileName);
       
   135     CleanupStack::Pop(objFileName);
   120     CleanupStack::PopAndDestroy(form );       
   136     CleanupStack::PopAndDestroy(form );       
   121     
   137     
   122     //EMTPObjectPropCodeDateModified
   138     //EMTPObjectPropCodeDateModified
   123     frmCap->AppendL(  CMTPTypeObjectPropDesc::NewL(EMTPObjectPropCodeDateModified) );
   139     CMTPTypeObjectPropDesc* dateModified = CMTPTypeObjectPropDesc::NewLC(EMTPObjectPropCodeDateModified);
       
   140     frmCap->AppendL(dateModified);
       
   141     CleanupStack::Pop(dateModified);
   124     
   142     
   125     //EMTPObjectPropCodeParentObject
   143     //EMTPObjectPropCodeParentObject
   126     frmCap->AppendL( CMTPTypeObjectPropDesc::NewL(EMTPObjectPropCodeParentObject) );
   144     CMTPTypeObjectPropDesc* parentobj = CMTPTypeObjectPropDesc::NewLC(EMTPObjectPropCodeParentObject);
       
   145     frmCap->AppendL(parentobj);
       
   146     CleanupStack::Pop(parentobj);
   127     
   147     
   128     //EMTPObjectPropCodePersistentUniqueObjectIdentifier
   148     //EMTPObjectPropCodePersistentUniqueObjectIdentifier
   129     frmCap->AppendL( CMTPTypeObjectPropDesc::NewL(EMTPObjectPropCodePersistentUniqueObjectIdentifier) );
   149     CMTPTypeObjectPropDesc* objectIdentifier = CMTPTypeObjectPropDesc::NewLC(EMTPObjectPropCodePersistentUniqueObjectIdentifier);
       
   150     frmCap->AppendL(objectIdentifier);
       
   151     CleanupStack::Pop(objectIdentifier);
   130     
   152     
   131     //EMTPObjectPropCodeName
   153     //EMTPObjectPropCodeName
   132     frmCap->AppendL( CMTPTypeObjectPropDesc::NewL(EMTPObjectPropCodeName)); 
   154     CMTPTypeObjectPropDesc* name = CMTPTypeObjectPropDesc::NewLC(EMTPObjectPropCodeName);
       
   155     frmCap->AppendL(name);
       
   156     CleanupStack::Pop(name);
   133     
   157     
   134     //EMTPObjectPropCodeNonConsumable
   158     //EMTPObjectPropCodeNonConsumable
   135     frmCap->AppendL(ServiceNonConsumableL() );
   159     CMTPTypeObjectPropDesc* nonConsumable = ServiceNonConsumableL();
       
   160     CleanupStack::PushL(nonConsumable);
       
   161     frmCap->AppendL(nonConsumable);
       
   162     CleanupStack::Pop(nonConsumable);
   136     
   163     
   137     iCapabilityList->AppendL(frmCap);
   164     iCapabilityList->AppendL(frmCap);
   138     CleanupStack::Pop(frmCap);
   165     CleanupStack::Pop(frmCap);
   139     CleanupStack::Pop(interDesc);
   166     CleanupStack::Pop(interDesc);
   140     }
   167     }
   144     {
   171     {
   145     CMTPTypeInterdependentPropDesc*  interDesc = CMTPTypeInterdependentPropDesc::NewLC();
   172     CMTPTypeInterdependentPropDesc*  interDesc = CMTPTypeInterdependentPropDesc::NewLC();
   146     CMTPTypeFormatCapability* frmCap = CMTPTypeFormatCapability::NewLC( aFormatCode ,interDesc );
   173     CMTPTypeFormatCapability* frmCap = CMTPTypeFormatCapability::NewLC( aFormatCode ,interDesc );
   147     
   174     
   148     //EMTPObjectPropCodeStorageID
   175     //EMTPObjectPropCodeStorageID
   149     frmCap->AppendL( CMTPTypeObjectPropDesc::NewL(EMTPObjectPropCodeStorageID) );
   176     CMTPTypeObjectPropDesc* storageID = CMTPTypeObjectPropDesc::NewLC(EMTPObjectPropCodeStorageID);
       
   177     frmCap->AppendL(storageID);
       
   178     CleanupStack::Pop(storageID);
   150     
   179     
   151     //EMTPObjectPropCodeObjectFormat
   180     //EMTPObjectPropCodeObjectFormat
   152     frmCap->AppendL( CMTPTypeObjectPropDesc::NewL(EMTPObjectPropCodeObjectFormat) );
   181     CMTPTypeObjectPropDesc* objectFormat = CMTPTypeObjectPropDesc::NewLC(EMTPObjectPropCodeObjectFormat);
       
   182     frmCap->AppendL(objectFormat);
       
   183     CleanupStack::Pop(objectFormat);
   153     
   184     
   154     //EMTPObjectPropCodeProtectionStatus
   185     //EMTPObjectPropCodeProtectionStatus
   155     frmCap->AppendL( ServiceProtectionStatusL() );
   186     CMTPTypeObjectPropDesc* protectionStatus = ServiceProtectionStatusL();
       
   187     CleanupStack::PushL(protectionStatus);
       
   188     frmCap->AppendL(protectionStatus);
       
   189     CleanupStack::Pop(protectionStatus);
   156     
   190     
   157     //EMTPObjectPropCodeObjectSize
   191     //EMTPObjectPropCodeObjectSize
   158     frmCap->AppendL( CMTPTypeObjectPropDesc::NewL(EMTPObjectPropCodeObjectSize) );
   192     CMTPTypeObjectPropDesc* objSize = CMTPTypeObjectPropDesc::NewLC(EMTPObjectPropCodeObjectSize);
       
   193     frmCap->AppendL(objSize);
       
   194     CleanupStack::Pop(objSize);
   159     
   195     
   160     //EMTPObjectPropCodeObjectFileName
   196     //EMTPObjectPropCodeObjectFileName
   161     _LIT(KMtpObjDescObjFileName, "[a-zA-Z!#\\$%&'\\(\\)\\-0-9@\\^_\\`\\{\\}\\~][a-zA-Z!#\\$%&'\\(\\)\\-0-9@\\^_\\`\\{\\}\\~ ]{0, 7}\\.[[a-zA-Z!#\\$%&'\\(\\)\\-0-9@\\^_\\`\\{\\}\\~][a-zA-Z!#\\$%&'\\(\\)\\-0-9@\\^_\\`\\{\\}\\~ ]{0, 2}]?");
   197     _LIT(KMtpObjDescObjFileName, "[a-zA-Z!#\\$%&'\\(\\)\\-0-9@\\^_\\`\\{\\}\\~][a-zA-Z!#\\$%&'\\(\\)\\-0-9@\\^_\\`\\{\\}\\~ ]{0, 7}\\.[[a-zA-Z!#\\$%&'\\(\\)\\-0-9@\\^_\\`\\{\\}\\~][a-zA-Z!#\\$%&'\\(\\)\\-0-9@\\^_\\`\\{\\}\\~ ]{0, 2}]?");
   162     CMTPTypeString* form = CMTPTypeString::NewLC( KMtpObjDescObjFileName );   
   198     CMTPTypeString* form = CMTPTypeString::NewLC( KMtpObjDescObjFileName );
   163     frmCap->AppendL(CMTPTypeObjectPropDesc::NewL( EMTPObjectPropCodeObjectFileName,
   199     CMTPTypeObjectPropDesc* objFileName = CMTPTypeObjectPropDesc::NewLC( EMTPObjectPropCodeObjectFileName,
   164             CMTPTypeObjectPropDesc::ERegularExpressionForm, form));
   200                 CMTPTypeObjectPropDesc::ERegularExpressionForm, form);
       
   201     frmCap->AppendL(objFileName);
       
   202     CleanupStack::Pop(objFileName);
   165     CleanupStack::PopAndDestroy(form );     
   203     CleanupStack::PopAndDestroy(form );     
   166     
   204     
   167     //EMTPObjectPropCodeDateModified
   205     //EMTPObjectPropCodeDateModified
   168     frmCap->AppendL(  CMTPTypeObjectPropDesc::NewL(EMTPObjectPropCodeDateModified) );
   206     CMTPTypeObjectPropDesc* dateModified = CMTPTypeObjectPropDesc::NewLC(EMTPObjectPropCodeDateModified);
       
   207     frmCap->AppendL(dateModified);
       
   208     CleanupStack::Pop(dateModified);
   169     
   209     
   170     //EMTPObjectPropCodeParentObject
   210     //EMTPObjectPropCodeParentObject
   171     frmCap->AppendL( CMTPTypeObjectPropDesc::NewL(EMTPObjectPropCodeParentObject) );
   211     CMTPTypeObjectPropDesc* parentObject = CMTPTypeObjectPropDesc::NewLC(EMTPObjectPropCodeParentObject);
       
   212     frmCap->AppendL(parentObject);
       
   213     CleanupStack::Pop(parentObject);
   172     
   214     
   173     //EMTPObjectPropCodePersistentUniqueObjectIdentifier
   215     //EMTPObjectPropCodePersistentUniqueObjectIdentifier
   174     frmCap->AppendL( CMTPTypeObjectPropDesc::NewL(EMTPObjectPropCodePersistentUniqueObjectIdentifier) );
   216     CMTPTypeObjectPropDesc* objectIdentifier = CMTPTypeObjectPropDesc::NewLC(EMTPObjectPropCodePersistentUniqueObjectIdentifier);
       
   217     frmCap->AppendL(objectIdentifier);
       
   218     CleanupStack::Pop(objectIdentifier);
   175     
   219     
   176     //EMTPObjectPropCodeName
   220     //EMTPObjectPropCodeName
   177     frmCap->AppendL( CMTPTypeObjectPropDesc::NewL(EMTPObjectPropCodeName)); 
   221     CMTPTypeObjectPropDesc* name = CMTPTypeObjectPropDesc::NewLC(EMTPObjectPropCodeName);
       
   222     frmCap->AppendL(name);
       
   223     CleanupStack::Pop(name);
   178     
   224     
   179     //EMTPObjectPropCodeNonConsumable
   225     //EMTPObjectPropCodeNonConsumable
   180     frmCap->AppendL(ServiceNonConsumableL() );
   226     CMTPTypeObjectPropDesc* nonConsumable = ServiceNonConsumableL();
       
   227     CleanupStack::PushL(nonConsumable);
       
   228     frmCap->AppendL(nonConsumable);
       
   229     CleanupStack::Pop(nonConsumable);
   181     
   230     
   182     iCapabilityList->AppendL(frmCap);
   231     iCapabilityList->AppendL(frmCap);
   183     CleanupStack::Pop(frmCap);
   232     CleanupStack::Pop(frmCap);
   184     CleanupStack::Pop(interDesc);
   233     CleanupStack::Pop(interDesc);
   185     }
   234     }