email/imap4mtm/imapprotocolcontroller/src/cimapopfetchbody.cpp
changeset 37 518b245aa84c
parent 0 72b543305e3a
child 40 224522e33db9
equal deleted inserted replaced
25:84d9eb65b26f 37:518b245aa84c
   165 @param aGetPartialMailInfo: partial fetch settings.
   165 @param aGetPartialMailInfo: partial fetch settings.
   166 */
   166 */
   167 void CImapOpFetchBody::FetchBodyL(TRequestStatus& aRequestStatus, const TMsvId aPart, const TImImap4GetPartialMailInfo& aGetPartialMailInfo)
   167 void CImapOpFetchBody::FetchBodyL(TRequestStatus& aRequestStatus, const TMsvId aPart, const TImImap4GetPartialMailInfo& aGetPartialMailInfo)
   168 	{
   168 	{
   169 	__LOG_TEXT(iSession->LogId(), "CImapOpFetchBody::FetchBodyL(): fetching message");
   169 	__LOG_TEXT(iSession->LogId(), "CImapOpFetchBody::FetchBodyL(): fetching message");
   170 
   170 	
       
   171 	if(IsActive())
       
   172 	{
       
   173 	    Cancel();
       
   174 	}
       
   175 	
   171 	iRequestedPart=aPart;
   176 	iRequestedPart=aPart;
   172 	iGetPartialMailInfo=aGetPartialMailInfo;
   177 	iGetPartialMailInfo=aGetPartialMailInfo;
   173 	Queue(aRequestStatus);
   178 	Queue(aRequestStatus);
   174 	// sets the next state and sets active
   179 	// sets the next state and sets active
   175 	DoFetchL();
   180 	DoFetchL();
  1406 	// text/x-vcard?
  1411 	// text/x-vcard?
  1407 	else if (aMime.ContentSubType().CompareF(KMIME_XVCARD)==0)
  1412 	else if (aMime.ContentSubType().CompareF(KMIME_XVCARD)==0)
  1408 		{
  1413 		{
  1409 		// Set vCard flag in message
  1414 		// Set vCard flag in message
  1410 		aMessage.SetVCard(ETrue);
  1415 		aMessage.SetVCard(ETrue);
       
  1416 		aMessage.iType=KUidMsvEmailTextEntry;
  1411 		}
  1417 		}
  1412 	// text/x-vcalendar
  1418 	// text/x-vcalendar
  1413 	else if (aMime.ContentSubType().CompareF(KMIME_VCALENDAR)==0)
  1419 	else if (aMime.ContentSubType().CompareF(KMIME_VCALENDAR)==0)
  1414 		{
  1420 		{
  1415 		// Set vCalendar flag in message
  1421 		// Set vCalendar flag in message
  1416 		aMessage.SetVCalendar(ETrue);
  1422 		aMessage.SetVCalendar(ETrue);
  1417 		iIsVCalendar = ETrue;
  1423 		iIsVCalendar = ETrue;
       
  1424 		aMessage.iType=KUidMsvEmailTextEntry;
  1418 		}
  1425 		}
  1419 	// text/calendar
  1426 	// text/calendar
  1420 	else if (aMime.ContentSubType().CompareF(KMIME_ICALENDAR)==0)
  1427 	else if (aMime.ContentSubType().CompareF(KMIME_ICALENDAR)==0)
  1421 		{
  1428 		{
  1422 		// Set iCalendar flag in message
  1429 		// Set iCalendar flag in message
  1423 		aMessage.SetICalendar(ETrue);
  1430 		aMessage.SetICalendar(ETrue);
  1424 		iIsICalendar = ETrue;
  1431 		iIsICalendar = ETrue;
       
  1432 		aMessage.iType=KUidMsvEmailTextEntry;
  1425 		}
  1433 		}
  1426 	else
  1434 	else
  1427 		aMessage.iType=KUidMsvEmailTextEntry;
  1435 		aMessage.iType=KUidMsvEmailTextEntry;
  1428 	}
  1436 	}
  1429 
  1437 
  1500 	{
  1508 	{
  1501 	// Add the diposition name as the first pair of parameters.
  1509 	// Add the diposition name as the first pair of parameters.
  1502 	TPtrC8 dispositionName = aBodyStructure->ExtDispositionName();
  1510 	TPtrC8 dispositionName = aBodyStructure->ExtDispositionName();
  1503 	if (dispositionName.Size() != 0)
  1511 	if (dispositionName.Size() != 0)
  1504 		{
  1512 		{
       
  1513 		aMime.SetContentDispositionL(dispositionName);	
  1505 		__LOG_FORMAT((iSession->LogId(), "    adding disp name: %S", &dispositionName));
  1514 		__LOG_FORMAT((iSession->LogId(), "    adding disp name: %S", &dispositionName));
  1506 		aMime.ContentDispositionParams().AppendL(dispositionName);
  1515 		aMime.ContentDispositionParams().AppendL(dispositionName);
  1507 		aMime.ContentDispositionParams().AppendL(KNullDesC8);
  1516 		aMime.ContentDispositionParams().AppendL(KNullDesC8);
  1508 		}
  1517 		}
  1509 	
  1518