1
2
3
4 package org.rcfaces.core.internal.renderkit.tools;
5
6 import javax.faces.context.FacesContext;
7
8 import org.apache.commons.logging.Log;
9 import org.apache.commons.logging.LogFactory;
10 import org.rcfaces.core.internal.Constants;
11 import org.rcfaces.core.internal.facelets.FaceletViewHandler;
12 import org.rcfaces.core.internal.facelets.FaceletsTreeRendererProcessor;
13 import org.rcfaces.core.internal.tools.AsyncModeTools;
14
15
16
17
18
19
20 public class ComponentTreeRenderProcessorFactory {
21 private static final String REVISION = "$Revision: 1.1 $";
22
23 private static final Log LOG = LogFactory
24 .getLog(ComponentTreeRenderProcessorFactory.class);
25
26 private final FacesContext facesContext;
27
28 private ComponentTreeRenderProcessorFactory(FacesContext facesContext) {
29 this.facesContext = facesContext;
30 }
31
32 public static IComponentTreeRenderProcessor get(FacesContext facesContext) {
33 if (Constants.FACELETS_SUPPORT) {
34 if (AsyncModeTools.isTagProcessor(facesContext) == false) {
35 if (facesContext.getApplication().getViewHandler() instanceof FaceletViewHandler) {
36 return new FaceletsTreeRendererProcessor(facesContext);
37 }
38 }
39 }
40
41 return new DefaultTreeRendererProcessor(facesContext);
42 }
43
44 }