in core/src/main/java/org/apache/sling/cms/core/internal/filters/LocaleFilter.java [55:83]
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException {
if (request instanceof SlingHttpServletRequest) {
Locale locale = null;
SlingHttpServletRequest slingRequest = (SlingHttpServletRequest) request;
SiteManager mgr = slingRequest.getResource().adaptTo(SiteManager.class);
if (mgr != null) {
Site site = mgr.getSite();
if (site != null) {
log.debug("Setting bundle for {}", site.getLocaleString());
locale = site.getLocale();
} else {
log.trace("No site for {}", slingRequest);
}
} else {
log.trace("No site manager found for {}", slingRequest);
}
if (locale == null) {
locale = loadUserLocale(slingRequest);
}
if (locale == null) {
locale = request.getLocale();
}
setLocale(locale, slingRequest);
}
chain.doFilter(request, response);
}