控制循环
void CCallLogUploadEngine::MHFRunL(RHTTPTransaction aTransaction, const THTTPEvent& aEvent)
{
switch (aEvent.iStatus)
{
case THTTPEvent::EGotResponseHeaders:
{}
break;
case THTTPEvent::EGotResponseBodyData:
{
MHTTPDataSupplier* body = aTransaction.Response().Body();
TPtrC8 dataChunk;
TBool isLast = body->GetNextDataPart(dataChunk);
determine when body is completely
if (isLast)
{
TBuf<256> uri;
uri.Copy(dataChunk);
CAknInformationNote* informationNote;
informationNote = new ( ELeave ) CAknInformationNote;
informationNote->ExecuteLD( uri);
}
body->ReleaseData();
}
break;
case THTTPEvent::EResponseComplete:
{
User::After(2000000);
if ( iApplicationUi )
iApplicationUi->RemoveWaitDialogL();
}
break;
case THTTPEvent::ESucceeded:
{
aTransaction.Close();
iSession.Close();
iRunning = EFalse;
HBufC* textResource = StringLoader::LoadLC(R_COMMAND2_TEXT);
CAknInformationNote* informationNote;
informationNote = new ( ELeave ) CAknInformationNote;
informationNote->ExecuteLD( *textResource);
CleanupStack::PopAndDestroy(textResource);
}
break;
case THTTPEvent::EFailed:
{
aTransaction.Close();
iRunning = EFalse;
}
break;
default:
TBuf<256> text;
if (aEvent.iStatus < 0)
{
aTransaction.Close();
iSession.Close();
iRunning = EFalse;
}
else {
}
}
break;
}
}
这个是上传文件的方法,我想在连接服务器失败的时候,提示重新连接,循环5次,如果还连接不上,提示连接失败,请高手指点~~~