omadm/omadmextensions/adapters/email/src/nsmldmemailadapter.cpp
changeset 2 a5fecba4b1e4
parent 0 3ce708148e4d
equal deleted inserted replaced
1:4490afcb47b1 2:a5fecba4b1e4
   765             }
   765             }
   766         else if(iBuffer->At(index).iImap4Settings!= NULL)
   766         else if(iBuffer->At(index).iImap4Settings!= NULL)
   767             {
   767             {
   768             data = iBuffer->At(index).iImap4Settings->ServerAddress().AllocLC();
   768             data = iBuffer->At(index).iImap4Settings->ServerAddress().AllocLC();
   769             }
   769             }
   770         HBufC8 *data8 = HBufC8::NewLC(data->Size());
   770         else
   771         TPtr8 dataPtr8 = data8->Des();
   771         	{
   772         CnvUtfConverter::ConvertFromUnicodeToUtf8( dataPtr8, data->Des() );
   772           	status = CSmlDmAdapter::ENotFound;
   773 
   773         	}
   774         object->InsertL(0,dataPtr8);
   774         if(data)
   775         CleanupStack::PopAndDestroy(2); //data, data8
   775         	{	    
       
   776         		HBufC8 *data8 = HBufC8::NewLC(data->Size());
       
   777         		TPtr8 dataPtr8 = data8->Des();
       
   778         		CnvUtfConverter::ConvertFromUnicodeToUtf8( dataPtr8, data->Des() );
       
   779 
       
   780         		object->InsertL(0,dataPtr8);
       
   781         		CleanupStack::PopAndDestroy(2); //data, data8
       
   782         	}
   776         }
   783         }
   777 
   784 
   778     else if(lastUriSeg.Compare(KNSmlDMEmailMsnd)==0)
   785     else if(lastUriSeg.Compare(KNSmlDMEmailMsnd)==0)
   779         {
   786         {
   780         HBufC *data = NULL;
   787         HBufC *data = NULL;
  1243         if( accEx )
  1250         if( accEx )
  1244             {
  1251             {
  1245             Callback().SetStatusL(aStatusRef, CSmlDmAdapter::EAlreadyExists);
  1252             Callback().SetStatusL(aStatusRef, CSmlDmAdapter::EAlreadyExists);
  1246             _DBG_FILE("CNSmlDmEmailAdapter::AddNodeObjectL(): EAlreadyExists end");
  1253             _DBG_FILE("CNSmlDmEmailAdapter::AddNodeObjectL(): EAlreadyExists end");
  1247             return;
  1254             return;
       
  1255             }
       
  1256         else
       
  1257             {
       
  1258             TInt ret = Callback().RemoveMappingL( KNSmlDMEmailAdapterImplUid, 
       
  1259 						GetDynamicEmailNodeUri(aURI), ETrue );
       
  1260 			if(ret != KErrNone)
       
  1261 				{
       
  1262             	Callback().SetStatusL(aStatusRef, CSmlDmAdapter::EError);
       
  1263 	            _DBG_FILE("CNSmlDmEmailAdapter::AddNodeObjectL(): EError end");
       
  1264             	return;
       
  1265 				}
  1248             }
  1266             }
  1249         Callback().SetMappingL(aURI,KNullDesC8);
  1267         Callback().SetMappingL(aURI,KNullDesC8);
  1250         }
  1268         }
  1251 
  1269 
  1252     if( aURI.Find(KNSmlDMEmailNodeName)>=0 && NumOfURISegs(aURI)==2 )
  1270     if( aURI.Find(KNSmlDMEmailNodeName)>=0 && NumOfURISegs(aURI)==2 )
  2830             }
  2848             }
  2831         else if(iBuffer->At(index).iImap4Settings!= NULL)
  2849         else if(iBuffer->At(index).iImap4Settings!= NULL)
  2832             {
  2850             {
  2833             data = iBuffer->At(index).iImap4Settings->ServerAddress().AllocLC();
  2851             data = iBuffer->At(index).iImap4Settings->ServerAddress().AllocLC();
  2834             }
  2852             }
       
  2853         else
       
  2854         	{
       
  2855           	status = CSmlDmAdapter::ENotFound;
       
  2856           	return status;            
       
  2857         	}
  2835         HBufC8 *data8 = HBufC8::NewLC(data->Size());
  2858         HBufC8 *data8 = HBufC8::NewLC(data->Size());
  2836         TPtr8 dataPtr8 = data8->Des();
  2859         TPtr8 dataPtr8 = data8->Des();
  2837         CnvUtfConverter::ConvertFromUnicodeToUtf8( dataPtr8, data->Des() );
  2860         CnvUtfConverter::ConvertFromUnicodeToUtf8( dataPtr8, data->Des() );
  2838 
  2861 
  2839         aObject.InsertL(0,dataPtr8);
  2862         aObject.InsertL(0,dataPtr8);
  3329         CleanupStack::PopAndDestroy(); //pop3Accounts
  3352         CleanupStack::PopAndDestroy(); //pop3Accounts
  3330         }
  3353         }
  3331         CleanupStack::PopAndDestroy(); //emailAccs
  3354         CleanupStack::PopAndDestroy(); //emailAccs
  3332 		return ret;
  3355 		return ret;
  3333 }
  3356 }
       
  3357 
       
  3358 //------------------------------------------------------------------------------
       
  3359 // TPtrC8 CNSmlDmEmailAdapter::GetDynamicEmailNodeUri( const TDesC8& aURI )
       
  3360 // returns Email/xxx URI
       
  3361 //------------------------------------------------------------------------------
       
  3362 TPtrC8 CNSmlDmEmailAdapter::GetDynamicEmailNodeUri( const TDesC8& aURI )
       
  3363     {
       
  3364     DBG_ARGS8(_S8("CNSmlDmEmailAdapter::GetDynamicEmailNodeUri() - <%S> "), &aURI);
       
  3365     TInt i= 0;
       
  3366 	TBuf8<50> EmailAccRoot(KNSmlDMEmailNodeName);
       
  3367     for ( i = aURI.Find( KNSmlDMEmailNodeName ) + EmailAccRoot.Length() + 1; 
       
  3368 						i < aURI.Length(); i++ )
       
  3369         {
       
  3370         if( aURI[i] == '/' )
       
  3371             {
       
  3372             break;
       
  3373             }
       
  3374         }        
       
  3375     _DBG_FILE("CNSmlDmEmailAdapter::GetDynamicEmailNodeUri(): end");
       
  3376     return aURI.Left( i );
       
  3377     }
       
  3378 
       
  3379 
  3334 // End of File
  3380 // End of File