The session-scoped SiteSessionManager
manages SiteSession
components; together, they provide the mechanism that coordinates requests for multiple sites within a single session. Each SiteSession
component maintains information about a site during the current session; the SiteSessionManager
maintains a map of all SiteSession
objects keyed by site IDs.
After receiving a site ID from the SiteContextPipelineServlet
, the SiteSessionManager
performs these tasks:
Checks its Map of site IDs against
SiteSession
components:If the site ID is mapped to a
SiteSession
, it uses thatSiteSession
.If the site ID is not among the Map keys, the
SiteSessionManager
creates aSiteSession
object and adds it to its Map ofSiteSession
objects.
Calls
handleSiteRequest()
, which performs these tasks:Iterates over an array of SiteRequestProcessor Components, calling each component’s
processSiteRequest()
method.In the case of a new site session, iterates over an array of SiteSessionStartProcessor Components, calling each one’s
processSiteSessionStart()
method.