📄 jsfstartupprocessor.java
字号:
} /** * Configures the {@link javax.faces.event.PhaseListener}s. * * @param beanFactory * the {@link org.springframework.beans.factory.BeanFactory} */ private void configurePhaseListeners( final ConfigurableListableBeanFactory beanFactory) { LifecycleFactory lifecycleFactory = (LifecycleFactory) FactoryFinder .getFactory(FactoryFinder.LIFECYCLE_FACTORY); Lifecycle lifecycle = null; Collection phaseListeners = beanFactory.getBeansOfType( PhaseListenerDefinition.class).values(); for (Iterator i = phaseListeners.iterator(); i.hasNext();) { PhaseListenerDefinition phaseListener = (PhaseListenerDefinition) i .next(); lifecycle = lifecycleFactory.getLifecycle(phaseListener .getLifecycleId()); lifecycle.addPhaseListener(phaseListener.getPhaseListener()); } } /** * Configures the {@link ViewHandler}s. * * @param beanFactory * the {@link org.springframework.beans.factory.BeanFactory} * @param application * the {@link Application} */ private void configureViewHandlers( final ConfigurableListableBeanFactory beanFactory, final Application application) { Collection plugins = getOrderedPluginsOfType(beanFactory, ViewHandler.class); OrderedBeanDefinitionHolder beanDefinitionHolder; for (Iterator i = plugins.iterator(); i.hasNext();) { beanDefinitionHolder = (OrderedBeanDefinitionHolder) i.next(); application.setViewHandler((ViewHandler) beanFactory.getBean( beanDefinitionHolder.getBeanName(), ViewHandler.class)); } } /** * Configures the {@link VariableResolver}s. * * @param beanFactory * the {@link org.springframework.beans.factory.BeanFactory} * @param application * the {@link Application} */ private void configureVariableResolvers( final ConfigurableListableBeanFactory beanFactory, final Application application) { Collection plugins = getOrderedPluginsOfType(beanFactory, VariableResolver.class); OrderedBeanDefinitionHolder beanDefinitionHolder; for (Iterator i = plugins.iterator(); i.hasNext();) { beanDefinitionHolder = (OrderedBeanDefinitionHolder) i.next(); application.setVariableResolver((VariableResolver) beanFactory .getBean(beanDefinitionHolder.getBeanName(), VariableResolver.class)); } } /** * Configures the {@link StateManager}s. * * @param beanFactory * the {@link org.springframework.beans.factory.BeanFactory} * @param application * the {@link Application} */ private void configureStateManagers( final ConfigurableListableBeanFactory beanFactory, final Application application) { Collection plugins = getOrderedPluginsOfType(beanFactory, StateManager.class); OrderedBeanDefinitionHolder beanDefinitionHolder; for (Iterator i = plugins.iterator(); i.hasNext();) { beanDefinitionHolder = (OrderedBeanDefinitionHolder) i.next(); application.setStateManager((StateManager) beanFactory.getBean( beanDefinitionHolder.getBeanName(), StateManager.class)); } } /** * Configures the {@link PropertyResolver}s. * * @param beanFactory * the {@link org.springframework.beans.factory.BeanFactory} * @param application * the {@link Application} */ private void configurePropertyResolvers( final ConfigurableListableBeanFactory beanFactory, final Application application) { Collection plugins = getOrderedPluginsOfType(beanFactory, PropertyResolver.class); OrderedBeanDefinitionHolder beanDefinitionHolder; for (Iterator i = plugins.iterator(); i.hasNext();) { beanDefinitionHolder = (OrderedBeanDefinitionHolder) i.next(); application.setPropertyResolver((PropertyResolver) beanFactory .getBean(beanDefinitionHolder.getBeanName(), PropertyResolver.class)); } } /** * Configures the {@link NavigationHandler}s. * * @param beanFactory * the {@link org.springframework.beans.factory.BeanFactory} * @param application * the {@link Application} */ private void configureNavigationHandlers( final ConfigurableListableBeanFactory beanFactory, final Application application) { Collection plugins = getOrderedPluginsOfType(beanFactory, NavigationHandler.class); OrderedBeanDefinitionHolder beanDefinitionHolder; for (Iterator i = plugins.iterator(); i.hasNext();) { beanDefinitionHolder = (OrderedBeanDefinitionHolder) i.next(); application.setNavigationHandler((NavigationHandler) beanFactory .getBean(beanDefinitionHolder.getBeanName(), NavigationHandler.class)); } } /** * Configures the {@link ActionListener}s. * * @param beanFactory * the {@link org.springframework.beans.factory.BeanFactory} * @param application * the {@link Application} */ private void configureActionListeners( final ConfigurableListableBeanFactory beanFactory, final Application application) { Collection plugins = getOrderedPluginsOfType(beanFactory, ActionListener.class); OrderedBeanDefinitionHolder beanDefinitionHolder = null; for (Iterator i = plugins.iterator(); i.hasNext();) { beanDefinitionHolder = (OrderedBeanDefinitionHolder) i.next(); application.setActionListener((ActionListener) beanFactory.getBean( beanDefinitionHolder.getBeanName(), ActionListener.class)); } } /** * Configures the {@link RenderKit}s. * * @param beanFactory * the {@link org.springframework.beans.factory.BeanFactory} */ private void configureRenderKits( final ConfigurableListableBeanFactory beanFactory) { RenderKitFactory renderKitFactory = (RenderKitFactory) FactoryFinder .getFactory(FactoryFinder.RENDER_KIT_FACTORY); RenderKit renderKit = null; String[] renderKitIds = beanFactory .getBeanNamesForType(RenderKit.class); Collection rendererDefinitions = beanFactory.getBeansOfType( RendererDefinition.class).values(); for (int i = 0; i < renderKitIds.length; i++) { String renderKitId = renderKitIds[i]; renderKit = renderKitFactory.getRenderKit(null, renderKitId); RenderKit configuredRenderKit = (RenderKit) beanFactory.getBean( renderKitId, RenderKit.class); if (renderKit == null || !renderKit.getClass().equals( configuredRenderKit.getClass())) { renderKit = configuredRenderKit; renderKitFactory.addRenderKit(renderKitId, renderKit); } for (Iterator k = rendererDefinitions.iterator(); k.hasNext();) { RendererDefinition def = (RendererDefinition) k.next(); if (def.getRenderKitId().equals(renderKitId)) { renderKit.addRenderer(def.getComponentFamily(), def .getRendererType(), def.getRenderer()); } } } } /** * Returns ordered bean definitions. * * @param beanFactory * the {@link org.springframework.beans.factory.BeanFactory} * @param pluginType * the type of the JSF plugin * @return collection of ordered bean definitions */ private Collection getOrderedPluginsOfType( final ConfigurableListableBeanFactory beanFactory, final Class pluginType) { String[] beanNames = beanFactory.getBeanNamesForType(pluginType); List beanDefinitionHolders = new ArrayList(beanNames.length); for (int i = 0; i < beanNames.length; i++) { String beanName = beanNames[i]; beanDefinitionHolders.add(new OrderedBeanDefinitionHolder( beanFactory.getBeanDefinition(beanName), beanName)); } Collections.sort(beanDefinitionHolders, new OrderComparator()); return beanDefinitionHolders; } /** * {@inheritDoc} */ public int getOrder() { return ORDER; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -