void CCgiContext::x_InitSession(CCgiRequest::TFlags flags) { CCgiSessionParameters params; ICgiSessionStorage* impl = m_App.GetSessionStorage(params); m_Session.reset(new CCgiSession(*m_Request, impl, params.m_ImplOwner, params.m_CookieEnabled ? CCgiSession::eUseCookie : CCgiSession::eNoCookie) ); m_Session->SetSessionIdName(params.m_SessionIdName); m_Session->SetSessionCookieDomain(params.m_SessionCookieDomain); m_Session->SetSessionCookiePath(params.m_SessionCookiePath); m_Session->SetSessionCookieExpTime(params.m_SessionCookieExpTime); m_Request->x_SetSession(*m_Session); m_Response.x_SetSession(*m_Session); string track_cookie_value = RetrieveTrackingId(); bool bad_tracking_cookie = false; if ((flags & CCgiRequest::fSkipDiagProperties) == 0) { try { CRequestContext& ctx = GetDiagContext().GetRequestContext(); ctx.SetSessionID(track_cookie_value); if (ctx.GetSessionID() != track_cookie_value) { // Bad session-id was ignored bad_tracking_cookie = true; } } catch (CRequestContextException& e) { x_SetStatus(CCgiException::e400_BadRequest, e.GetMsg()); bad_tracking_cookie = true; } } if( !bad_tracking_cookie && !TCGI_DisableTrackingCookie::GetDefault() ) { m_Response.SetTrackingCookie(TCGI_TrackingCookieName::GetDefault(), track_cookie_value, TCGI_TrackingCookieDomain::GetDefault(), TCGI_TrackingCookiePath::GetDefault()); } GetSelfURL(); m_Response.Cookies().SetSecure(m_SelfURL.substr(0, 5) == "https"); }
void MarkAsForciblyCaught(void) { x_SetStatus(CQueueItemBase::eForciblyCaught); }
void MarkAsComplete(void) { x_SetStatus(CQueueItemBase::eComplete); }
void MarkAsForciblyCaught(void) { x_SetStatus(eForciblyCaught); }
void MarkAsComplete(void) { x_SetStatus(eComplete); }