@Nonnull
    @Override
    public String resolveThemeName(
        @Nonnull
        final HttpServletRequest httpServletRequest) {
        for (val themeResolver : chain) {
            LOGGER.trace("Attempting to resolve theme via [{}]", themeResolver.getClass().getSimpleName());
            val resolverTheme = themeResolver.resolveThemeName(httpServletRequest);
            if (!resolverTheme.equalsIgnoreCase(getDefaultThemeName())) {
                LOGGER.trace("Resolved theme [{}]", resolverTheme);
                return resolverTheme;
            }
        }
        LOGGER.trace("No specific theme could be found. Using default theme [{}]", getDefaultThemeName());
        return getDefaultThemeName();
    }
Add resolver to the chain.

@param r the resolver
@return the chaining theme resolver
support/cas-server-support-themes-core/src/main/java/org/apereo/cas/services/web/ChainingThemeResolver.java