servicethemeresolver.java

来自「CAS在Tomcat中实现单点登录项目,单点登录(Single Sign On 」· Java 代码 · 共 67 行

JAVA
67
字号
/* * Copyright 2007 The JA-SIG Collaborative. All rights reserved. See license * distributed with this file and available online at * http://www.ja-sig.org/products/cas/overview/license/ */package org.jasig.cas.services.web;import java.util.List;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.jasig.cas.authentication.principal.Service;import org.jasig.cas.services.RegisteredService;import org.jasig.cas.services.ServicesManager;import org.jasig.cas.web.support.ArgumentExtractor;import org.jasig.cas.web.support.WebUtils;import org.springframework.web.servlet.theme.AbstractThemeResolver;/** * ThemeResolver to determine the theme for CAS based on the service provided. * The theme resolver will extract the service parameter from the Request object * and attempt to match the URL provided to a Service Id. If the service is * found, the theme associated with it will be used. If not, these is associated * with the service or the service was not found, a default theme will be used. *  * @author Scott Battaglia * @version $Revision: 42560 $ $Date: 2007-10-17 12:57:39 -0400 (Wed, 17 Oct 2007) $ * @since 3.0 */public final class ServiceThemeResolver extends AbstractThemeResolver {    /** The ServiceRegistry to look up the service. */    private ServicesManager servicesManager;    private List<ArgumentExtractor> argumentExtractors;    public String resolveThemeName(final HttpServletRequest request) {        if (this.servicesManager == null) {            return getDefaultThemeName();        }        final Service service = WebUtils.getService(this.argumentExtractors,            request);        final RegisteredService rService = this.servicesManager            .findServiceBy(service);        return service != null && rService != null && rService.getTheme() != null ? rService            .getTheme() : getDefaultThemeName();    }    public void setThemeName(final HttpServletRequest request,        final HttpServletResponse response, final String themeName) {        // nothing to do here    }    public void setServicesManager(final ServicesManager servicesManager) {        this.servicesManager = servicesManager;    }    public void setArgumentExtractors(        final List<ArgumentExtractor> argumentExtractors) {        this.argumentExtractors = argumentExtractors;    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?