⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 portalfilterdescriptor.java

📁 GridSphere 门户 提供一个基于 portlet 的高级开放源代码门户。GridSphere 是在欧盟提供基金的 GridLab 项目下开发的
💻 JAVA
字号:
package org.gridsphere.services.core.filter.impl.descriptor;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;import org.gridsphere.services.core.filter.PortalFilter;import org.gridsphere.services.core.filter.PortalFilterConfig;import org.gridsphere.services.core.filter.impl.PortalFilterConfigImpl;import org.gridsphere.portletcontainer.impl.JavaXMLBindingFactory;import org.gridsphere.services.core.persistence.PersistenceManagerException;import org.gridsphere.services.core.persistence.PersistenceManagerXml;import javax.servlet.ServletConfig;import java.net.URL;import java.util.ArrayList;import java.util.List;/** * @author <a href="mailto:novotny@gridsphere.org">Jason Novotny</a> * @version $Id$ */public class PortalFilterDescriptor {    private Log log = LogFactory.getLog(PortalFilterDescriptor.class);    private List<PortalFilter> portalFilters = new ArrayList<PortalFilter>();    private URL FILTER_MAPPING_PATH = getClass().getResource("/org/gridsphere/filters/portal-filters-mapping.xml");    /**     * Constructor disallows non-argument instantiation     */    private PortalFilterDescriptor() {    }    public PortalFilterDescriptor(String descriptorFile) throws PersistenceManagerException {        PersistenceManagerXml pmXML = JavaXMLBindingFactory.createPersistenceManagerXml(descriptorFile, FILTER_MAPPING_PATH);        PortalFilterCollection portalFilterCollection = (PortalFilterCollection) pmXML.load();        List<PortalFilterDefinition> portalFilterList = portalFilterCollection.getPortalFilterList();        for (PortalFilterDefinition def : portalFilterList) {            String filterImpl = def.getImplementation();            try {                PortalFilter filterClass = (PortalFilter) Class.forName(filterImpl).newInstance();                PortalFilterConfig filterConfig = new PortalFilterConfigImpl(def.getConfigProperties());                filterClass.init(filterConfig);                portalFilters.add(filterClass);            } catch (ClassNotFoundException e) {                log.error("Unable to find filter class: " + filterImpl, e);            } catch (InstantiationException e) {                log.error("Unable to instantiate filter class: " + filterImpl, e);            } catch (IllegalAccessException e) {                log.error("Illegal access on filter class: " + filterImpl, e);            }        }    }    public List<PortalFilter> getPortalFilters() {        return portalFilters;    }}

⌨️ 快捷键说明

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