PluginServletManager.java 文件源码

java
阅读 35 收藏 0 点赞 0 评论 0

项目:puzzle 作者:
private void newListenerInstance(){
    if(listenerMetadatas.isEmpty()){
        return;
    }
    ClassLoader classloader= pluginContext.getClassLoader();
    try {
        for(String lisenterClass: listenerMetadatas){
            Class<?> clazz = classloader.loadClass(lisenterClass);
            EventListener listener = (EventListener)clazz.newInstance();
            injectComponentAware(listener);
            if(listener instanceof ServletContextListener){
                ((ServletContextListener)listener).contextInitialized(new ServletContextEvent(getServletContext()));
            }
            listenerIntances.add(listener);
        }
        PluginWebInstanceRepository.registerListeners(listenerIntances);
        logger.info("Complete to new and register listener instance");

    } catch (Exception e) {
        throw new PuzzleException("New Plugin ["+pluginContext.getName()+"] Listener instance failure",e);
    } 
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号