1 19 20 package org.netbeans.modules.web.jsf.impl.facesmodel; 21 22 import java.util.logging.Logger ; 23 import org.netbeans.modules.web.jsf.api.facesmodel.FacesConfig; 24 import org.netbeans.modules.web.jsf.api.facesmodel.JSFConfigComponent; 25 import org.netbeans.modules.web.jsf.api.facesmodel.JSFConfigComponentFactory; 26 import org.netbeans.modules.web.jsf.api.facesmodel.JSFConfigModel; 27 import org.netbeans.modules.web.jsf.api.facesmodel.JSFVersion; 28 import org.netbeans.modules.xml.xam.ComponentUpdater; 29 import org.netbeans.modules.xml.xam.ModelSource; 30 import org.netbeans.modules.xml.xam.dom.AbstractDocumentModel; 31 import org.w3c.dom.Element ; 32 33 37 public class JSFConfigModelImpl extends AbstractDocumentModel<JSFConfigComponent> implements JSFConfigModel { 38 39 private static final Logger LOGGER = Logger.getLogger(JSFConfigModelImpl.class.getName()); 40 41 private FacesConfig facesConfig; 42 private final JSFConfigComponentFactory componentFactory; 43 44 45 public JSFConfigModelImpl(ModelSource source) { 46 super(source); 47 componentFactory = new JSFConfigComponentFactoryImpl(this); 48 } 49 50 public JSFConfigComponent createRootComponent(Element root) { 51 FacesConfig newFacesConfig = (FacesConfig) getFactory().create(root, null); 52 if (newFacesConfig != null) { 53 facesConfig = newFacesConfig; 54 } 55 return newFacesConfig; 56 } 57 58 protected ComponentUpdater<JSFConfigComponent> getComponentUpdater() { 59 return null; 60 } 61 62 public FacesConfig getRootComponent() { 63 LOGGER.fine("getRootComponent()"); 64 return facesConfig; 65 } 66 67 public JSFConfigComponent createComponent(JSFConfigComponent parent, Element element) { 68 return getFactory().create(element, parent); 69 } 70 71 public JSFConfigComponentFactory getFactory() { 72 return componentFactory; 73 } 74 75 public JSFVersion getVersion() { 76 String namespaceURI = getRootComponent().getPeer().getNamespaceURI(); 77 JSFVersion version = JSFVersion.JSF_1_1; 78 if (namespaceURI != null){ 79 version = JSFVersion.JSF_1_2; 80 } 81 return version; 82 } 83 84 } 85 | Popular Tags |