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 that SiteSession.
If the site ID is not among the Map keys, the SiteSessionManager creates a SiteSession object and adds it to its Map of SiteSession 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.