ipsservices/ipssosplugin/src/ipsplgsosbaseplugin.cpp
changeset 75 47d84de1c893
parent 72 64e38f08e49c
child 74 6c59112cfd31
equal deleted inserted replaced
72:64e38f08e49c 75:47d84de1c893
   574     }
   574     }
   575 
   575 
   576 // ----------------------------------------------------------------------------
   576 // ----------------------------------------------------------------------------
   577 // ----------------------------------------------------------------------------
   577 // ----------------------------------------------------------------------------
   578 const TFSProgress CIpsPlgSosBasePlugin::GetLastSyncStatusL(
   578 const TFSProgress CIpsPlgSosBasePlugin::GetLastSyncStatusL(
   579     const TFSMailMsgId& aMailBoxId )
   579     const TFSMailMsgId& /*aMailBoxId*/ )
   580     {
   580     {
   581     FUNC_LOG;
   581     FUNC_LOG;
   582     TMsvEntry tEntry;
   582     if( !iSessionOk )
   583     TMsvId service;
   583         {
       
   584         User::Leave( KErrNotReady );
       
   585         }
   584     TFSProgress progress = { TFSProgress::EFSStatus_Status, 0, 0, KErrNone };
   586     TFSProgress progress = { TFSProgress::EFSStatus_Status, 0, 0, KErrNone };
   585 
       
   586     if( !iSessionOk )
       
   587         {
       
   588         User::Leave( KErrNotReady );
       
   589         }
       
   590     iSession->GetEntry( aMailBoxId.Id(), service, tEntry );
       
   591 // <qmail>
       
   592     TInt state(0);
       
   593 // </qmail>
       
   594     switch( state )
       
   595         {
       
   596         case ESyncFinishedSuccessfully:
       
   597             progress.iProgressStatus = TFSProgress::EFSStatus_RequestComplete;
       
   598             break;
       
   599         case ESyncCancelled:
       
   600             progress.iProgressStatus = TFSProgress::EFSStatus_RequestCancelled;
       
   601             break;
       
   602         case ESyncError:
       
   603             progress.iProgressStatus = TFSProgress::EFSStatus_RequestComplete;
       
   604             progress.iError = KErrGeneral;
       
   605             break;
       
   606         default:
       
   607             progress.iProgressStatus = TFSProgress::EFSStatus_Status;
       
   608             progress.iError = state; // probably some symbian error code
       
   609             break;
       
   610         }
       
   611     return progress;
   587     return progress;
   612     }
   588     }
   613 
   589 
   614 // ----------------------------------------------------------------------------
   590 // ----------------------------------------------------------------------------
   615 // ----------------------------------------------------------------------------
   591 // ----------------------------------------------------------------------------
  1271 TInt CIpsPlgSosBasePlugin::GetMessagePartFileL(
  1247 TInt CIpsPlgSosBasePlugin::GetMessagePartFileL(
  1272     const TFSMailMsgId& /* aMailBoxId */,
  1248     const TFSMailMsgId& /* aMailBoxId */,
  1273     const TFSMailMsgId& /* aParentFolderId */,
  1249     const TFSMailMsgId& /* aParentFolderId */,
  1274     const TFSMailMsgId& /* aMessageId */,
  1250     const TFSMailMsgId& /* aMessageId */,
  1275     const TFSMailMsgId& aMessagePartId,
  1251     const TFSMailMsgId& aMessagePartId,
  1276     RFile& aFileHandle)
  1252     RFile& aFileHandle,
       
  1253     TBool aForWriting)
  1277 	{
  1254 	{
  1278     FUNC_LOG;
  1255     FUNC_LOG;
  1279     TInt status( KErrNone );
  1256     TInt status( KErrNone );
  1280     CMsvEntry* cEntry = iSession->GetEntryL( aMessagePartId.Id() );
  1257     CMsvEntry* cEntry = iSession->GetEntryL( aMessagePartId.Id() );
  1281     CleanupStack::PushL( cEntry );
  1258     CleanupStack::PushL( cEntry );
  1300 
  1277 
  1301     // It is assumed that the attachment file is always in the index 0
  1278     // It is assumed that the attachment file is always in the index 0
  1302     if ( attachmentMgr.AttachmentCount() )
  1279     if ( attachmentMgr.AttachmentCount() )
  1303         {
  1280         {
  1304 //<qmail>
  1281 //<qmail>
       
  1282     if (aForWriting)
       
  1283         {
  1305         // We need to open store for edit to support multipart/alternative
  1284         // We need to open store for edit to support multipart/alternative
  1306         // structure: we must have a possibility to modify text/html message part
  1285         // structure: we must have a possibility to modify text/html message part
  1307         //aFileHandle = attachmentMgr.GetAttachmentFileL( 0 );
       
  1308         aFileHandle = attachmentMgr.GetAttachmentFileForWriteL( 0 );
  1286         aFileHandle = attachmentMgr.GetAttachmentFileForWriteL( 0 );
       
  1287         }
       
  1288     else
       
  1289         {
       
  1290         aFileHandle = attachmentMgr.GetAttachmentFileL( 0 );
       
  1291         }
  1309 //</qmail>
  1292 //</qmail>
  1310         }
  1293         }
  1311     else
  1294     else
  1312         {
  1295         {
  1313         User::Leave( KErrNotFound );
  1296         User::Leave( KErrNotFound );
  1586 // ----------------------------------------------------------------------------
  1569 // ----------------------------------------------------------------------------
  1587 // ----------------------------------------------------------------------------
  1570 // ----------------------------------------------------------------------------
  1588 TFSProgress CIpsPlgSosBasePlugin::StatusL( TInt aRequestId )
  1571 TFSProgress CIpsPlgSosBasePlugin::StatusL( TInt aRequestId )
  1589 	{
  1572 	{
  1590     FUNC_LOG;
  1573     FUNC_LOG;
  1591 	TFSProgress status;
  1574 	TFSProgress status = TFSProgress();
  1592 	status.iError = KErrNone;
  1575 	status.iError = KErrNone;
  1593 	status.iProgressStatus = TFSProgress::EFSStatus_RequestComplete;
  1576 	status.iProgressStatus = TFSProgress::EFSStatus_RequestComplete;
  1594 	for ( TInt i = 0; i < iOperations.Count(); i++ )
  1577 	for ( TInt i = 0; i < iOperations.Count(); i++ )
  1595         {
  1578         {
  1596         const CIpsPlgBaseOperation* op = iOperations[i]->BaseOperation();
  1579         const CIpsPlgBaseOperation* op = iOperations[i]->BaseOperation();